- 浏览: 400143 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (99)
- Spring (14)
- Hibernate (2)
- Struts (0)
- Java (21)
- J2ee (1)
- JFreeChart (1)
- Tomcat (3)
- Eclipse (3)
- 项目日记 (2)
- Javascript (4)
- fckeditor (2)
- mysql (13)
- Powerdesigner (2)
- sql server 2005 (1)
- Css (1)
- jQuery (2)
- 架构 (4)
- 性能 (7)
- struts2 (1)
- LigerUI (1)
- ibatis (2)
- 数据库 (1)
- 职业发展 (3)
- maven (1)
- mybatis (1)
- 算法 (1)
- 项目经理 (2)
- hadoop-1.0 (2)
- hadoop1.0 (1)
- hadoop-2.0 (1)
- 网络安全 (5)
- 正则表达式 (1)
- 管理 (2)
- Redis (1)
- linux (4)
- infobright (1)
- CentOS (4)
- windows (1)
- 其他 (1)
- easyui (1)
- elasticsearch (0)
- 公司管理 (0)
最新评论
-
wangyudong:
由Spring Boot实现的微服务需要有比较好的工具去测试R ...
使用Spring Boot快速构建应用 -
masuweng:
<artifactId>maven-compile ...
使用Spring Boot快速构建应用 -
masuweng:
说明下<start-class>com.test. ...
使用Spring Boot快速构建应用 -
masuweng:
学习了,感谢了
使用Spring Boot快速构建应用 -
幽蓝星空:
执行mvn clean install spring-boot ...
使用myeclipse打包Spring Boot工程
import java.beans.PropertyDescriptor; import java.util.Collection; import org.apache.commons.beanutils.PropertyUtils; /** * CopyUtil */ public class CopyUtil { /** * Copy properties of orig to dest * Exception the Entity and Collection Type * @param dest * @param orig * @return the dest bean */ public static Object copyProperties(Object dest, Object orig) { if (dest == null || orig == null ) { return dest; } PropertyDescriptor[] destDesc = PropertyUtils.getPropertyDescriptors(dest); try { for ( int i = 0 ; i < destDesc.length; i ++ ) { Class destType = destDesc[i].getPropertyType(); Class origType = PropertyUtils.getPropertyType(orig, destDesc[i].getName()); if (destType != null && destType.equals(origType) && ! destType.equals(Class. class )) { if ( ! Collection. class .isAssignableFrom(origType)) { try { Object value = PropertyUtils.getProperty(orig, destDesc[i].getName()); PropertyUtils.setProperty(dest, destDesc[i].getName(), value); } catch (Exception ex) { } } } } return dest; } catch (Exception ex) { throw new CopyException(ex); // return dest; } } /** * Copy properties of orig to dest * Exception the Entity and Collection Type * @param dest * @param orig * @param ignores 例如:vo.setUserName copy po.setUserName,应该写UserName * @return the dest bean */ public static Object copyProperties(Object dest, Object orig, String[] ignores) { if (dest == null || orig == null ) { return dest; } PropertyDescriptor[] destDesc = PropertyUtils.getPropertyDescriptors(dest); try { for ( int i = 0 ; i < destDesc.length; i ++ ) { if (contains(ignores, destDesc[i].getName())) { continue ; } Class destType = destDesc[i].getPropertyType(); Class origType = PropertyUtils.getPropertyType(orig, destDesc[i].getName()); if (destType != null && destType.equals(origType) && ! destType.equals(Class. class )) { if ( ! Collection. class .isAssignableFrom(origType)) { Object value = PropertyUtils.getProperty(orig, destDesc[i].getName()); PropertyUtils.setProperty(dest, destDesc[i].getName(), value); } } } return dest; } catch (Exception ex) { throw new CopyException(ex); } } static boolean contains(String[] ignores, String name) { boolean ignored = false ; for ( int j = 0 ; ignores != null && j < ignores.length; j ++ ) { if (ignores[j].equals(name)) { ignored = true ; break ; } } return ignored; } }
public class PO2VO extends TestCase { /* (non-Javadoc) * @see junit.framework.TestCase#setUp() */ protected void setUp() throws Exception { super.setUp(); } public void testPO2VO(){ TUserBasicVO vo = new TUserBasicVO(); TUserBasic po = new TUserBasic(); po.setPwd("111"); po.setUserName("222"); String[] a={"Pwd","UserName"}; try { CopyUtil.copyProperties(vo, po,a); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } System.out.println(vo.getPwd()); } }
评论
1 楼
letmedown
2012-07-24
您好!
我有一个问题.
TUserBasicVO vo = new TUserBasicVO(); //业务层的类TUserBasicVO
TUserBasic po = new TUserBasic(); //Hibernate管理的实体类.
请问:
1:当实体类之间有1:m 或m:n关系时,一个po对象的成员变量是另一个po的集合.
您在转换的时候都是把所有的都转换了吗?
2:如果是彻底地转换,那当VO要持久化时,再把它们完全转成PO是吗?
3:您设计的po 与vo类都是面向接口的吗?
请问您是怎么处理的?
谢谢!!
我有一个问题.
TUserBasicVO vo = new TUserBasicVO(); //业务层的类TUserBasicVO
TUserBasic po = new TUserBasic(); //Hibernate管理的实体类.
请问:
1:当实体类之间有1:m 或m:n关系时,一个po对象的成员变量是另一个po的集合.
您在转换的时候都是把所有的都转换了吗?
2:如果是彻底地转换,那当VO要持久化时,再把它们完全转成PO是吗?
3:您设计的po 与vo类都是面向接口的吗?
请问您是怎么处理的?
谢谢!!
发表评论
-
Apache HttpClient Examples
2015-05-06 15:25 1946String url = "http://www ... -
java使用IO流进行文件的合并
2014-12-16 11:44 2130package chapter8.file; imp ... -
为什么谷歌要执行严格的代码编写规范
2014-09-02 13:51 896本篇是谷歌是如何做代码审查的的续篇。 我们在谷歌所做事情中 ... -
垃圾回收调优及JVM参数详解
2014-07-18 17:52 1685一、常用JVM配置参数 1.1基本参数 -client ... -
为何要在Java中使用内存映射文件(Memory Mapped File)或者MappedByteBuffer
2014-06-06 00:21 3119尽管从JDK 1.4版本开始,Java内存映射文件(Memo ... -
Java 中使用内存映射文件需要考虑的 10 个问题
2014-06-06 00:18 592java中的内存映射IO ... -
Annotation的优缺点-和配置文件比较
2014-05-06 18:22 1275a. 配置(配置文件,con ... -
shell/cmd 获取System.exit(); 返回值
2014-04-29 11:28 3764windows cmd: java ... -
java代码片段
2013-12-20 10:59 794使用NIO进行快速的文件拷贝 public ... -
Java IO流分析整理
2013-12-20 10:19 889ava中的流,可以从不同的角度进行分类。 按照数据流的方向 ... -
Java-UrlRewrite中文官方文档
2013-07-14 18:40 1866安装 1. 下载jar包, 并加入到WEB-INF/ ... -
java的8种排序
2013-03-18 09:58 11088种排序之间的关系: ... -
使用FileReader和FileWriter读取写入文件内容
2012-04-09 11:49 2333java 中的字节流不能直接操作Unicode字符,要想直接操 ... -
System.out.println与System.err.println的区别
2012-04-06 19:49 2628我在学习osworkflow时,同时使用了System.out ... -
Java 泛型集合工具类
2012-03-01 14:12 1481package my.tools; import jav ... -
Java获取IP地址:request.getRemoteAddr()警惕
2009-11-05 17:03 6535项目中需要和第三方平台接口,加了来源IP鉴权功能,测试时发现没 ... -
Integer比较
2009-05-18 16:08 3034例如:两个对象里面都有一个方法为getInteger()的方法 ... -
Java和PHP在Web开发方面的比较
2009-05-01 12:39 2702比较PHP和JSP这两个Web开发技术,在目前的情况是其实是比 ... -
创建J2EE 5.0工程后,JSTL不能使用解决方法
2009-01-06 17:21 5630原因:MyEclipse 创建 j2ee5.0工程的时候把JS ... -
新版JUnit 4.0 抢先体验
2008-04-03 13:51 1256新版JUnit 4.0 抢先体验 ...
相关推荐
简单的vopo转换功能及依赖jar
关于VO、PO的理解——java的(PO,VO,TO,BO,DAO,POJO)解释
介绍vo,bo,po的区别。看其他网站收集的资料。
自身关联的添加、检索及PO到VO得封装、转换
po与vo区别.docpo与vo区别.docpo与vo区别.doc
JAVA 中 的 什 么 是 POJO、VO、PO、DO、DTO 都 是 什 么 ? 他 们 有 什 么 区 别 ?
J2EE基础知识之DTO,VO,PO,DO等定义J2EE基础知识之DTO,VO,PO,DO等定义J2EE基础知识之DTO,VO,PO,DO等定义
J2EE开发人员必须知道 Java Web开发中VO、PO、DTO、POJO代表含义。
NULL 博文链接:https://ewf-momo.iteye.com/blog/1738853
一款自动生成POVO 的工具,双击即可 运行,默认配置文件:lib/defaultconfig.properties
Java中 PO VO BO DTO DAO 和 POJO 关系图
本人以前搞不懂这些o的区别,特意查找资料总结了一下,希望也可以帮到其他人
如果想生成未预置的代码,如vo对象、前端vue页面以及其他自定义代码等,需要做一些定制和扩展来实现。 从使用角度而言,官方资料介绍得比较简要,要实际使用,仍然需要进行具体的尝试和摸索,包括必要时看下源码...
Java的几种对象(PO-VO-DAO-BO-POJO)解释
采用超声合成方法,在较短的时间内合成了VOPO4/苯胺插层复合物,进行了X射线粉末衍射、元素分析、红外...结果表明,在42℃时,0.2g VOPO4·2H2O与8mL苯胺超声30min后,再经乙醇处理15min,所得产物。具有较大的层间距。
以V2O5、H3PO4为原料,在V2O5与H3PO4摩尔比为1:2.4条件下通过水热法制备VOPO4・xH2O,得到的VOPO4・xH2O再通过650°C煅烧制备纳米结构ε-VOPO4,通过X射线衍射对制备材料进行表征。采用SEM对产物形貌进行观察,考察...
java(PO,VO,BO,DAO,POJO)Explained Collection 详解
海思3531A_虚拟VO调试