反射更新字段

private void appendWaitingToField(MCiDueFin data, String fieldName, Object newValue) {

try {

Field field = data.getClass().getDeclaredField(fieldName);

field.setAccessible(true);

复制代码
        Object originalValue = field.get(data);
        String originalStr = originalValue != null ? originalValue.toString() : "";

        String newStr = newValue != null ? newValue.toString() : "";

        StringBuilder result = new StringBuilder();
        if (!originalStr.isEmpty()) {
            result.append(originalStr);
        }
        if (!newStr.isEmpty()) {
            if (result.length() > 0) result.append(" ");
            result.append(newStr);
        }

        // 设置回字段
        field.set(data, result.toString());

        System.out.println("字段 " + fieldName + " 更新为: " + result.toString());

    } catch (NoSuchFieldException e) {
        System.out.println("字段不存在: " + fieldName);
    } catch (Exception e) {
        e.printStackTrace();
    }
}
相关推荐
Darling噜啦啦9 小时前
JavaScript 数组深度解析:从纯函数到二维数组陷阱,一文吃透前端数据结构核心
前端·javascript·数据结构
万少9 小时前
一封邮件,让我重新打开了搁置半年的鸿蒙应用
前端·javascript·后端
wjj不想说话9 小时前
你的小程序活动页,可能已经成了后台配置的杂物间
前端
梦想是准点下班9 小时前
androidStudio打包,我又又又忘了
前端
槑有老呆9 小时前
栈队列链表,三个故事就懂了
前端
zhangfeng11339 小时前
ps aux讲解,结合国家超算中心 hpc apptainer
linux·服务器·网络
不负岁月无痕9 小时前
C++ 模板核心内容与高频面试题汇总
java·开发语言·c++
Flittly9 小时前
【AgentScope Java新手村系列】(2)第一个Agent-基础对话
java·spring boot·spring·ai
ViavaCos9 小时前
pnpm v11 的安全策略,让我踩了个坑
前端
To_OC9 小时前
从一段定时器代码,重新捋清 JS 同步、异步与 Promise
前端·javascript·代码规范