在表单回显数据时,点击修改。记录住被修改的字段,旧值与新值。
实现思路
- 采用反射+注解。写了一个工具类。当前端把表单数据从前台带入到后台后。把request对象跟原始记录对象传入进行比较。
- 工具类中的方法采用反射,获取原始对象上的字段的值。再跟request中的请求参数值进行比较。
在原始对象类中,使用注解,对需要进行比较的字段,加入注解,并设置字段中文名。 - 工具类中的比较只能对基本数据类型、基本数据类型的包装类型、Date类型进行比较。数组、集合、关联对象是不会进行比较的。这是欠缺的地方,欢迎补充。
示例图
点击查询:(模拟项目中查询数据)
回显数据:(模拟项目中表单回显数据)
修改数据:(模拟项目中表单修改数据)修改了4项,点击修改,提交到后台
修改数据的操作记录
再来一次
显示操作记录
代码示例图
在属性上加入注解,指定属性的中文名。
工具类中的代码,可以参照这套思路去扩展。
总结
- 代码已放到仓库中。https://github.com/denghuashan/OperateLog
- 欢迎指正或进行扩展。