博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Dto与Po相互转换(切换辅助类数据到实体类)
阅读量:3521 次
发布时间:2019-05-20

本文共 2095 字,大约阅读时间需要 6 分钟。

package com.zkdj.urlCheck.spring_boot_1.main.java.utils;import java.lang.reflect.Field;import java.lang.reflect.Method;/** * dto与po转换类 * @author curry_du * */public class TransUtil {    /**     * dto2po     */    public static  Object  dto2po(Object dto,Object po){        if(dto==null){            return null;        }        Field[] fields=dto.getClass().getDeclaredFields();        Method methodSet=null;        Method methodGet=null;        for(int i=0;i
classType=fields[i].getType(); String setMethod="set"+fieldName.substring(0, 1).toUpperCase()+fieldName.substring(1); String getMethod="get"+fieldName.substring(0, 1).toUpperCase()+fieldName.substring(1); try { methodSet=po.getClass().getMethod(setMethod, classType); methodGet=dto.getClass().getMethod(getMethod); methodSet.invoke(po, methodGet.invoke(dto)); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } return po; } /** * po2dto */ public static void po2dto(Object po,Object dto){ if(po==null){ return; } Field[] fields=po.getClass().getDeclaredFields(); Method getMethod=null; Method setMethod=null; for(int i=0;i
classType=fields[i].getType(); String getMethodName="get"+fieldName.substring(0, 1).toUpperCase()+fieldName.substring(1); String setMethodName="set"+fieldName.substring(0, 1).toUpperCase()+fieldName.substring(1); try { setMethod=dto.getClass().getMethod(setMethodName, classType); getMethod=po.getClass().getMethod(getMethodName); setMethod.invoke(dto, getMethod.invoke(po)); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } }}

//调用方法

        Person p = new Person();

        System.out.println("=="+p);
        Object dto2po =TransUtil.dto2po(centerUserBO, p);
        System.out.println(dto2po);

转载地址:http://nyrqj.baihongyu.com/

你可能感兴趣的文章
选择排序(java代码实现)
查看>>
插入排序
查看>>
哈夫曼树java代码实现
查看>>
快速排序
查看>>
vue路由高亮的两种方式
查看>>
vue router 报错: Uncaught (in promise) NavigationDuplicated {_name:""NavigationDuplicated"... 的解决方法
查看>>
vue跳转页面的两种方式
查看>>
存储器题目解析(持续更新中....)
查看>>
存储器知识要点
查看>>
Cache模拟器的实现
查看>>
实验2:MIPS指令系统和MIPS体系结构
查看>>
设计模式七大原则
查看>>
手写 | spring事务
查看>>
AndroidStudio Gradle手动下载
查看>>
SpringBoot入门(二)场景启动器
查看>>
SpringBoot入门--自动配置
查看>>
springboot读取配置文件 例:读取配置文件的优先顺序;在主配置文件中激活其他配置文件;加载非主配置文件
查看>>
自动配置原理
查看>>
TCP协议
查看>>
关于Linux系统使用遇到的问题-1:vi 打开只读(readonly)文件如何退出保存?
查看>>