利用 Spring Boot 来制作 Web 应用,就必定会涉及到前端与后台之间互相传递参数。下面演示 Controller 如何接收以 GET 方式传递过来的参数。
一、参数直接在路径中
(1)假设请求地址是如下这种 RESTful 风格,hangge 这个参数值直接放在路径里面:
http://localhost:8080/hello/tom
(2)Controller 可以这么获取该参数:
参数前一定要加@PathVariable(“name”),不然会是null。是路径的请求。
package com.example.demo;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.GetMapping;
@RestController
public class HelloController {
@GetMapping("/hello/{name}")
public String hello(@PathVariable("name") String name) {
//一定要加@PathVariable("name"),不然会是null
return "获取到的name是:" + name;
}
}
(3)结果:
二、参数跟在 ? 号后面
1,获取参数的基本方法
(1)假设请求地址是如下这种传统方式,参数跟在问号后面:
http://localhost:8080/hello?name=tom
(2)Controller 可以这么获取该参数:
参数前的requestParam(“name”) 可以省略,因为这个用的是request的请求
package com.example.demo;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.GetMapping;
@RestController
public class HelloController {
@GetMapping("/hello")
public String hello(@RequestParam("name") String name) {
return "获取到的name是:" + name