文档章节

spring给静态变量使用@Autowired注入

太黑_thj
 太黑_thj
发布于 2018/09/15 02:20
字数 247
阅读 18
收藏 0
@Component
public class AA {

	private static Object variable;



	@Autowired
	public AA(Object variable) {
		AA.variable = variable;
	}
	
}

原理解答:在spring进行组建注册的时候会进行初始化,初始化后赋值到变量,所以还有一个遗留问题,就是不能在构造器内调用静态变量

还有一种方法

就是在初始化完成后再启动一个方法为其赋值(本人没试过,不过感觉可行就记下来了)不过此方法会浪费一点栈空间就是了,因为初始化后此实例就一直存在了,那么它的引用也会一直存在,如果不是那种对代码要求到极致的项目可用试试用这种

@Component
public class Boo {

    private static Foo foo;
    @Autowired
    private Foo tFoo;

    @PostConstruct
    public void init() {
        Boo.foo = tFoo;
    }

    public static void randomMethod() {
         foo.doStuff();
    }
}

 

© 著作权归作者所有

共有 人打赏支持
太黑_thj
粉丝 14
博文 120
码字总数 62946
作品 0
福州
程序员
私信 提问
Spring不支持依赖注入static静态变量

在springframework里,我们不能@Autowired一个静态变量,使之成为一个spring bean,例如下面这样: @Autowiredprivate static YourClass yourClass; 可以试一下,yourClass在这种状态下不能够被依...

gaolu
2014/07/31
0
2
Spring @autowired注解

1、在接口实现类中,使用到@Autowired 注解,下面是该注解使用的类 2、Spring@Autowired注解与自动装配 @Autowired顾名思义,就是自动装配,其作用是为了消除代码Java代码里面的getter/sett...

lar555
2018/04/26
0
0
@Autowired注解和静态方法

一、业务场景 spring框架应用中有些静态方法需要依赖被容器管理的类,就像这样: @Componentpublic class Test { } 这样一定会报java.lang.NullPointerException: null异常。 二、原理剖析 ...

谢思华
2018/08/03
0
0
使用Spring2.5的Autowired实现注释型的IOC

使用Spring2.5的新特性——Autowired可以实现快速的自动注入,而无需在xml文档里面添加bean的声明,大大减少了xml文档的维护。(偶喜欢这个功能,因为偶对xml不感冒)。 以下是一个例子: 先...

沉默的子明
2014/05/14
0
0
详解Java的Spring框架中的注解的用法

使用Spring注解来注入属性 1.1. 使用注解以前我们是怎样注入属性的 类的实现: 配置文件: 1.2. 引入@Autowired注解(不推荐使用,建议使用@Resource) 类的实现(对成员变量进行标注) 或者...

Airship
2018/04/22
0
0

没有更多内容

加载失败,请刷新页面

加载更多

漏洞防御与修复工作

漏洞管理工作是企业安全建设必不可少的一环,在风险管理工作中,漏洞管理能够防患于未然,企业对漏洞管理有着广泛的基础建设和实践经验。但随着攻防技术的发展,传统漏洞管理的安全技术和管理...

linuxprobe16
41分钟前
1
0
MicroPython技术及应用前景

1 Micropython技术是什么? MicroPython极精简高效的实现了Python3语言。它包含Python标准库的一小部分,能在单片机和受限环境中运行。 1.1 MicroPython发展 由剑桥大学的理论物理学家乔治....

bodasisiter
47分钟前
2
0
跟我学Spring Cloud(Finchley版)-13-通用方式使用Hystrix

本节详细讲解使用Hystrix的通用方式。 简介 Hystrix是由Netflix开源的一个延迟和容错库,用于隔离访问远程系统、服务或者第三方库,防止级联失败,从而提升系统的可用性与容错性。Hystrix主要...

周立_ITMuch
55分钟前
1
0
🛠️Hanjst/汉吉斯特更新加JavaScript运行时优化等

这是 Hanjst/汉吉斯特 发布以来的首个主要升级更新版本。这次的主要升级更新的内容包括移除HTML Comments注释行, 优化在 Hanjst include模板文件时的JavaScript运行时环境。 Hanjst 在设计和...

wadelau
今天
2
0
OSChina 周六乱弹 —— 舔狗是没有好下场的

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @我没有抓狂 :#今天听什么# #今天听这个# 分享 Nirvana 的歌曲《Smells Like Teen Spi...》 《Smells Like Teen Spi...》- Nirvana 手机党少...

小小编辑
今天
556
14

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部