SpringMVC技术

SpringMVC面经



一、SpringMVC工作原理

步骤描述
Step1客户端(浏览器)发送请求,直接请求到DispatcherServlet。
DispatcherServlet是SpringMVC的核心组件,是请求的入口,负责协调各个组件的工作。
Step2DispatcherServlet根据请求信息调用HandlerMapping(适配器),解析请求对应的Handle(也就是Controller处理器)
HandleMapping是请求的处理器适配器,负责为请求找到合适的HandlerExecutionChain处理执行链,包括处理器(Handler)与拦截器等。
Step3解析到Controller处理器后,开始到Service层执行具体业务逻辑,在Dao层对相应的数据进行操作。
Step4处理器Controller完成业务逻辑后,会返回一个ModelAndView对象。其中Model是返回的数据对象,View是返回的逻辑视图。
Step5接着ViewResolver(视图解析器)就会根据逻辑视图,根据视图名等信息,获得最终实际的View对象。
Step6最后DispatcherServlet将Model对象中的数据传递给View视图进行视图渲染,把渲染后的View视图返回给请求者(浏览器),完成整个SpringMVC的工作流程。

二、SpringMVC的核心注解

注解作用
@Controller标记一个类作为SpringMVC的控制器。SpringMVC会扫描标记了该注解的类,然后扫描这个类下面带有@RequestMapping注解的方法,根据注解信息为该方法生成一个处理器对象。
@RestController@RestController = @ResponseBody + @Controller
@RequestMapping用于配置处理器的HTTP请求(post/get),URL等信息,可以作用在类和方法上,这样MVC就会对该方法生成一个处理器对象。
@ResponseBody@Controller类下的返回对象都以JSON的形式返回。
@RequestParam从Body中获取参数。
@PathVariable从URL中获取参数。

三、SpringMVC拦截器

实现拦截器必须实现HandlerInterceptor,项目中的登录验证拦截就是在这里实现的。该接口中定义了三个方法:

方法作用
preHandle目标方法(Controller)执行之前,执行该方法
postHandle目标方法(Controller)执行之后,DispatcherServlet进行视图的渲染之前执行
afterCompletion在完成整个后端请求后执行

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值