Spring 实现线程接口 Runnable 注解注入失败 @Resource annotation is not supported on static fields
来源:互联网 发布:晨曦计价软件视频教程 编辑:程序博客网 时间:2024/05/22 08:17
原因就是spring和多线程安全的问题,不让注入
解决方案有以下几种
一.变量前缀加static,生成set方法并加上@Resource,记住把set方法 static 去掉,否则会抛出 @Resource annotation is not supported on static fields
private static VerificDao verificDao;@Resourcepublic void setVerificDao(VerificDao verificDao) { CheckVoiceVerify.verificDao = verificDao;}
二.根据spring上下文环境获取bean
import org.springframework.beans.BeansException;import org.springframework.context.ApplicationContext;import org.springframework.context.ApplicationContextAware;import org.springframework.stereotype.Component;@Componentpublic class SpringContextUtil implements ApplicationContextAware { // Spring应用上下文环境 private static ApplicationContext applicationContext; /** * 实现ApplicationContextAware接口的回调方法,设置上下文环境 */ public void setApplicationContext(ApplicationContext applicationContext) throws BeansException { SpringContextUtil.applicationContext = applicationContext; } public static ApplicationContext getApplicationContext() { return applicationContext; } /** * 获取对象 这里重写了bean方法,起主要作用 */ public static Object getBean(String beanId) throws BeansException { return applicationContext.getBean(beanId); }}
三. 在启动这个线程的时候,在这个线程的构造函数中把需要注入的对象传过去
new Thread(new CheckVoiceVerify(verifyService)).start();
0 0
- Spring 实现线程接口 Runnable 注解注入失败 @Resource annotation is not supported on static fields
- 问题解决: @Resource annotation is not supported on static fields
- @Resource annotation is not supported on static fields
- Resource annotation is not supported on static fields
- java.lang.IllegalStateException: Autowired annotation is not supported on static fields
- Spring Annotation(注解) @Resource
- spring annotation注解 @Resource
- spring annotation 注入static 属性
- spring annotation 注入static 属性
- spring annotation 注入static 属性
- spring annotation注解 依赖注入
- Spring使用注解注入接口实现类
- Spring用resource注解失败
- Spring 之 编码实现 @Resource注解属性注入
- spring用注解实现注入的@resource,@autowired,@inject区别
- SSLPassPhraseDialog builtin is not supported on Win32
- spring的annotation注解之@Resource
- spring的annotation注解之@Resource
- 如何用思维导图软件做进度计划?
- java学习---简介
- Android5.0之后打开开发者选项中的不保留活动,解决方案
- 百度关键词排名浮动怎么办?
- 黑马程序员---OC学习笔记之NSDate的介绍和使用
- Spring 实现线程接口 Runnable 注解注入失败 @Resource annotation is not supported on static fields
- Android 引入工程的错误
- OFDM之信道估计
- android gif动画
- cobbler同步镜像
- C#高级篇(一)---string、delegate 、Action 、Func、Lambda、事件
- C#开发微信门户及应用(1)--开始使用微信接口
- c# 加密解密
- iOS runtime运行时机制