<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          springmvc請求參數(shù)獲取的幾種方法

          共 3509字,需瀏覽 8分鐘

           ·

          2020-09-22 15:00


          1、直接把表單的參數(shù)寫在Controller相應(yīng)的方法的形參中,適用于get方式提交,不適用于post方式提交。


          /**
          ?????* 1.直接把表單的參數(shù)寫在Controller相應(yīng)的方法的形參中
          ??????* @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";
          ????}


          url形式:http://localhost/SSMDemo/demo/addUser1?username=lixiaoxi&password=111111?提交的參數(shù)需要和Controller方法中的入?yún)⒚Q一致。


          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方式都可以。


          (1)建立一個和表單中參數(shù)對應(yīng)的bean


          package demo.model;

          public?class?UserModel {
          ????
          ????private?String?username;
          ????private?String?password;
          ????public?String?getUsername() {
          ????????return?username;
          ????}
          ????public?void?setUsername(String?username) {
          ????????this.username = username;
          ????}
          ????public?String?getPassword() {
          ????????return?password;
          ????}
          ????public?void?setPassword(String?password) {
          ????????this.password = password;
          ????}
          ????
          }


          (2)用這個bean來封裝接收的參數(shù)


          /**
          ?????* 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、通過@PathVariable獲取路徑中的參數(shù)


          /**
          ?????* 4、通過@PathVariable獲取路徑中的參數(shù)
          ??????* @param username
          ?????* @param password
          ?????* @return
          ?????*/

          ????@RequestMapping(value="/addUser4/{username}/{password}",method=RequestMethod.GET)public?String?addUser4(@PathVariable?String?username,@PathVariable?String?password) {
          ????????System.out.println("username is:"+username);
          ????????System.out.println("password is:"+password);
          ????????return?"demo/index";
          ????}


          例如,訪問http://localhost/SSMDemo/demo/addUser4/lixiaoxi/111111?路徑時,則自動將URL中模板變量{username}和{password}綁定到通過@PathVariable注解的同名參數(shù)上,即入?yún)⒑髐sername=lixiaoxi、password=111111。


          5、使用@ModelAttribute注解獲取POST請求的FORM表單數(shù)據(jù)

          Jsp表單如下:


          "<%=request.getContextPath()%>/demo/addUser5"?method="post">
          ?????用戶名: <input?type="text"?name="username"/><br/>
          ?????密 碼: <input?type="password"?name="password"/><br/>
          ?????<input?type="submit"?value="提交"/>
          ?????<input?type="reset"?value="重置"/>


          Java Controller如下:


          /**
          ?????* 5、使用@ModelAttribute注解獲取POST請求的FORM表單數(shù)據(jù)
          ??????* @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";
          ????}


          6、用注解@RequestParam綁定請求參數(shù)到方法入?yún)?/strong>


          當(dāng)請求參數(shù)username不存在時會有異常發(fā)生,可以通過設(shè)置屬性required=false解決,例如: @RequestParam(value="username", required=false)


          /**
          ?????* 6、用注解@RequestParam綁定請求參數(shù)到方法入?yún)?br mpa-from-tpl="t">??????* @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";
          ????}


          原文鏈接:https://www.cnblogs.com/xiaoxi/p/5695783.html



          瀏覽 33
          點贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  91内射视频 | 在线观看色网站 | 操逼动漫视频 | 婷婷色中文字幕 | 对白淫荡偷情 |