zoukankan      html  css  js  c++  java
  • Spring静态属性的注入

    应用场景:工具类的静态方法使用了service注入

    1. xml的init-method方式

    <bean id="SecurityUtil" class="com.*.*.util.SecurityUtil" init-method="init">
            <property name="propertyConfigurerTmp" ref="propertyConfigurer"/>
    </bean>
        
    <bean id="propertyConfigurer"class="com.*.*.service.PropertyConfigurer"/>
    public class SecurityLogic {
        private PropertyConfigurer propertyConfigurerTmp;
        
    private static PropertyConfigurer propertyConfigurer;
    
        public void init() {
            SecurityLogic.propertyConfigurer = propertyConfigurerTmp;
        }
    
        public static void encrypt(String param) throws Exception {
            String encryptType=propertyConfigurer.getProperty("encryptType");
            //todo
        }
    }

    2. 注解@PostConstruct方式

    @Component
    public class SecurityLogic {
    
        @Autowired
        private PropertyConfigurer propertyConfigurerTmp;
        
        private static PropertyConfigurer propertyConfigurer;
    
        @PostConstruct
        public void init() {
            SecurityLogic.propertyConfigurer = propertyConfigurerTmp;
        }
    
        public static void encrypt(String param) throws Exception {
            String encryptType=propertyConfigurer.getProperty("encryptType");
            //todo
        }
    }

    3. set方法上面添加注解方式

    @Component
    public class SecurityLogic {
    
        private static PropertyConfigurer propertyConfigurer;
    
        @Autowired
        public void setPropertyConfigurer(PropertyConfigurer propertyConfigurer) {
            SecurityLogic.propertyConfigurer = propertyConfigurer;
        }
    
        public static void encrypt(String param) throws Exception {
            String encryptType=propertyConfigurer.getProperty("encryptType");
            //todo
        }
    }
  • 相关阅读:
    Linux 文件查找
    Linux-Varnish缓存
    Linux-部署Hadoop环境
    Linux-部署MFS分布式文件系统
    Linux-部署Jumpserver跳板机
    Linux-部署Heartbeat高可用
    Linux-Mysql5.7之字段约束,索引,外键
    Linux-Mysql常用命令(下)
    Linux-Mysql常用命令(上)
    Python-常用模块详解
  • 原文地址:https://www.cnblogs.com/duanhm234/p/7903884.html
Copyright © 2011-2022 走看看