今天撸码需要映射几个类,本想用BeanUtils.copyProperties 一行搞定看了下源码:底层也是通过遍历类属性 判断属性名称相同 然后把值灌进去查阅了其他几个 复制类属性的工具类 诸如: PropertyUtils.copyProperties、orika、Dozer
不是会带来性能损耗就是 需要配置
。。。。。还是xxx.set(xx.get)简单明了 但又懒的写一堆get set 封装一个根据类 生成get set代码工具类 记录一下
public static void getSetForModel(Object copyModel,Object forcopymodel) throws Exception{ for (Field field : copyModel.getClass().getDeclaredFields()) { field.setAccessible(true); for (Field fieldcopy : forcopymodel.getClass().getDeclaredFields()) { if(StringUtils.pathEquals(field.getName(),fieldcopy.getName())){ System.out.println(getToUpperCase(copyModel.getClass().getSimpleName(),"LowerCase") +".set"+getToUpperCase(field.getName(),"UpperCase") + "(" +getToUpperCase(forcopymodel.getClass().getSimpleName(),"LowerCase")+ ".get"+getToUpperCase(fieldcopy.getName(),"UpperCase")+"())"); } } } } public static String getToUpperCase(String name,String type){ if(type.equals("UpperCase")){ return name.substring(0, 1).toUpperCase() + name.substring(1); }else if (type.equals("LowerCase")){ return name.substring(0, 1).toLowerCase() + name.substring(1); } return name; }
比较简陋 很多异常情况没考虑 暂时能用 有空完善
生成getset代码工具类
最新推荐文章于 2023-07-13 20:00:56 发布