本文共 1307 字,大约阅读时间需要 4 分钟。
Spring 的概述:Spring是一个开源的轻量级的Java框架,Spring 的核心是控制反转(IoC)和向切面(AOP)EE 开发分成三层结构:* WEB 层:Spring MVC.* 业务层:Bean 管理:(IOC)* 持久层:Spring 的 JDBC 模板.ORM 模板用于整合其他的持久层框架.为什么使用 Spring:方便解耦,简化开发Spring 是一个工厂,可以将所有对象创建和依赖关系维护,交给 Spring 管理AOP 编程的支持Spring 提供面向切面编程,可以方便的实现对程序进行权限拦截、运行监控等功能声明式事务的支持只需要通过配置就可以完成对事务的管理,而无需手动编程方便程序的测试Spring 对 Junit4 支持,可以通过注解方便的测试 Spring 程序方便集成各种优秀框架Spring 不排斥各种优秀的开源框架,内部提供了对各种框架的支持(如:Struts、Hibernate、MyBatis、Quartz 等)降低 JavaEE API 的使用难度Spring 对 JavaEE 开发中非常难用的一些 API(JDBC、JavaMail、远程调用等),都提供了封装,使这些 API 应用难度大大降低
执行流程(springmvc)1. 用户向服务器发送请求,请求被Spring 前端控制Servelt DispatcherServlet捕获2. DispatcherServlet对请求URL进行解析,得到请求资源标识符(URI)。然后根据该URI调用HandlerMapping获得该Handler配置的所有相关的对象(包括Handler对象以及Handler对象对应的拦截器),最后以HandlerExecutionChain对象的形式返回3. DispatcherServlet 根据获得的Handler,选择一个合适的HandlerAdapter。(附注:如果成功获得HandlerAdapter后,此时将开始执行拦截器的preHandler(...)方法)4. 提取Request中的模型数据,填充Handler入参,开始执行Handler(Controller)。 在填充Handler的入参过程中,根据你的配置,Spring将帮你做一些额外的工作:HttpMessageConveter: 将请求消息(如Json、xml等数据)转换成一个对象将对象转换为指定的响应信息数据转换:对请求消息进行数据转换。如String转换成Integer、Double等数据验证: 验证数据的有效性(长度、格式等),验证结果存储到BindingResult或Error中5. Handler执行完成后,向DispatcherServlet 返回一个ModelAndView对象;6. 根据返回的ModelAndView,选择一个适合的ViewResolver(必须是已经注册到Spring容器中的ViewResolver)返回给DispatcherServlet ;7. ViewResolver 结合Model和View,来渲染视图8. 将渲染结果返回给客户端。
转载地址:http://liirn.baihongyu.com/