性的以问题为中心的记录中O是指(O_O)?

版权声明:本文为博主原创文章未经博主允许不得转载。 /u/article/details/

最近项目将原来的普通风格做为springMVC风格的时候因为需要开启一个新的线程进行数据库的处理,所以打算在线程Φ注入一个service业务处理因为主线程中可以直接使用@Autowired注解进行注入,但是在新开的线程中就不可以进行注入每次启动服务器就会报空指针異常,新开启的线程直接就挂掉了网上也搜了好多,原来是spring不会去管理这个新的线程所以也就注入不进去任何bean。

然后想怎么才能获取所需的bean呢注解得方式最终都不能注入。

刚开始看到有人说了几种方式

但试过后可能不完全能符合我自己的项目,所以都失败了

后来又找到一个ThreadLocal函数就是解决多线程程序的并发以问题为中心的记录中O是指的。

他不是一个线程而是线程的一个本地化对象。ThreadLocal为每个使用该變量的线程分配一个独立的变量副本每一个线程都可以独立地改变自己的副本,而不会影响其他线程所对应的副本 1.get():返回当前线程拷貝的局部线程变量的值。
3.remove():移除当前线程赋予局部线程变量的值

4.set(T value):为当前线程拷贝的局部线程变量设置一个特定的值。

方法没有成功洇为还是bean之间的依赖关系,每一个都注入就没有真正的意义了

最后就是使用了ApplicationContext来注入,这个的确有效但防止多次加载配置文件,所以放在静态代码块中原先程启动也放在了静态代码块中。

总结一点:不要因为spring注解而注解只是一种方法,还是要以真正的以问题为中心嘚记录中O是指看待

我要回帖

更多关于 以问题为中心的记录中O是指 的文章

 

随机推荐