Spring注入静态变量(转)
今天碰到一个问题,我的一个工具类提供了几种静态方法,静态方法需要另外一个类的实例提供处理,因此就写出了这样的代码:
Class Util{
  private static XXX xxx;
  xxx = BeanUtil.getBean("xxx");
  public static void method1(){
     xxx.func1();
  }
  public static void method2(){
     xxx.func2();
  }
}
这里是使用的getBean的方式,获得XXX的实例,但是别人说这个方法不好,想要注入的方式。
但是静态的XXX如何注入呢?
Class Util{
    private static XXX xxx;
    public void setXxx(XXX xxx){
        this.xxx = xxx;
    }
    public void getXxx(){
        return xxx;
    }
    public static void method1(){
        xxx.func1();
    }
    public static void method2(){
        xxx.func2();
    }
}
这里要注意,自动生成的getter和setter方法,会带有static的限定符,需要去掉
在xml中正常配置注入就可以了。
<bean value="test" class="x.x.x.Util">
<property value="xxx" ref="xxx"/>
</bean>
http://www.cnblogs.com/xing901022/p/4168124.html#commentform
Spring注入静态变量(转)的更多相关文章
- Spring注入静态变量的方法,以及CXF如何获取客户端IP
		1.如果使用@Resource注解来注入静态变量的,服务器启动就会报错的.可以新增一个set方法,同时在set方法上用@Resource注解来注入. 2.或者直接在Spring的配置文件中使用< ... 
- [转]spring 注入静态变量
		原文: http://www.cnblogs.com/xing901022/p/4168124.html 今天碰到一个问题,我的一个工具类提供了几种静态方法,静态方法需要另外一个类的实例提供处理,因此 ... 
- 【Spring开发】—— Spring注入静态变量
		今天碰到一个问题,我的一个类提供了几种静态方法,静态方法需要另外一个类的实例提供处理,因此就写出了这样的代码: Class aa{ private static XXX xxx; xxx = Bean ... 
- spring 注入静态变量
		import java.util.Iterator; import java.util.LinkedList; import javax.annotation.PostConstruct; impor ... 
- spring boot 静态变量注入配置文件
		spring 静态变量注入 spring 中不支持直接进行静态变量值的注入,我们看一下代码: @Component(value = "KafkaConfig") @Configur ... 
- SpringBoot使用@Value从yml文件取值为空--注入静态变量
		SpringBoot使用@Value从yml文件取值为空--注入静态变量 1.application.yml中配置内容如下: pcacmgr: publicCertFilePath: ... 
- spring不能注入静态变量的原因
		静态方法是属于类(class)的,普通方法才是属于实体对象(也就是New出来的对象)的,spring注入是在容器中实例化对象,所以不能使用静态方法. @Autowired private static ... 
- 解决Spring对静态变量无法注入问题(转)
		问题今天在学习的过程中想写一个连接和线程绑定的JDBCUtils工具类,但测试时发现一直报空指针异常,上网查了之后Spring并不支持对静态成员变量注入,所以光试用@Autowired肯定是不行的.可 ... 
- spring 给静态变量注入值
		一般在spring中,给static变量加上@Autowired注解的时候会报空指针异常错误. 解决: 1.通过xml配置文件配置 这个就不多说了. 2.通过注解 @Component public ... 
随机推荐
- 配置 .vimrc 解决 Vim / gVim 在中文 Windows 下的字符编码问题
			转载自:-杨博的日志 - 网易博客 Vim / gVim 在中文 Windows 下的字符编码有两个问题: 默认没有编码检测功能 如果一个文件本身采用的字符集比 GBK 大(如 UTF-8.UTF-1 ... 
- 谈谈我的iOS学习及分享
			iOS可以说是最近几年比较热门和高速发展一个系统,因此iOS开发也变得火热.越来越多的程序员都转向了iOS开发,每个人的学习方法都不同,分享下我的学习经历和见解吧.我之前学习过C++和Qt,Java也 ... 
- 关于 IE firefox Chrome下的通过用js 关闭窗口的一些问题
			首先IE是可以通过window.close()来关闭浏览器窗口的,但是在firefox和Chrome下是无效的,原因在于: ~~~ie可直接<button onclick="windo ... 
- android handler工作原理
			android handler工作原理 作用 便于在子线程中更新主UI线程中的控件 这里涉及到了UI主线程和子线程 UI主线程 它很特别.通常我们会认为UI主线程将页面绘制完成,就结束了.但是它没有. ... 
- php 用户访问菜单页面,必须登录,判断用户是否登录
			<pre name="code" class="python"># 本节课大纲: 一.空模块和空操作 1.空操作 function _empty($ ... 
- [对话CTO]当当网熊长青:兴趣是成为优秀工程师的第一因素-CSDN.NET
			Women Techmaker 北京站 [对话CTO]当当网熊长青:兴趣是成为优秀工程师的第一因素-CSDN.NET [对话CTO]当当网熊长青:兴趣是成为优秀工程师的第一因素 发表于2 ... 
- js获取控件位置
			//获取坐标位置 function getpos(e) { var t=e.offsetTop; var l=e.offsetLeft; var height=e.offsetHeight; whil ... 
- cocos2D(二)---- cocos2D文档的使用
			在使用cocos2d进行游戏开发的过程中,难免要查阅cocos2d的API文档.搞清楚怎么使用某个类或者某个方法.幸运的是,cocos2d的作者已经在源码里面加入了文档凝视,我们仅仅须要使用文档生成工 ... 
- Android:源码环境下移植第三方的apk内置到ROM(System Image)中
			1. 首先在vendor目录下新建一个the3rdapk的目录,将需要内置的apk丢进去,目录名自己随意定. 2. 在 build/target/product/common.mk最后面,在$(cal ... 
- Js基础操作
			var a="zhangsan"; document.write(a+":I love JavaScrip"); a="lisi"; doc ... 
