Java Spring Controller リクエストパラメータを取得するいくつかの方法
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. post メソッドまたは get メソッドのいずれかで Bean を介して受信します。
/** * 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 を使用してメソッド入力にバインドします
リクエスト パラメータのユーザー名が存在しない場合の例外が発生する場合は、属性 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 取得リクエストのパラメータを取得します。リクエストを受け取る場合にのみ適用されます
@RequestMapping(value="/addUser6",method=RequestMethod.GET) public String addUser6(HttpServletRequest request) { System.out.println("username is:"+request.getQueryString()); return "demo/index"; }
お読みいただきありがとうございます。お役に立てれば幸いです。皆さん、このサイトをサポートしていただきありがとうございます!
Java Spring コントローラーのリクエスト パラメーターを取得するいくつかのメソッドの詳細については、PHP 中国語 Web サイトに注目してください。