• [转]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的限定符,需要去掉,才可以。

  • 相关阅读:
    except与besides
    think用法
    walk用法
    complain用法
    go through用法
    herd用法
    ridiculous用法
    it is the same as用法
    let us say用法
    1002 A+B for Polynomials (25 分)(模拟)
  • 原文地址:https://www.cnblogs.com/goyier/p/4809340.html
Copyright © 2020-2023  润新知