java中如何遍历实体类的属性和数据类型以及属性值
来源:互联网 发布:mac qq发送文件特别慢 编辑:程序博客网 时间:2024/06/05 15:16
- package com.walkerjava.test;
- import java.lang.reflect.Field;
- import java.lang.reflect.InvocationTargetException;
- import java.lang.reflect.Method;
- import java.util.Date;
- /***
- * 遍历实体类的属性和数据类型以及属性值
- *
- * @author LiBaozhen
- * @date 2013-1-4 上午10:25:02
- * @company
- * @version v1.3
- * @see 相关类
- * @since 相关/版本
- */
- public class ReflectTest {
- public static void reflectTest(Object model) throws NoSuchMethodException,
- IllegalAccessException, IllegalArgumentException,
- InvocationTargetException {
- // 获取实体类的所有属性,返回Field数组
- Field[] field = model.getClass().getDeclaredFields();
- // 遍历所有属性
- for (int j = 0; j < field.length; j++) {
- // 获取属性的名字
- String name = field[j].getName();
- // 将属性的首字符大写,方便构造get,set方法
- name = name.substring(0, 1).toUpperCase() + name.substring(1);
- // 获取属性的类型
- String type = field[j].getGenericType().toString();
- // 如果type是类类型,则前面包含"class ",后面跟类名
- System.out.println("属性为:" + name);
- if (type.equals("class java.lang.String")) {
- Method m = model.getClass().getMethod("get" + name);
- // 调用getter方法获取属性值
- String value = (String) m.invoke(model);
- System.out.println("数据类型为:String");
- if (value != null) {
- System.out.println("属性值为:" + value);
- } else {
- System.out.println("属性值为:空");
- }
- }
- if (type.equals("class java.lang.Integer")) {
- Method m = model.getClass().getMethod("get" + name);
- Integer value = (Integer) m.invoke(model);
- System.out.println("数据类型为:Integer");
- if (value != null) {
- System.out.println("属性值为:" + value);
- } else {
- System.out.println("属性值为:空");
- }
- }
- if (type.equals("class java.lang.Short")) {
- Method m = model.getClass().getMethod("get" + name);
- Short value = (Short) m.invoke(model);
- System.out.println("数据类型为:Short");
- if (value != null) {
- System.out.println("属性值为:" + value);
- } else {
- System.out.println("属性值为:空");
- }
- }
- if (type.equals("class java.lang.Double")) {
- Method m = model.getClass().getMethod("get" + name);
- Double value = (Double) m.invoke(model);
- System.out.println("数据类型为:Double");
- if (value != null) {
- System.out.println("属性值为:" + value);
- } else {
- System.out.println("属性值为:空");
- }
- }
- if (type.equals("class java.lang.Boolean")) {
- Method m = model.getClass().getMethod("get" + name);
- Boolean value = (Boolean) m.invoke(model);
- System.out.println("数据类型为:Boolean");
- if (value != null) {
- System.out.println("属性值为:" + value);
- } else {
- System.out.println("属性值为:空");
- }
- }
- if (type.equals("class java.util.Date")) {
- Method m = model.getClass().getMethod("get" + name);
- Date value = (Date) m.invoke(model);
- System.out.println("数据类型为:Date");
- if (value != null) {
- System.out.println("属性值为:" + value);
- } else {
- System.out.println("属性值为:空");
- }
- }
- }
- }
- }
http://blog.csdn.net/dongzhouzhou/article/details/8659836
0 0
- java中如何遍历实体类的属性和数据类型以及属性值
- java中如何遍历实体类的属性和数据类型以及属性值
- java中如何遍历实体类的属性和数据类型以及属性值
- java中如何遍历实体类的属性和数据类型以及属性值
- java中如何遍历实体类的属性和数据类型以及属性值
- java中循环遍历实体类的属性和数据类型以及属性值
- java遍历实体类的属性和数据类型以及属性值
- java遍历实体类的属性和数据类型以及属性值
- java遍历实体类的属性和数据类型以及属性值
- java中遍历实体类属性和类型,属性值
- java中遍历实体类属性和类型,属性值
- java中遍历实体类属性和类型,属性值
- java中遍历实体类属性和类型,属性值
- java中遍历实体类属性和类型,属性值
- java中遍历实体类属性和类型,属性值
- java中遍历实体类属性和类型,属性值
- 使用java反射机制遍历实体类的属性和类型以及值
- 转载--java中遍历实体类属性和类型,属性值
- Java 7之基础 - 强引用、弱引用、软引用、虚引用
- python实现根据窗口标题调用窗口的方法
- 概率论随机变量及其分布(书本摘录总结)
- 欢迎使用CSDN-markdown编辑器
- 进程与线程的区别
- java中如何遍历实体类的属性和数据类型以及属性值
- 【SDOI2011】bzoj2243 染色
- 有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。
- mybatis添加扫描.xml文件
- pythonwin-win32gui 窗口查找和遍历
- 【BZOJ】1207: [HNOI2004]打鼹鼠
- Handler延迟消息处理
- HTTP协议学习(上)
- 利用python网络爬虫批量下载花瓣中个人主页中收藏的所有图片