Java Spring Controller가 요청 매개변수를 얻기 위한 여러 메소드
1. Controller의 해당 메소드의 형식 매개변수에 양식의 매개변수를 직접 작성하는 것이 get 메소드로 제출하는 데 적합합니다. 우편 방식으로 제출하는 데 적합하지 않습니다. "Content-Type"="application/x-www-form-urlencoded"인 경우 게시물을 사용하여
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. 요청 매개변수를 메소드 입력 매개변수
에 바인딩하려면 요청 매개변수 사용자 이름이 존재하지 않으면 필수=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. spring MVC get 요청의 매개변수를 가져오려면 request.getQueryString()을 사용하세요.
@RequestMapping(value="/addUser6",method=RequestMethod.GET) public String addUser6(HttpServletRequest request) { System.out.println("username is:"+request.getQueryString()); return "demo/index"; }
감사합니다. 읽어주셔서 감사합니다. 이 사이트를 지원해 주셔서 감사합니다.
요청 매개변수를 얻는 Java Spring Controller의 여러 가지 방법에 대한 자세한 설명을 보려면 PHP 중국어 웹사이트의 관련 기사를 참고하세요!