IE盒子

搜索
查看: 85|回复: 1

如何利用Java反射机制生成实体类?

[复制链接]

2

主题

6

帖子

7

积分

新手上路

Rank: 1

积分
7
发表于 2022-9-22 18:08:42 | 显示全部楼层 |阅读模式
需求:利用Java反射机制生成实体类
障碍:无法通过Object获取变量名 伪代码如下;
或者请给出更好的解决方案;
/**
* 获取实体类
*
* @param object 实体类参数项
* @return 实体类
*/
protected T getEntity(T t, Object... object) {
    Class tClass = t.getClass();
    while (tClass != null) {
        Field[] declaredFields = tClass.getDeclaredFields();
        tClass = tClass.getSuperclass();
        for (Field field : declaredFields) {
            for (Object o : object) {
                Class fClass = field.getClass();
                if (fClass.isInstance(o)) {
                    try {
                        field.setAccessible(true);
                        if (o.getName().equals(field.getName())) {
                            field.set(field, o);
                        }
                    } catch (IllegalAccessException e) {
                        e.printStackTrace();
                    }

                }
            }
        }
    }
    return t;
}
回复

使用道具 举报

3

主题

12

帖子

22

积分

新手上路

Rank: 1

积分
22
发表于 6 天前 | 显示全部楼层
路过 帮顶 嘿嘿
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表