不是偶特别想造这个轮子,只是项目环境比较复杂,原来没有导入commons-beanutils-1.6.1.jar包,但是又不想一个一个的设置属性,就写个了这样的方法,希望别被别鄙视,写的比较粗糙...
说明:将obj的值存入desc中(类似的操作其实可以直接调用jar中的BeanUtil.copyProperties()方法,此处只是记录下反射的用法。)
public class Test {
import java.lang.reflect.Field;
import java.lang.reflect.Method;
/**
* Copy obj to desc.
*
*/
public static void copyProperties(Object desc, Object obj){
Class<?> descClass = desc.getClass();
Class<?> objClass = obj.getClass();
Field[] fields = objClass.getDeclaredFields();
try {
for (int i = 0; i < fields.length; i++) {
String name = fields[i].getName();
String getMethodName = "get"+toFirstLetterUpperCase(name);
String setMethodName = "set"+toFirstLetterUpperCase(name);
try{
Object value = objClass.getMethod(getMethodName).invoke(obj);
descClass.getMethod(setMethodName, value.getClass()).invoke(desc, value);
}catch(Exception e){
}
}
} catch (Exception e) {
}
}
public static String toFirstLetterUpperCase(String str) {
if(str == null || str.length() < 2){
return str;
}
String firstLetter = str.substring(0, 1).toUpperCase();
return firstLetter + str.substring(1, str.length());
}
}
朋友的网站 http://woods2010.cn.alibaba.com/ 专业电子器件代购
分享到:
相关推荐
提供以下几个功能: 1. 取最简类名 2. 动态赋值 3. 动态取值 4. 判断是否普通类型(自定义成员变量) 5. 动态取指定类的所有属性名
项目中需要过滤前面表单页面中传过来的实体类的中的String类型变量的前后空格过滤,由于前几天看过一个磨砺营的java反射讲解,非常受益。于是,哈哈哈 public static <T> void modelTrim(T model){ Class<T> ...
下面小编就为大家带来一篇java反射遍历实体类属性和类型,并赋值和获取值的简单方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
将前台传过来的参数,通过request作用域反射到javabean,避免了大量的取值代码
书名:《Java开发实战1200例(第I卷)》(清华大学出版社.李钟尉,陈丹丹) PDF格式扫描版,全书分为24章,共817页。2011年1月出版。 全书压缩打包成4部分,这是第3部分 注:本系列图书的第I、II卷再版时均相应改名为...
第一个next(可以设置生成文档注释的目录),第二个next,设置字符集 如果是UTF-8编码,且有中文,请输入-encoding UTF-8 -charset UTF-8 4. 勾选一个生成完毕后,直接通过浏览器打开的选项 5...
编写Student类,类中包含学生姓名,学号等私有数据成员。 使用JAVA反射机制修改一个学生对象的私有数据成员(不允许调用setters)
通过枚举反向给实体类赋值工具类,减少表单提交时通过request.getParameter(name)方式获取提交值的重复操作
many-to-one:标签中对于cascade的取值delete,delete-orphan,all-delete-orphan(只用unique属性值不为true不能出现)慎用 cascade:级联属性 none:不做任何级联操作 save-update:对当前对象执行save,update, ...
仿jQuery选择器 取值设值val,html函数,show,hidden显示隐藏函数,fadeIn,fadeOut淡出函数,ajax简单封装,表单序列化... == 如何使用sqlite? 如何实现事务处理? 如何实现URL映射? 如何实现参数注入? 如何实现对象转...