利用映射实现两个结构相同javabean的赋值
来源:互联网 发布:基于大数据的用户画像 编辑:程序博客网 时间:2024/06/15 22:20
public static void test() throws SecurityException, NoSuchMethodException, IllegalArgumentException, IllegalAccessException, InvocationTargetException
{
// import java.lang.reflect.Field;
// import java.lang.reflect.InvocationTargetException;
Formbean form = new Formbean();
form.setName("tom");
form.setAge("dick");
Tobean to = new Tobean();
Field[] fields = form.getClass().getDeclaredFields();
for(int i = 0; i<fields.length;i++){
String name = fields[i].getName();
//System.out.println(name);
String tmp1 = name.substring(0, 1);
tmp1 = tmp1.toUpperCase();
String tmp2 = name.substring(1);
String methodName1 = "get"+tmp1+tmp2;
String methodName2 = "set"+tmp1+tmp2;
Class class1 = Formbean.class;
Class class2 = Tobean.class;
java.lang.reflect.Method method1 = class1.getMethod(methodName1, null);
java.lang.reflect.Method method2 = class2.getMethod(methodName2, new Class[]{String.class});
Object result = method1.invoke(form, null);
method2.invoke(to, new Object[]{result.toString()});
//System.out.println();
}
System.out.println(to.getClass().getName());
System.out.println(to.getName());
System.out.println(to.getAge());
}
public static void main(String[] args) throws Exception, NoSuchMethodException {
test();
}
{
// import java.lang.reflect.Field;
// import java.lang.reflect.InvocationTargetException;
Formbean form = new Formbean();
form.setName("tom");
form.setAge("dick");
Tobean to = new Tobean();
Field[] fields = form.getClass().getDeclaredFields();
for(int i = 0; i<fields.length;i++){
String name = fields[i].getName();
//System.out.println(name);
String tmp1 = name.substring(0, 1);
tmp1 = tmp1.toUpperCase();
String tmp2 = name.substring(1);
String methodName1 = "get"+tmp1+tmp2;
String methodName2 = "set"+tmp1+tmp2;
Class class1 = Formbean.class;
Class class2 = Tobean.class;
java.lang.reflect.Method method1 = class1.getMethod(methodName1, null);
java.lang.reflect.Method method2 = class2.getMethod(methodName2, new Class[]{String.class});
Object result = method1.invoke(form, null);
method2.invoke(to, new Object[]{result.toString()});
//System.out.println();
}
System.out.println(to.getClass().getName());
System.out.println(to.getName());
System.out.println(to.getAge());
}
public static void main(String[] args) throws Exception, NoSuchMethodException {
test();
}
- 利用映射实现两个结构相同javabean的赋值
- 相同结构的两个类赋值
- 利用反射实现JavaBean的自动赋值
- 利用java反射实现两个具有相同属性bean赋值
- 利用java反射实现两个具有相同属性bean赋值
- javabean 不同的类 相同属性赋值
- 利用反射实现JavaBean的自动赋值(六)
- .net 反射实现两个相同结构实体类的转换
- 利用反射实现两个对象赋值
- 利用Java反射实现JavaBean对象相同属性复制并初始化目标对象为空的属性的BeanUtils
- 利用Java反射实现JavaBean对象相同属性复制并初始化目标对象为空的属性的BeanUtils
- 利用Java反射实现JavaBean对象相同属性复制并初始化目标对象为空的属性的BeanUtils
- 利用Java反射实现JavaBean对象相同属性复制并初始化目标对象为空的属性的BeanUtils
- 为具有相同属性的两个类赋值
- 两个赋值相同的Integer参数,打印结果却不等
- C#利用反射实现两个类的对象之间相同属性的值的复制
- c# 对两个Datatable的结构相同进行合并,结构相同和不同
- javaBean的映射文件
- 输入框提示特效
- 杭电ACM 2099 整除的尾数
- excel符号输入方法
- panda3d 中导入image
- LINUX驱动分析之RTC(一)
- 利用映射实现两个结构相同javabean的赋值
- 查看Oracle当前用户的信息
- Swing事件处理
- W/dalvikvm(18310): Verifier rejected class 续
- [MPlayer]编译错误。
- AndroidJNI 通过C++调用JAVA
- awk常用到的内建标量变量
- 初学Android,使用原始资源(二十三)
- HDU 1046