• spring--Ioc静态成员变量注入


    注入静态成员变量:

    方式一:类定义上添加@Component注解, set方法上添加@Autowired注解

    @Component
    public class CacheExtensionsHelper {
        private static ICacheManager cacheManager;
    
        @Autowired
       public void setCacheManager(ICacheManager cacheManager) { CacheExtensionsHelper.cacheManager = cacheManager; } }

    注意:

    1. 类上面要添加注解@Component, 告诉spring这个类需要扫描
    2. set方法上添加@Autowired注解, 告诉spring自动注入
    3. set方法不要添加static关键字,否则自动注入失败

    方式二:注解@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
        }
    }

    @PostConstruct 注解的方法在加载类的构造函数之后执行,也就是在加载了构造函数之后,执行init方法;

    (@PreDestroy 注解定义容器销毁之前的所做的操作)这种方式和在xml中配置 init-method和 destory-method方法差不多,定义spring 容器在初始化bean 和容器销毁之前的所做的操作;

  • 相关阅读:
    Java基础06 组合
    纸上谈兵: 树, 二叉树, 二叉搜索树
    Java基础05 实施接口
    纸上谈兵: 队列 (queue)
    纸上谈兵: 数学归纳法, 递归, 栈
    Java基础01 从HelloWorld到面向对象
    纸上谈兵: 表 (list)
    Java基础02 方法与数据成员
    纸上谈兵: 排序算法简介及其C实现
    纸上谈兵: 栈 (stack)
  • 原文地址:https://www.cnblogs.com/jvStarBlog/p/12174525.html
Copyright © 2020-2023  润新知