首页 / 运动潮流 / 正文

MVC开发模式需要beanutils.copyproperties便捷著称

来源:
编辑:亿尚风范
时间:2023-10-25

在Java中可能会用到属性拷贝,虽然不常用,但是有些需求确实要用到。对于某一属性,即原始对象和目的对象的属性名称相同,就可以拷贝原始对象的属性值到目的对象中。在MVC的开发模式中经常需要将model与pojo的数据绑定,apach和spring的工具包中都有BeanUtils,使用其中的copyProperties方法可以非常方便的进行这些工作,但在实际应用中发现,对于null的处理不太符合个人的需要,例如在进行修改操作中只需要对model中某一项进行修改,那么一般我们在页面上只提交model的ID及需要修改项的值,这个时候使用BeanUtils.copyProperties会将其他的null绑定到pojo中去。


 Beanutils.copyProperties( )的使用与优化:
       1.使用原因
       因为现在都是前后端分离所以我们在响应APP端或者前端的时候会维护一套VO,那么DTO到VO的转换便是一堆get... set...这样的代码,比如好几个地方用到的话还要去复制粘贴来转换。所以这里的我就开始动脑子了。
       2.解决问题
       刚开始项目中是好几个地方在用,然后我就想把这段VO转换的代码抽取出来,先是想写个工具类,后来一想这是业务的代码。然后就写了一个抽象类。正好让其他接口直接继承。完美解决。然后是发现VO转换的地方很多,有没有更方便的转换方法? 要不然一堆代码岂不是很掉价。
       3.使用Beanutils
       这里使用的是 org.springframework.beans包下的copyProperties( )方法,他会把字段相同的Bean字段赋值,大大减少了代码量,但从其他程序员的建议说,这个操作会响应性能,数据量大的时候还没有直接get ,set性能好。

时尚头条换一换
时尚电商换一换
热点摘要换一换
  • CopyRight @ 2005-2023 Reserved 亿尚网版权所有,所涉内容请查询声明细则