springboot服務端獲取前端傳遞的引數
阿新 • • 發佈:2021-10-11
1、直接把引數寫在Controller相應的方法的形參中
@RequestMapping("a")
public void tta(String name,String password) {
String tName = name;
String tPassword= password;
System.out.println("形參測試:"+tName+","+tPassword);
}
呼叫介面傳參: http://localhost:8080/a?name=123&password=456
2、使用HttpServletRequest接收引數
@RequestMapping("b") public void ttb(HttpServletRequest httpServletRequest) { String tName = httpServletRequest.getParameter("name"); String tPassword= httpServletRequest.getParameter("password");; System.out.println("HttpServletRequest測試"+tName+","+tPassword); }
呼叫介面傳參: http://localhost:8080/b?name=456&password=789
3、使用bean來接收引數
建一個bean類對應接收的引數
package com.example.demo; public class User { String name; String password; public String getName() { return name; } public void setName(String name) { this.name = name; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } }
呼叫bean接收引數
@RequestMapping(value = "c")
public void ttc(User user) {
String tName = user.getName();
String tPassword= user.getPassword();
System.out.println("bean測試"+tName+","+tPassword);
}
呼叫介面傳參:
4、通過@PathVariable獲取引數
這種傳參方式是以路徑的方式傳參
@RequestMapping(value = "d/{name}/{password}")
public void ttd(@PathVariable String name, @PathVariable String password) {
String tName = name;
String tPassword= password;
System.out.println("@PathVariable測試"+tName+","+tPassword);
}
呼叫介面傳參: http://localhost:8080/d/2/3
5、使用@ModelAttribute註解獲取參
@RequestMapping(value = "e")
public void tte(@ModelAttribute User user) {
String tName = user.getName();
String tPassword= user.getPassword();
System.out.println("@ModelAttribute測試"+tName+","+tPassword);
}
呼叫介面傳參
6、用註解@RequestParam繫結請求引數到方法入參
這種方式預設是required = true
,必須傳對應的引數,不然會報錯,可以改成required = false
@RequestMapping(value = "f")
public void ttf(@RequestParam(required = true) String name, @RequestParam String password) {
String tName = name;
String tPassword = password;
System.out.println("@RequestParam測試" + tName + "," + tPassword);
}
呼叫介面傳參:
7、使用@RequestBody獲取引數
這種方式主要用於接收json資料型別
@RequestMapping(value = "g")
public void ttg(@RequestBody User user) {
String tName = user.getName();
String tPassword= user.getPassword();
System.out.println("@RequestBody測試" + tName + "," + tPassword);
}
呼叫介面傳參