zoukankan      html  css  js  c++  java
  • [转]spring 注入静态变量

    原文: http://www.cnblogs.com/xing901022/p/4168124.html

    今天碰到一个问题,我的一个工具类提供了几种静态方法,静态方法需要另外一个类的实例提供处理,因此就写出了这样的代码:

    复制代码
     1 Class Util{
     2   private static XXX xxx;
     3   xxx = BeanUtil.getBean("xxx");
     4   public static void method1(){
     5      xxx.func1();  
     6   }
     7   public static void method2(){
     8      xxx.func2();
     9   }      
    10 }
    复制代码

      这里是使用的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();
        }      
    }
    复制代码

      在xml中正常配置注入就可以了。

    <bean value="test" class="x.x.x.Util">
        <property value="xxx" ref="xxx"/>
    </bean>

      这里要注意,自动生成的getter和setter方法,会带有static的限定符,需要去掉,才可以。

  • 相关阅读:
    stm32ADC+DMA串口发送实验
    凑算式
    全排列
    字符串相同
    判断值相同
    插入加号求最小值
    动态规划递归—最小子段和
    动态规划-最小子段和
    进程的描述和进程的创建
    系统调用下
  • 原文地址:https://www.cnblogs.com/goyier/p/4809340.html
Copyright © 2011-2022 走看看