摘要:
1.HandlerMapping的配置和设计 在初始化完成时,所有的handlerMapping都已经被加载,handlerMapping存储着HTTP请求对应的映射数据,每一个handlerMapping持有从URL请求到Controller的映射。 这里以SimpleUrlHandlerMapp 阅读全文
摘要:
在使用springmvc框架,会在web.xml文件配置一个DispatcherServlet,这正是web容器开始初始化,同时会在建立自己的上下文来持有SpringMVC的bean对象。 先从DispatcherServlet入手,从名字来看,它是一个Servlet。它的定义如下: 它是继承Fra 阅读全文
摘要:
Web容器启动过程,主要讲解Servlet和Spring容器结合的内容。 流程图如下: Web容器启动的Root Context是有ContextLoaderListener,一般使用spring,都会在web.xml中配置这个监听器。 下面就从这里入手,看看它是如何启动spring容器。 这个类继 阅读全文
摘要:
在spring中与通知相关的类有: 以Advice结尾的通知接口 MethodBeforeAdvice AfterReturningAdvice ThrowsAdvice 以Interceptor结尾的拦截器 MethodBeforeAdviceInterceptor AfterReturningA 阅读全文
摘要:
IoC容器提供了自动依赖装配的方式,为应用IoC容器提供很大的方便。在自动配置中,不需要显式的去指定Bean属性,只需要配置autowiring属性,IoC容器会根据这个属性配置,使用反射的方式查找属性的类型或者名字,然后基于类型或名字来自动匹配IoC中的Bean,从而完成自动注入的工作。 自动依赖 阅读全文
摘要:
1.实现了BeanPostProcessor接口,可先看这个接口 ApplicationContext可以在自动检测BeanPostProcessor bean,在它创建完后可以创建任何的bean。 简单实现自己的一个Processor spring-beans.xml 测试类 运行结果: MyBe 阅读全文
摘要:
在spring2.5版本提供了注解的依赖注入功能,可以减少对xml配置。 主要使用的是 测试类 方式一为加载包下带注解的类。方式二是指定某些类。 运行结果: class org.lzyer.test.AnnotationDemoclass org.lzyer.test.AnnotationDemo2 阅读全文
摘要:
Spring事件的组件 主要是3个组件: 1.ApplicationEvent 事件 2.ApplicationListener 监听器,对事件进行监听 3.ApplicationEventMulticaster 事件广播器,将publish的事件广播给所有的监听器。 事件 ContextRefre 阅读全文
摘要:
AOP称为面向切面编程,在程序开发中主要用来解决一些系统层面上的问题,比如日志,事务,权限等等,不需要去修改业务相关的代码。 对于这部分内容,同样采用一个简单的例子和源码来说明。 接口 实现类 日志通知 测试类 运行结果: before logging save order after loggin 阅读全文
摘要:
spring加载配置文件,AbstractApplicationContext类中的refresh方法起着重要的作用。 实例化bean对象,主要的是在 方法。大致的流程图(下部分): (点击查看大图) 下面分析实例化bean对象的源码分析 加载bean对象: 在AbstractBeanFactory 阅读全文