假设一个javaBean类,有两个属性,userName和password,现在如果想通过属性名来找其对应的属性值的话,我们就要用到java反射了,我这里的方法是根据attribute name组装method方法,然后利用method的invoke方法,就可以获取到attribute value了!下面直接上代码
dto类:
public class Dto { private String userName; private String password; public String getUserName() { return userName; } public void setUserName(String userName) { this.userName = userName; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } }
处理方法:
import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; public class t { public static void main(String[] args){ Dto d = new Dto(); d.setUserName("LRR"); d.setPassword("123"); // 已知attribute name 组装 getter语句 String getter = "get" + "UserName";// getUserName try { // 通过method的反射方法获取其属性值 Method method = d.getClass().getMethod(getter, new Class[]{}); Object value = method.invoke(d, new Object[]{}); System.out.print(value); } catch (IllegalArgumentException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IllegalAccessException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (InvocationTargetException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (SecurityException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (NoSuchMethodException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
结果:LRR
相关推荐
changeFields.java 改变属性值示例 Circle.java 一个用于测试的简单类 DumpMethods.java 使用反射机制来获取类中的方法 getClassName.java 利用反射机制获取类的名字 invokeConstructor.java 利用反射机制调用...
15.2 使用Java反射机制414 15.2.1 获取类型信息414 15.2.2 创建对象417 15.2.3 调用方法419 15.2.4 访问成员变量的值421 15.2.5 操作数组422 15.3 反射与动态代理424 15.3.1 静态代理424 15.3.2 动态代理426 15.4 本...
设计一个方法,给一个字符串(类)返回一个对象,对象里面还有属性值 例如考试系统中 Question类型 ATM系统 User类型 Question和User类型都是我们自定义的,这两个类的目的是为了存储值,更像个容器 Service Dao...
一、Java基础知识 1.Java有那些基本数据类型,String是不是基本数据类型,他们有何区别。 2.字符串的操作: 写一个方法,实现字符串的反转,如:输入abc,输出cba 写一个方法,实现字符串的替换,如:输入...
实例236 复制JavaBean属性 296 实例237 动态排序JavaBean 298 10.5 其他Commons组件简介 299 实例238 优雅的JDBC代码 299 实例239 结果集与Bean列表 301 实例240 编写MD5查看器 302 实例241 基于Base64编码 304 实例...
9.6.7改变属性的值301 9.6.8使用数组301 9.7本章小结303 第10章泛型304 10.1泛型的本质304 10.2一个关于泛型的简单例子305 10.3带两个类型参数的泛型类308 10.4有界类型309 10.5通配符参数311 10.6泛型方法...
所有的持久化类(persistent classes)都要求有无参的构造器,因为Hibernate必须使用Java反射机制来为你创建对象。构造器(constructor)的访问级别可以是private,然而当生成运行时代理(runtime proxy)的时候则...
{2.14}JavaBean规范}{66}{section.2.14} {3}常用类}{67}{chapter.3} {3.1}Object类}{67}{section.3.1} {3.1.1}\ttfamily toString}{67}{subsection.3.1.1} {3.1.2}\ttfamily equals}{67}{subsection.3.1.2} {...
3.2.3 Java反射机制 3.3 资源访问利器 3.3.1 资源抽象接口 3.3.2 资源加载 3.4 BeanFactory和ApplicationContext 3.4.1 BeanFactory介绍 3.4.2 ApplicationContext介绍 3.4.3 父子容器 3.5 Bean的生命周期 3.5.1 ...
3.2.3 Java反射机制 3.3 资源访问利器 3.3.1 资源抽象接口 3.3.2 资源加载 3.4 BeanFactory和ApplicationContext 3.4.1 BeanFactory介绍 3.4.2 ApplicationContext介绍 3.4.3 父子容器 3.5 Bean的生命周期 3.5.1 ...
2.11 用文件和名空间组织代码 54 2.12 导入类型及其成员 55 2.12.1 导入是相对的 56 2.12.2 包对象 57 2.13 抽象类型与参数化类型 57 2.14 本章回顾与下一章提要 59 第3章 要点详解 60 3.1 ...
1. 介绍.........................................................................................................18 1.1. 关于本书..........................................................................
1. 介绍.........................................................................................................18 1.1. 关于本书...........................................................................