Spring 无法注入静态变量,直接在静态方法中获取bean
来源:互联网 发布:手机淘宝充值中心没有 编辑:程序博客网 时间:2024/06/11 19:45
模块中想把一个类写成工具类,提供静态方法调用。但是方法中要用到@autowire注入的dao类变量,它要能在静态方法中使用的话本身就加上static,但是static变量是无法用@autowire注入的。
@Autowiredprivate AppConfMapper m;public static Map getSysConf() { m.....;}
换一种思路,为什么在要外层注入,在方法里面获取m也可以啊。你可以用@autowire这种注解自动把对象实例注入进来,这些实例是维护在getApplicationContext中的。手动去这里getBean出来就是了。
public static Map getSysConf() { AppConfMapper appConfMapper = (AppConfMapper) BeanHoldFactory.getApplicationContext().getBean("appConfMapper"); List<Map> list = appConfMapper.getSysConf();}这里BeanHoldFactory 实现了ApplicationContextAware,重写了setApplicationContext方法,里面存放了代码中所有使用注解(@Component,@Repository,@Service等)标注的类的实例,相当于放在spring容器中管理。
2 0
- Spring 无法注入静态变量,直接在静态方法中获取bean
- 使用Spring注解,在静态方法中注入bean
- Spring 在静态工具类中使用注解注入bean
- spring 在静态工具类中使用注解注入bean
- spring注入静态bean步骤 spring在普通类中注入bean实例
- 静态方法注入bean
- spring流入静态bean spring在普通类中注入bean实例
- Spring静态变量注入
- Spring静态变量注入
- spring静态变量注入
- Spring注入静态变量
- Spring静态变量注入
- Spring 依赖注入 静态变量无法依赖注入
- java使用spring在静态方法中使用注入类
- spring注入的方式实现静态方法中使用非静态变量
- spring静态方法中使用bean对象
- spring注入bean进入工具类的静态方法
- 解决Spring注解无法注入静态变量的问题
- C# 生成仿京东页码条,服务器端实现
- __NSCFNumber isEqualToString:的问题
- UITabBarController
- iOS性能优化三部曲(初级)
- iOS网络篇-URLConnection基本使用
- Spring 无法注入静态变量,直接在静态方法中获取bean
- jQuery.trim() 函数详解
- 关于观察者模式的总结
- 正则表达式30分钟入门教程
- Codeforces 612B HDD is Outdated Technology 【水题】
- Linux 机器重启reboot命令
- Android下的屏幕适配
- log4j.properties配置与加载应用
- Android tips(三)-->android拍照相片旋转问题