springboot 在@Autowire无法注入bean时的临时处理办法
来源:互联网 发布:eviews横截面数据步骤 编辑:程序博客网 时间:2024/06/04 18:53
问题由来:
在用netty写一个网络编程项目的时候,需要用到mongoTemplate这个springdata提供的mongodb的操作类。但是这个只能由springboot来注入,但是netty又会进行new操作,使得@Autowire无法正常工作。
解决方案:
1.我看网上的教程,有spring.xml来显式注入的,但这个有点麻烦。
2.还有几个教程没看懂 比如 http://blog.csdn.net/zhousenshan/article/details/75807999
3.我最后用的方式,在一层调用的时候使用静态方法static,当然static属性和方法是不能直接使用@Autowire注入的,这里用来一个@PostConstruct来进行操作。
就是在bean初始化时运行。
@Autowired private PositionDao positionDao; private static PositionDao positionDaoStatic; @PostConstruct public void init(){ positionDaoStatic=positionDao; }
@PostConstruct 注解是在bean被构造时,先运行这个方法。
这样下面的static方法就可以使用@Autowire的属性了。而且调用静态方法也不需要new一个对象,或者使用springboot自动注入了。
另外,记得在类上加@Compact 注解。
ps:这个路子肯定是有点野的,等我研究清楚netty和spring框架可能会找到更好的方法。
阅读全文
0 0
- springboot 在@Autowire无法注入bean时的临时处理办法
- SpringBoot bean无法注入
- SpringBoot bean无法注入的问题
- mybatis整合ss的时候,无法autowire使用mapper的自动注入,找不到bean:NoSuchBeanDefinitionException
- spring与springboot中,如何在static方法里用@Autowire或者@Resource注入的属性
- springboot整合mybatis mapper注入时显示could not autowire的解决
- 如何使用spring的autowire为servlet注入Bean
- 如何使用spring的autowire为servlet注入bean
- 如何使用spring的autowire为servlet注入Bean
- 如何使用spring的autowire为servlet注入Bean
- 关于SpringBoot bean无法注入的问题(与文件包位置有关)
- springboot注入bean
- RepositoryRestHandlerMapping在springboot中无法注入
- Springboot bean注入 ---- Jedis注入
- 临时表空间爆满的处理办法
- 关于SpringBoot bean无法注入的问题(与文件包位置有关)改变自动扫描的包
- 关于SpringBoot bean无法注入的问题(与文件包位置有关)改变自动扫描的包
- 关于SpringBoot bean无法注入的问题(与文件包位置有关)改变自动扫描的包
- 利用Maven搭建SSM项目
- mysql调优
- 51nod 1242 斐波那契数列的第N项(矩阵幂运算)
- Docker -- dockerFile指令说明
- 51nod 1006 最长公共子序列Lcs
- springboot 在@Autowire无法注入bean时的临时处理办法
- 排列
- Jenkins
- 原码、反码与补码
- ES6--异步操作之Promise
- Spring Boot整合jdbctemplate
- 简单的数据备份与恢复
- flash真的会被淘汰掉吗?
- VS 2013各版本的激活码