> 文章列表 > Spring MVC的功能

Spring MVC的功能

Spring MVC的功能

1. 连接功能

1.1几种注解

@RequestMapping最常用的注解之一,作用是用来路由注册(注册接口的路由映射),即可修饰类也能修饰方法,默认情况下的RequestMapping即可接收Get请求也可以接收Post请求。也可以通过设置method来限制,可以观看源码学习了解。

//    @RequestMapping(value = "hi",method = RequestMethod.POST)@RequestMapping("hi")  //SpringBoot中的路由都是直通到各个方法的    //post和get请求都可以通过这个获取public String sayHi(){return "hi Spring Boot!";}

Spring MVC的功能
Spring MVC的功能
也可以通过@GetMapping,@PostMapping来限制请求。
连接除了路由之外,还需要在Spring启动时将该类加载,需要用到@Controller,由于MVC的历史原因view,返回的数据是一个页面,而我们只需要数据,所以还需要@ResponseBody注解,它表示返回非页面数据。这两个注解的功能被@RestController同时拥有。

2.获取参数

可以获取url,form表单,ajax等中传的参数,注意,对于基本类型要使用它包装类,因为使用包装类才会在用户忘记传你要获取的参数时你的程序不会报错
Spring MVC的功能
获取的参数也可以是一个对象,对象中的属性的key要和用户设置的值相同,顺序无所谓
Spring MVC的功能Spring MVC的功能
Spring MVC的功能
@RequestParam注解,作用参数的重命名,对于前端传过来的参数可以重新设置名称使用
Spring MVC的功能
@RequestBody注解,获取body中的对象,比如json传的对象
Spring MVC的功能
Spring MVC的功能
@RequestHeader注解,获取header头

Spring MVC的功能
@CookieValue注解,根据你所给你Cookie获取Cookie的值
Spring MVC的功能
spring mvc和servlet设置Session类似
Spring MVC的功能
servlet获取Session
Spring MVC的功能
@SessionAtrribute,获取session
Spring MVC的功能

3.返回数据

3.1返回静态页面
前面我们知道,springmvc返回的就是一个页面,而我们要获取的是数据。现在不加Responsebody注解就能获取到页面了。

Spring MVC的功能
Spring MVC的功能
3.2返回text/html,加上Responsebody
Spring MVC的功能
Spring MVC的功能
3.3返回JSON对象
Spring MVC的功能
Spring MVC的功能
3.4请求重定向和请求转发的区别

  1. 请求重定向是将请求重新定向到资源,请求转发就是服务器内部转发
  2. 请求重定向地址发送变化,请求转发地址不发生变化
  3. 请求重定向与直接访问新地址效果⼀样,不存在原来的外部资源不能访问;请求转发服务器端转发
    有可能造成原外部资源不能访问。