BeanUtils.copyProperties(son, father)使用感想:
在程序开发中会遇到一种情况:多个模块操作同一张表,它们以一个特定的标志位来区分不同模块数据,
当然 增、删、改、查的代码,也就始终围绕这个标志位进行。
在后台写代码时,不可能让每个模块都去写独立增、删、改、查代码,如果这样代码,你的技术也就太菜了。
可以先写一个特定的模块去操作这个表。其它模块类都是从这个特定模块中类继承过来。这样系统代码量也就大大减少了。
这时也就涉及到了父类和子类之间转化问题:父类是不可以转化为子类的。但是在这个系统中就要把父类转化为子类(实际上也就是得到父类封装属性值),
如果系统中使用struts框架,一般情况下是后台数据都被封装成formBean,然后交给页面去处理。这样其它模块formbean去继承那个特定模块的formbean,
然而从数据库中查出数据库被封装成了父类的formbean,在java中父类是不可以向子类转化。这时候我们就要用到‘BeanUtils.copyProperties(son, father)’这个了;
实际程序要求子类从父类那里得到数据。是不可以通过类的强转方式使子类得到父类属性值,BeanUtils.copyProperties(son, father)就实现了这样功能。
说白了,如果两个类中有相同属性。BeanUtils.copyProperties(obj1,obj2)这个方法就是把obj2属性值覆盖obj1属性值(必须是obj2属性在obj1中也有,且名称完全一样,才可以被覆盖,类型可以不一样,它会自动进行类型转换,不过一般很少这样用)
分享到:
相关推荐
一个BeanUtils.copyProperties的小型快速替代。 起因 由于BeanUtils(Spring或Apache Commons)的copyProperties实现是利用反射实现的,它在大量调用时具有比较严重的性能问题。 BeanMapper通过javassist类库实现在...
主要介绍了使用BeanUtils.copyProperties进行对象之间的属性赋值,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
主要介绍了java Beanutils.copyProperties( )用法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
org.apache.commons.beanutils.jar
commons-beanutils-1.8.0.jar beanutils.jar beanutils.jar工具包
关于JSF的commons-beanutils.jar.zip
json相关jar包(不使用springmvc开发时)。其中包含(commons-beanutils.jar、commons-collections-3.1.jar、commons-lang-2.6.jar、commons-logging.jar、ezmorph-1.0.6.jar、json-lib-2.2.3-jdk15.jar)
Apache提供的这个beanutils包极大方便了javabean的 操作。包含了最新的commons-beanutils-1.9.3.jar和api文档,以及其依赖的commons-logging-1.2.jar包
beanUtils 方便访问javaBean 附带支持框架 logging jar包,Apache提供的这个beanutils包极大方便了javabean的 操作。包含了最新的commons-beanutils-1.9.3.jar,以及其依赖的commons-logging-1.2.jar包
commons-beanutils.jar commons-beanutils.jar
这是commons常用到的包,包括:commons-pool.jar,commons-beanutils.jar等共八个commons.jar包
commons-beanutils.jar 开发时所需要的jar包
JSF开发所必需包:花了很长时间才收集好,很费时,现已收集好,何不分享给大家,让大家节省...commons-beanutils.jar commons-collections.jar commons-digester.jar jsf-api.jar jsf-impl.jar jstl.jar standard.jar
此为BeanUtils的实例。其中apache的包有一个小的BUG已在其中说明。
commons-beanutils.jar.zip(173 k)commons-beanutils.jar.zip(173 k)commons-beanutils.jar.zip(173 k) jdbc 专用