spring工作机制
1.spring mvc将所有的请求都提交给DispatcherServlet,它会委托应用系统的其他模块负责对请求进行真正的处理工作。
2.DispatcherServlet查询一个或多个HandlerMapping,找到处理请求的Controller.
3.DispatcherServlet将请求提交到目标Controller
4.Controller进行业务逻辑处理后,会返回一个ModelAndView
5.Dispathcher查询一个或多个ViewResolver视图解析器,找到ModelAndView对象指定的视图对象
6.视图对象负责渲染返回给客户端。
为什么要用
AOP 让开发人员可以创建非行为性的关注点,称为横切关注点,并将它们插入到应用程序代码中。使用 AOP 后,公共服务 (比如日志、持久性、事务等)就可以分解成方面并应用到域对象上,同时不会增加域对象的对象模型的复杂性。
IOC 允许创建一个可以构造对象的应用环境,然后向这些对象传递它们的协作对象。正如单词 倒置 所表明的,IOC 就像反 过来的 JNDI。没有使用一堆抽象工厂、服务定位器、单元素(singleton)和直接构造(straight construction),每一个对象都是用其协作对象构造的。因此是由容器管理协作对象(collaborator)。
Spring即使一个AOP框架,也是一IOC容器。 Spring 最好的地方是它有助于您替换对象。有了 Spring,只要用 JavaBean 属性和配置文件加入依赖性(协作对象)。然后可以很容易地在需要时替换具有类似接口的协作对象。
分享到:
相关推荐
标题 "spring的几个jar包" 暗示了我们讨论的核心是Spring框架,以及与之相关的几个关键库。描述中提到的"spring.jar"、"log4j.jar"和"commons-dbcp.jar"等五个jar文件是Java应用程序开发中常用的组件,它们在Spring...
Spring框架有几个关键的优点,包括: 1. 轻量级:Spring框架本身非常轻巧,核心模块的大小大约为2MB,便于整合和使用。 2. 控制反转(IOC):Spring通过控制反转的技术实现了松耦合,这是指对象间的依赖关系由容器...
本篇文章将详细讲解标题中提到的几个关键的jar包,包括它们的功能、用途以及如何在项目中整合使用。 首先,我们来关注Spring框架的核心jar包。Spring框架的核心组件是`spring-core.jar`,它提供了基础的IoC...
这个"JavaSpring几个练习案例.rar"压缩包很可能是包含了一系列的示例项目,旨在帮助学习者深入理解Spring框架的核心概念和特性。让我们逐一探讨这些实践案例可能涵盖的知识点。 1. **Spring IoC (Inversion of ...
这里提到的几个jar包是Spring框架的基础组件,对于初学者来说,理解它们的作用至关重要。 1. spring-core-5.0.2.RELEASE.jar:这是Spring框架的核心模块,包含了IoC(Inversion of Control,控制反转)和DI...
当在IDEA中整合Spring Boot和Spring Cloud时,可能会遇到"unknown"问题,这可能有以下几个原因: 1. **依赖管理问题**:确保你的`pom.xml`文件中包含了正确的Spring Cloud和Spring Boot版本。不同版本之间可能存在...
Spring的四个基础jar包,分别对应Spring核心容器的四个模块。 spring-core-4.3.6.RELEASE.jar spring-beans-4.3.6.RELEASE.jar spring-context-4.3.6.RELEASE.jar spring-expression-4.3.6.RELEASE.jar
是关于Spring的四个基础包+依赖包(下载后解压使用) 包括内容: 1.spring-beans-5.1.9.RELEASE.jar 2.spring-context-5.1.9.RELEASE.jar 3.spring-core-5.1.9.RELEASE.jar 4.spring-expression-5.1.9.RELEASE.jar 5...
使用spring batch需要在数据库建立的几个表——建表语句(BATCH_JOB_INSTANCE、BATCH_JOB_EXECUTION、BATCH_JOB_EXECUTION_CONTEXT、`BATCH_JOB_EXECUTION_PARAMS` 、`BATCH_JOB_EXECUTION_SEQ` 、`BATCH_JOB_SEQ` ...
在提供的四个jar包中,每个都有其特定的功能和作用,对于理解Spring AOP的工作原理至关重要。 1. **aspectj-1.7.3.jar**:这是AspectJ库的一部分,AspectJ是一个全面的面向切面编程(AOP)的Java语言扩展。在Spring ...
在Spring中,这通常涉及到以下几个关键知识点: 1. **Spring MVC**:Spring MVC是Spring框架的一部分,用于构建Web应用程序。在这个项目中,我们可能会看到Controller类,它们处理HTTP请求,并将数据传递给视图层...
这个项目通常由以下几部分组成: 1. **Spring Boot Admin Server**:这是核心服务,提供Web界面和API来展示监控信息。它依赖于`spring-boot-starter-admin-server`模块,并且需要配置Eureka或Consul等服务发现组件...
在JavaWeb开发中,Spring框架是一个至关重要的组件,它提供了丰富的功能来简化应用程序的构建,尤其是在服务层和表现层的整合上。Spring 4.2.0是该框架的一个稳定版本,它支持Java Development Kit(JDK)1.8,这...
一个典型的 Spring MVC 项目结构包括以下几个部分: - `src/main/java`:存放源代码,通常分为`com.example.demo.controller`(控制器层)、`com.example.demo.service`(服务层)、`com.example.demo.model`...
在整合Spring Security 2.5与Spring 2.5时,需要注意以下几点: 1. **依赖管理**:确保Spring Security的jar包与Spring Framework的版本兼容。在项目中正确引入这些jar包,通常通过Maven或Gradle的依赖管理来实现。...
Spring 的依赖注入有几种方式? Spring 的依赖注入有三种方式:接口注入、Setter 方法注入、构造方法注入。 在单例对象中使用多例对象,应该注意什么? 在单例对象中使用多例对象时,需要注意对象的生命周期和...
这个版本的发布解决了2.0.4版本中的已知问题,并可能包含一些性能优化和新功能。它包括了访问控制、认证和授权机制,如表达式式访问控制(Expression-based Access Control)和基于角色的访问控制(Role-Based ...
在"spring整合rabbitmq需要的jar包(spring版本4.2.0)"中,提到了几个核心的库文件,它们分别是: 1. **spring-rabbit-1.5.1.RELEASE.jar**:这是Spring对RabbitMQ的官方支持模块,它提供了与RabbitMQ集成的API和...
以下将详细阐述Spring对DAO支持的几种配置方式: 1. **JDBC DAO支持:** Spring通过`JdbcTemplate`和`SimpleJdbcInsert`等类提供了对JDBC的抽象,减少了直接使用JDBC代码的繁琐性。`JdbcTemplate`提供了一组模板...
视频中可能涵盖以下几个知识点: 1. 微服务架构的概念与优势:微服务架构将单一应用程序拆分为一组小型服务,每个服务运行在其自身的进程中,服务之间通过轻量级方式进行通信(通常是HTTP RESTful API)。 2. ...