清水雅然
项目源码
项目工具:基于ReflectASM+注解开发对象转换工具
基于ReflectASM+注解开发对象转换工具开发原因在项目对接数据中,会遇到了对外标准和内部标准对象转换问题,需要将上报的数据对象转换为我们项目中标准数据对象,当两边数据标准一致时,比较常见的方式,就是new一个标准的对象,set和get对接数据;或者orika复制对象。第一种方法,就会有长篇幅的...
2022-05-30
项目工具:使用python实现一个SSH隧道界面
Read More
使用python实现一个SSH隧道界面开发原因MobaXterm作为一个全能型终端神器,功能十分强大,我经常使用其中隧道功能,使用内部无法直接服务器,查询数据,一般来说,一个本地端口对于一个隧道,但是MobaXterm,免费版本最多只能建立三个隧道,比如,我需要一次查询统计,就会用到四个隧道的操作,...
2022-02-07
项目工具:两行代码快速生成测试的数据的FakeDataMaker
Read More
开发原因ReflectASM 是一个非常小的 Java 类库,通过代码生成来提供高性能的反射处理,自动为 get/set 字段提供访问类,访问类使用字节码操作而不是 Java 的反射技术,因此非常快。在单元测试的时,需要模拟制造一些数据去测试我们代码会不会出现明显的异常(字段导致、空指针),除了自己...
2021-10-11
项目工具:使用freemarker实现业务代码生成器
Read More
开发原因之前使用的开源框架里面,有个代码生成器,可以一键生成的重复业务代码(包括:controller、service、mapper、entity),虽然很好用,但是生成器属于框架定制化开发工具,要是其他项目要是想使用这个生成器,需要同时启动前后端的服务,在页面上配置表和导出的路径,这样操作就非常的...
2021-08-02
功能设计:如何实现一个扫码上传附件的功能
Read More
授权码(authorizationcode)方式,指的是第三方应用先申请一个授权码,然后再用该码获取令牌。这种方式是最常用的流程,安全性也最高,它适用于那些有后端的Web应用。授权码通过前端传送,令牌则是储存在后端,而且所有与资源服务器的通信都在后端完成。这样的前后端分离,可以避免令牌泄漏。需求背景...
2021-03-21
项目工具:线上"假死“问题解决(Jstack工具分析,脚本监控服务)
Read More
问题项目在正式上线后,偶发性出现项目的"假死"的问题,项目无法响应前端的请求,一开始,架构师查询到存在大量锁表的情况,去掉了一些长时间任务的更新的事务,同时提高了JVM的-Xmx和-Xms的大小,第一天虽然情况有所缓解,在第二天访问量上去后,还是出现了假死的问题。于是,在顶着客户...
2021-03-01
项目重构:一行代码的背后-设计模式(模板方法+管道模式)
Read More
管道-过滤器模式的体系结构是面向数据流的软件体系结构。它最典型的应用是在编译系统。一个普通的编译系统包括词法分析器,语法分析器,语义分析与中间代码生成器,优化器,目标代码生成器等一系列对源程序进行处理的过程。人们可以将编译系统看作一系列过滤器的连接体,按照管道-过滤器的体系结构进行设计。此外,这种体...
2021-01-09
项目源码:使用AOP完成长任务轮询
Read More
AOP(AspectOrientedProgramming),即面向切面编程,可以说是OOP(ObjectOrientedProgramming,面向对象编程)的补充和完善。需求背景有一个接口实现合并文件,当文件过多时,预计要三分钟或者更长时间,这个时候前端调用的时候,就会出现接口的超时的问题,于是...
2020-12-13
项目工具:Jenkins自动打包部署
Read More
项目现状由于项目一开始时间比较紧,...
2020-12-10
项目重构:设计模式(模板方法模式)
Read More
在模板模式(TemplatePattern)中,一个抽象类公开定义了执行它的方法的方式/模板。它的子类可以按需要重写方法实现,但调用将以抽象类中定义的方式进行。这种类型的设计模式属于行为型模式。最近,在项目中,需要调用用户提供的接口发送微信模板信息,然后提供了信息模板{"Personnel...
2020-12-03
Read More