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
        }
    }
  • 相关阅读:
    CodeForces 697B Barnicle 模拟
    15.三数之和
    167.两数之和
    209.长度最小子数组-sliding window
    COMP9313 Week9a-0
    树总纲(To be continued)
    COMP9517 Week8
    COMP9313 week8b Pipeline
    94. 二叉树的中序遍历
    COMP9313 Week8 Classification and PySpark MLlib
  • 原文地址:https://www.cnblogs.com/duanhm234/p/7903884.html
Copyright © 2011-2022 走看看