首页 网尚 潮流 生活 网红 智家 车尚 潮机 酷码 影娱 移动客户端
MVC开发模式需要beanutils.copyproperties便捷著称
来源:亿尚网
作者:亿尚网编辑
时间:2020-09-04

在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性能好。

网友评论文明上网理性发言,请遵守新闻评论服务协议
(查看全部 0 条评论)
 
验证码:  
网尚生活E尚综合

波斯湾进入印度洋的唯一出口就是霍尔木兹海峡。它是连接波斯湾和印度洋的海峡,北岸是伊朗,...[详细] 评论(0)  

     54的因数有1,2,3,6,9,18,27,54,质数有2,3,合数有6,9,18,27,54,在小学数学里,两个正整数相乘,那么这两个数都叫做积的因数,或称为约数。事实上因...[详细]

导读:编辑整理 2020-09-01阅读全文>>

  8月24日电 日前,在主题为“快递员 ALL力给”的德邦快递2020快递员大会上,德邦快递董事长崔维星亲手为207位“金星快递员”每人颁发了价值10万元的金砖,总价值共计2070万元...[详细]

导读:编辑整理 2020-08-26阅读全文>>
网罗推荐
电商国际
品牌乐享
电商经济
CopyRight @ 2005-2020 Reserved 亿尚网版权所有尊重原创禁止抄袭违者必究