反射更新字段

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();
    }
}
相关推荐
不穿格子的程序员1 分钟前
从零开始写算法——二叉树篇6:二叉树的右视图 + 二叉树展开为链表
java·算法·链表
Coder_Boy_2 分钟前
基于SpringAI的在线考试系统-核心业务流程图
java·数据库·spring boot·软件工程
zhelingwang11 分钟前
设计模式笔记
前端
AI科技星13 分钟前
光子的几何起源与量子本质:一个源于时空本底运动的统一模型
服务器·人工智能·线性代数·算法·机器学习
Focus_14 分钟前
如何借助AI在UE5中将图片批量生成3D模型
前端·aigc·游戏开发
Kingairy14 分钟前
Python面试高频题
java·python·面试
黎雁·泠崖15 分钟前
Java数组入门:定义+静态/动态初始化全解析(隐式转换+案例+避坑指南)
java·开发语言·python
MMME~25 分钟前
Linux下的软件管理
linux·运维·服务器
迷途之人不知返31 分钟前
Linux操作系统的基本指令
linux·服务器
松涛和鸣31 分钟前
DAY49 DS18B20 Single-Wire Digital Temperature Acquisition
linux·服务器·网络·数据库·html