java技术--Controller接收参数的几种常用方式
程序员文章站
2022-03-16 08:55:01
...
1.在SpringMVC后台控制层获取参数的方式主要有两种
(1)一种是request.getParameter("name")
(2)另外一种是用注解@RequestParam直接获取
<1>@RequestParam(value="collectorId") String collectorId
<2>value可以省略:@RequestParam("collectorId") String collectorId
[email protected]、@RequestParam 、@RequestBody的区别
(1)@PathVariable也可以获取参数
<1>在url中已经预留了变量的占位符时,需要使用@PathVariable
<2>是路径(path)上的变量(variable),例如:
@RequestMapping(value="/springmvc/{param1}", method = RequestMethod.GET)
public String getDetails (
@PathVariable("param1") String param1) {...}
<3>实现GET请求的url是:http://localhost:8080/springmvc/param1value
<4>由于使用@PathVariable需要将参数带在URL后面,不安全,因此一般不用这种方式
(2)@RequestParam获取参数
<1>url中没有预留参数的占位符时,需要使用@RequestParam
<2>是请求(Request)中的参数(Param),提交方式GET、POST
@RequestMapping(value="/springmvc", method = RequestMethod.GET)
public String getDetails (
@RequestParam("param1", required=true) String param1,
@RequestParam(value="param2", required=false) String param2){...}
<3>>实现GET请求的url是:http://localhost:8080/springmvc?param1=10¶m2=20
<4>value可以省略,并且默认required=true也可以省略
(3)@RequestBody获取参数
<1>在url中没有预留参数的占位符,且请求中包含结构体对象时,需要使用@RequestBody
<2>是请求(Request)中的结构体对象(Body)
<3>应用实例:User为对象
@RequestMapping(value="/springmvc", method = RequestMethod.GET)
public String getDetails (@RequestBody User user) {... }
<4>实现GET请求的url是:
$scope.user = {
username: "foo",
auth: true,
password: "bar"};
$http.get('http://localhost:8080/springmvc', $scope.user)
推荐阅读
-
springmvc中接收页面参数传递的几种方式
-
SpringMVC四种controller接收参数的方式,三种controller向界面传递参数的方法
-
SpringBoot中Controller接收参数的几种方式
-
POST不同提交方式对应的Content-Type,及java服务器接收参数方式
-
Java Spring Controller 获取请求参数的几种方法详解
-
java详解Spring接收web请求参数的方式
-
POST不同提交方式对应的Content-Type,及java服务器接收参数方式
-
Java Spring Controller 获取请求参数的几种方法详解
-
java详解Spring接收web请求参数的方式
-
java技术--Controller接收参数的几种常用方式