关于反射

来源:6-7 缓存系统常量数据

慕少8152258

2022-03-20

@Autowired
private SystemConstants systemConstants;

 List<SysConfig> list = sysConfigDao.selectAllParam();
        list.forEach(one->{
            String key=one.getParamKey();
            String value=one.getParamValue();

            key= StrUtil.toCamelCase(key);
            try {
                //反射写法,获取指定系统参数类对应字段
                Field field = systemConstants.getClass().getField("key");
                //当前对象对应字段赋值
                field.set(systemConstants,value);
            }catch (Exception e){

            }
        });

循环去设置spring创建的对象systemConstants的值 这样是会出现多个SystemConstants类 对象吗?

写回答

1回答

神思者

2022-03-21

不会的,只是给属性赋值。建议你先百度一下Java反射给属性赋值的相关知识,这个问题很容易理解

0
1
慕少8152258
spring管理的@Component对象没有加@Scope("prototype")注解的类,都是单例的。。。写迷糊了
2022-03-21
共1条回复

SpringBoot 在线协同办公小程序开发 全栈式项目实战

未来趋势型业务 + 前后端综合技术栈 + 惊艳的细节打磨

1798 学习 · 1915 问题

查看课程