目录
什么是SpringMVC,作用是什么
SpringMVC是一种基于java的实现了web mvc设计模式的请求驱动型轻量级框架,用于替代servlet(响应请求,处理请求,获取表单参数,表单校验)
为什么要用SpringMVC
简化开发,降低开发难度,提高开发效率,使获取表单参数,相应请求等变得更加简单
SpringMVC工作原理
SpringMVC常用注解及作用
@Controller
标识这个类是一个控制器
@RequestMapping
给控制器方法绑定一个url
@ResponseBody
将java对象转换成json,并发送给客户端
@RequestBody
将客户端请求过来的json转换成java
@RequestParam
当表单参数与方法形参名字不一致时,做一个名字映射
@PathVarible
用于获取url中的参数,比如xxx/1中的1的值
Rest风格的新注解
@RestController
@Controller+@ResponseBody
@GetMapping@DeleteMapping@PostMapping
@PutMaping
其他注解
@SessionAttribute
声明将什么模型数据存入session中
@CookieValue
获取cookie值
@HeaderValue
获取请求头中的值
SpringMVC与Strust2的区别
1、入口不同,SpringMVC的入口是servlet,strust2是filter
2、生命周期不同,SpringMVC Contrpller是单例,不能使用成员变量获取参数,所以效率高
Strust2是多例,所以效率低
如何在SpringMVC实现RESTful服务
1、导入jackson2包
2、开启注解驱动:<mvc:annotation-driven/>
3、json交互=@RequestBody@ResponseBody
SpringMVC如何返回json数据
处理方法前加上@ResponseBody注解或在控制器上使用@RestController
什么是拦截器,有什么用,SpringMVC如何定义拦截器
概念作用:类似于filter的一个对象,用于预处理以及后处理控制器
定义:新建class实现HandlerInterceptor重写三个方法preHandler postHandler afterCompletion springmvc.xml中配置拦截器