美文网首页
Spring上下文( ApplicationContext)

Spring上下文( ApplicationContext)

作者: return997 | 来源:发表于2019-04-25 20:23 被阅读0次

      如果说BeanFactory是Spring的心脏,那么ApplicationContext就是完整的身躯了。ApplicationContext由BeanFactory派生而来,提供了更多面向实际应用的功能。

    实现ApplicationContextAware接口

    package com.permission.common;
    
    import org.springframework.beans.BeansException;
    import org.springframework.context.ApplicationContext;
    import org.springframework.context.ApplicationContextAware;
    import org.springframework.stereotype.Component;
    
    /**
     * @version:1.0.0
     * @author: lironghong
     * @date: 2019/4/21 21:04
     * @description: ApplicationContext获取上下文
     */
    @Component("ApplicationContextHelper")
    public class ApplicationContextHelper implements ApplicationContextAware {
        private static ApplicationContext context;
    
        @Override
        public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
            context = applicationContext;
        }
    
        public static <T> T popBean(Class<T> tClass) {
            if (context == null) {
                return null;
            }
            return context.getBean(tClass);
        }
    
        public static <T> T popBean(String name, Class<T> tClass) {
            if (context == null) {
                return null;
            }
            return context.getBean(name,tClass);
        }
    }
    
    

    配置被spring管理(spring-servlet.xml)

    <bean class="com.permission.common.ApplicationContextHelper" lazy-init="false"></bean>
    

    测试

        @RequestMapping("/validator.json")
        @ResponseBody
        public JsonData validator(TestVo vo) throws ParamException {
            log.info("validator");
            SysAclMapper sysAclMapper = ApplicationContextHelper.popBean(SysAclMapper.class);
            SysAcl sysAcl = sysAclMapper.selectByPrimaryKey(1);
            log.info(JsonUtils.objtoString(sysAcl)+"哈哈");
            BeanValidator.check(vo);
            return JsonData.success("test validator");
    
        }
    

    相关文章

      网友评论

          本文标题:Spring上下文( ApplicationContext)

          本文链接:https://www.haomeiwen.com/subject/wfqsgqtx.html