spring ioc
文章平均质量分 69
PazzFJ
持之以恒,不进则退.
展开
-
spring 源码分析 生命周期
bean 初始化流程:1、初始化bean2、填充属性3、处理BeanNameAware接口 bean名称方法4、处理BeanClassLoaderAware接口 类加载器方法5、处理BeanFactoryAware接口 bean工厂方法6、处理BeanPostProcessor接口 后置处理器中的 前处理方法(before) ...原创 2019-10-30 17:02:09 · 154 阅读 · 0 评论 -
spring 源码分析 应用上下文层级关系
应用层级分析:级别类型类名注释作用A1接口ApplicationContext应用上下文(环境获取、 bean容器、 消息资源、 事件发布器、 资源加载器)B1接口WebApplicationContextweb应用上下文( ServletContext 获取、 属性名称的定义{作用域, 服务上下文, 上下文参数和属性})C1接口Co...原创 2019-11-26 23:36:24 · 326 阅读 · 0 评论 -
spring 源码分析 应用上下文刷新 (AbstractApplicationContext#refresh方法)
这章我们分析 spring 核心方法, refresh() 应用刷新。 这个方法在 spring 中有着很重要的功能处理下面我们来分析:AbstractApplicationContext # refresh() 方法分析 public void refresh() throws BeansException, IllegalStateException { synchronized (t...原创 2019-11-20 23:35:04 · 214 阅读 · 0 评论 -
spring 源码分析 五种方式加载应用上下文
spring 加载应用上下文方式:一、 从Web应用下的一个或多个XML配置文件中加载应用上下文此上下文在 DispatchServlet 创建上下文时使用, 通过xml 启动时创建web上下文.ApplicationContext ac1 = new XmlWebApplicationContext();FrameworkServlet.java /** * xml启动的 w...原创 2019-11-24 23:16:35 · 232 阅读 · 0 评论 -
spring 源码分析 依赖循环 (AbstractBeanFactory)
spring中获取bean循环依赖时ApplicationContext ac = new ClassPathXmlApplicationContext(“spring-test.xml”);ac.getBean(“testA”);class A{ B b;}class B{ A a;}AbstractBeanFactory 类// 实际操作方法都是doprotect...原创 2019-02-22 23:43:29 · 230 阅读 · 0 评论 -
Spring @Import 注解
@Import注解支持导入配置类,也支持导入普通的java类,并将其声明成一个bean 就比如说有一个类未被spring ioc 容器被加载,然后在一个已经加载的类上添加@Import(class) 可以使这个引入的类被加载进来public class DemoService { public void doSomething(){ System.out.printl...原创 2018-08-27 09:45:15 · 150 阅读 · 0 评论 -
spring 源码分析 应用上下文 (AbstractRefreshableConfigApplicationContext )
类名实现接口说明DefaultResourceLoaderResourceLoader资源加载器, 根据路径获取Resource对象AbstractApplicationContextConfigurableApplicationContext发布事件, 获取上下文环境, 存放应用监听器等, 操作核心类AbstractRefreshableApplicat...原创 2019-02-26 21:57:28 · 490 阅读 · 0 评论 -
spring 源码分析 接口方法 (BeanFactory bean容器)
SimpleAliasRegistry 别名注册缓存类//别名储存(key 别名, value beanId)private final Map<String, String> aliasMap = new ConcurrentHashMap<>(16);// 注册 别名为key,原创 2019-02-25 00:34:13 · 151 阅读 · 0 评论 -
spring 源码分析 接口方法 (ApplicationContext 应用上下文)
ApplicationContext简单说下应用上下文接口的方法,String getId(); //获取idString getApplicationName(); //获取String getDisplayName(); //获取应用显示名称long getStartupDate(); //获取启动时间ApplicationContext getParent(); //...原创 2019-02-27 18:04:45 · 1064 阅读 · 0 评论 -
Spring配置中的"classpath:"与"classpath*:"的区别(转)
概念解释及使用场景:classpath是指WEB-INF文件夹下的classes目录。通常我们一般使用这种写法实在web.xml中,比如spring加载bean的上下文时,如下:<!--系统自动加载文件--><!--这里使用的是classpath*:的形式--><context-param> <param-name>contextC...转载 2019-02-18 09:40:03 · 136 阅读 · 0 评论