SpringMVC的学习笔记

一、SpringMVC的工作流程

1.用户发送请求到前端控制器DispatcherServlet

2.DispatcherServlet收到请求,并调用处理器映射器HandlerMappering

3.处理器映射器找到具体的处理器生成处理器对象和处理器拦截器,并返回给DispatcherServlet

4.控制器调用处理器设配器HandlerAdapter

5.处理器适配器根据处理器拦截器找到具体的处理器(后端控制器Controller)

6.Handler(Controller)调用完业务层方法返回ModelView给Adapter

7.Adapter又将ModelView返回给前端控制器

8.前端控制器得到modelAndView又将其传给视图解析器ViewResolver

9.视图解析器得到ModelAndView返回解析出的视图View

10.前端控制器根据View请求视图渲染,得到jstl渲染后的视图

11.最后将结果响应给用户


1.关于Spring MVC的核心控制器DispatcherServlet的作用,以下说法错误的是( )

A.它负责接收HTTP请求

B.加载配置文件

C.实现业务操作

D.初始化上下应用对象ApplicationContext

SpringMVC是Spring中的模块,它实现了mvc设计模式,首先用户发起请求,请求到达SpringMVC的前端控制器(DispatcherServlet),前端控制器根据用户的url请求处理器映射器查找匹配该url的handle,并返回一个执行链,前端控制器再请求处理器适配器调用相应的handle进行处理并返回给前端控制器一个modelAndView,前端控制器再请求视图解析器对返回的逻辑视图进行解析,最后前端控制器将返回的视图进行渲染,并把数据装入到request域,返回给用户。

DispatcherServlet作为SpringMVC的前端控制器,负责接收用户的请求,并根据用户的请求返回相应的视图给用户。实现业务在service层,所以c答案错误。

正确答案:C


2017-12-08 22:45:40

2.下面有关spring的依赖注入,说法错误的是()

A.依赖注入通常有如下两种:设值注入和构造注入:

B.构造注入可以在构造器中决定依赖关系的注入顺序,优先依赖的优先注入

C.当设值注入与构造注入同时存在时,先执行构造注入,再执行设值注入

D.设值注入是指IoC容器使用属性的setter方法来注入被依赖的实例。这种注入方式比较简单、直观

使用构造函数依赖注入时,Spring保证一个对象所有依赖的对象先实例化后,才实例化这个对象。使用set方法依赖注入时,Spring首先实例化对象,然后才实例化所有依赖的对象。

当设值注入与构造注入同时存在时,先执行设值注入,再执行构造注入。


3.将元数据配置到Spring容器,下面哪个方法是不正确的()

A.通过编组与解组对象

B.注解基础配置

C.Java基础配置

D.XML基础配置

有三种方式向Spring 容器提供元数据:1,XML配置文件;2,基于注解配置;3,基于Java的配置,死概念记住即可。

正确答案:A


4.下面哪个不是Spring 的注解()

A.@Aspect

B.@Service

C.@Component

D.@Controller

E.@View

正确答案:E

考察对spring的熟悉程度,除E选项之外都是较常用注解。


5.下面有关SPRING的事务传播特性,说法错误的是()

A.PROPAGATION_SUPPORTS:支持当前事务,如果当前没有事务,就以非事务方式执行

B.PROPAGATION_REQUIRED:支持当前事务,如果当前没有事务,就抛出异常

C.PROPAGATION_REQUIRES_NEW:新建事务,如果当前存在事务,把当前事务挂起

D.PROPAGATION_NESTED:支持当前事务,新增Savepoint点,与当前事务同步提交或回滚

正确答案:B

事务的传播属性介绍:

PROPAGATION_REQUIRED --支持当前事务,如果当前没有事务,就新建一个事务。这是最常见的选择。

PROPAGATION_SUPPORTS --支持当前事务,如果当前没有事务,就以非事务方式执行。

PROPAGATION_MANDATORY--支持当前事务,如果当前没有事务,就抛出异常。

PROPAGATION_REQUIRES_NEW --新建事务,如果当前存在事务,把当前事务挂起。

PROPAGATION_NOT_SUPPORTED --以非事务方式执行操作,如果当前存在事务,就把当前事务挂起。

PROPAGATION_NEVER --以非事务方式执行,如果当前存在事务,则抛出异常。


6.下列关于Spring特性中IoC描述错误的是()

A.IoC就是指程序之间的关系由程序代码直接操控

B.所谓“控制反转”是指控制权由应用代码转到外部容器,即控制权的转移

C.IoC将控制创建的职责搬进了框架中,从应用代码脱离开来

D.使用Spring的IoC容器时只需指出组件需要的对象,在运行时Spring的IoC容器会根据XML配置数据提供给它

IOC,即控制反转(Inversion of Control,英文缩写为IoC),是一个重要的面向对象编程的法则来削减计算机程序的耦合问题,也是轻量级的Spring框架的核心。 控制反转一般分为两种类型,依赖注入(Dependency Injection,简称DI)和依赖查找(Dependency Lookup)。



:D 一言句子获取中...