Java Spring Controller에서 요청 매개변수를 가져오는 몇 가지 방법에 대한 자세한 내용
3655 단어 JavaSpringController
1. 표의 매개 변수를 Controller에 해당하는 방법의 인삼에 직접 쓰면 get방식 제출에 적용되고post방식 제출에 적용되지 않는다."Content-Type"= "application/x-www-form-urlencoded"라면post로 제출 가능
url 형식:http://localhost:8080/SSMDemo/demo/addUser1?username=lixiaoxi&password=111111커밋된 매개 변수는 Controller 메서드의 인자 이름과 일치해야 합니다.
/**
* 1. Controller
* @param username
* @param password
* @return
*/
@RequestMapping("/addUser1")
public String addUser1(String username,String password) {
System.out.println("username is:"+username);
System.out.println("password is:"+password);
return "demo/index";
}
2. HttpServletRequest를 통해 받습니다.post방식과 get방식 모두 가능합니다.
/**
* 2、 HttpServletRequest
* @param request
* @return
*/
@RequestMapping("/addUser2")
public String addUser2(HttpServletRequest request) {
String username=request.getParameter("username");
String password=request.getParameter("password");
System.out.println("username is:"+username);
System.out.println("password is:"+password);
return "demo/index";
}
3, 하나의 bean을 통해 접수,post 방식과 get 방식 모두 가능합니다.
/**
* 3、 bean
* @param user
* @return
*/
@RequestMapping("/addUser3")
public String addUser3(UserModel user) {
System.out.println("username is:"+user.getUsername());
System.out.println("password is:"+user.getPassword());
return "demo/index";
}
4. @ModelAttribute 메모를 사용하여 POST 요청에 대한 FORM 양식 데이터 얻기
/**
* 4、 @ModelAttribute POST FORM
* @param user
* @return
*/
@RequestMapping(value="/addUser5",method=RequestMethod.POST)
public String addUser5(@ModelAttribute("user") UserModel user) {
System.out.println("username is:"+user.getUsername());
System.out.println("password is:"+user.getPassword());
return "demo/index";
}
5, 메모 @RequestParam 바인딩 요청 매개 변수를 메소드에 삽입요청 매개 변수 username이 존재하지 않을 때 이상이 발생합니다. 속성 required=false 설정을 통해 해결할 수 있습니다. 예를 들어
@RequestParam(value="username", required=false)
**** "Content-Type"="application/x-www-form-urlencoded",post get
**** "Content-Type"="application/application/json", get
/**
* 5、 @RequestParam
* @param username
* @param password
* @return
*/
@RequestMapping(value="/addUser6",method=RequestMethod.GET)
public String addUser6(@RequestParam("username") String username,@RequestParam("password") String password) {
System.out.println("username is:"+username);
System.out.println("password is:"+password);
return "demo/index";
}
6. request.getQueryString () 에서 spring MVC get 요청의 매개 변수를 가져옵니다. get 요청만 적용됩니다.
@RequestMapping(value="/addUser6",method=RequestMethod.GET)
public String addUser6(HttpServletRequest request) {
System.out.println("username is:"+request.getQueryString());
return "demo/index";
}
읽어주셔서 감사합니다. 여러분에게 도움이 되었으면 좋겠습니다. 본 사이트에 대한 지지에 감사드립니다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
JPA + QueryDSL 계층형 댓글, 대댓글 구현(2)이번엔 전편에 이어서 계층형 댓글, 대댓글을 다시 리팩토링해볼 예정이다. 이전 게시글에서는 계층형 댓글, 대댓글을 구현은 되었지만 N+1 문제가 있었다. 이번에는 그 N+1 문제를 해결해 볼 것이다. 위의 로직은 이...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.