提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
简谈Spring
前言
Spring作为Java的轻量级框架,是为了解决企业应用程序开发复杂性而创建的,其采用分层架构,也是其他重要框架的基础。
一、Spring框架
Spring框架核心是IOC(Inversion Of Controll,控制反转)和AOP(面向切面编程)。
**IOC(控制反转)或DI(依赖注入)**是一种设计思想,Spring注入有三种:1.set注入。2.接口注入。3.构造方法注入。
AOP(面向切面编程)进行实现接口+实现类:spring采用jdk的动态代理Proxy。
二、Spring的核心组件
Spring的核心组件有beans,context。beans包主要是实例化描述,context包主要是全局控制,功能衍生。
com.springframework.beans 包
com.springframework.context 包都是IOC容器的基础。
1.Bean包的BeanFactory是主要的类,是bean集合的工厂类,BeanFactory包含了bean的定义,以便在接收到客户端请求时将对应的bean实例化,包含了bean生命周期的控制,调用客户端的初始化方法(initialization methods)和销毁方法(destroction methods)。
2.ApllicationContext包是对BeanFactory包进行了扩展,与Spring的AOP更容易集成,处理message resource的机制,事件传播以及应用层的特别配置。
三、SpringMVC框架
SpringMVC框架是基于Spring框架的模块,是Spring框架的延伸。
MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写。这种设计把业务逻辑,数据,界面显示分离。
·SpringMVC框架的组件
DispatcherServlet:前端控制器,也叫中央控制器。作用:接受请求,响应结果,减少了组件之间的耦合度。
HandlerMapping:处理器映射器,根据URL路径映射到不同的Handler。
HandlerAdapter:处理器适配器,按照HandlerAdapter的规则去执行Handler.
Handler:执行处理器。
ViewResolver:视图解析器,把逻辑视图解析成具体视图。
View:一个接口,它的实现支持不同的视图类型。
SpringMVC框架的流程
- 用户发送请求到前端控制器DispatcherServlet。
- DispatcherServlet收到请求后,调用HandlerMapping处理器映射器,请求获取Handle。
- 处理器映射器根据请求url找到具体的处理器,生成处理器对象及处理器拦截器(如果有则生成),一并返回给DispatcherServlet。
- DispatcherServlet通过handlerAdapter处理器适配调用处理器。
- 执行处理器(handler),也叫后端控制器。
- Handler执行完后返回ModelAndView。
- HandlerAdapter将handler执行结果ModelAndView返回给DispatcherServlet。
- DispatcherServlet将ModelAndView传给ViewResolver视图解析器进行解析。
- ViewResolver解析后返回具体View。
- DispatcherServlet对View进行渲染视图。
- DispatcherServlet响应用户。