导言
大家好,我是南橘,从接触java到现在也有差不多两年时间了,两年时间,从一名连java有几种数据结构都不懂超级小白,到现在懂了一点点的进阶小白,学到了不少的东西。知识越分享越值钱,我这段时间总结(包括从别的大佬那边学习,引用)了一些平常学习和面试中的重点(自我认为),希望给大家带来一些帮助
之前的文章
有需要的同学可以加我的公众号,以后的最新的文章第一时间都在里面,也可以找我要思维导图
一、后台操作日志记录
最近在工作中涉及到一些关于后台信息修改的日志内容记录,涉及到多个表与多个类数据的修改,获取对象的属性成了一个比较麻烦的事情。
同时,因为不知道每次具体修改的对象的信息,为了减少代码量,所以我用到反射来动态的获取对象的属性。
1、实体类操作记录
下面的代码是利用反射来获取对象属性值变化的比较简单的一种实践,倒也能帮助实现对比,但是遇到数据里包含数组的情况却还是有些吃力。
/**
* @param oldBean 原始数据
* @param newBean 新数据
* @return
*/
public static String contrastSourceFund(Object oldBean, Object newBean) {
String str = "";
Object pojo1 = (Object) oldBean;
Object pojo2 = (Object) newBean;
try {
Class clazz = pojo1.getClass();
Field[] fields = pojo1.getClass().getDeclaredFields();
int i = 1;
for (Field field : fields) {