1、提交的網域名稱稱和處理方法的引數名一致
提交資料 : http://localhost:8080/hello?name=kuangshen
處理方法 :
後台輸出 : kuangshen
2、提交的網域名稱稱和處理方法的引數名不一致
提交資料 : http://localhost:8080/hello?username=kuangshen
處理方法 :
後台輸出 : kuangshen
3、提交的是乙個物件
要求提交的表單域和物件的屬性名一致 , 引數使用物件即可
1、實體類
2、提交資料 : http://localhost:8080/mvc04/user?name=kuangshen&id=1&age=15
3、處理方法 :
後台輸出 : user
說明:如果使用物件的話,前端傳遞的引數名和物件名必須一致,否則就是null。
第一種 : 通過modelandview
我們前面一直都是如此 . 就不過多解釋
第二種 : 通過modelmap
modelmap
model.addattribute("name",name);
第三種 : 通過model
model
model.addattribute("msg",name);
就對於新手而言簡單來說使用區別就是:
model 只有寥寥幾個方法只適合用於儲存資料,簡化了新手對於model物件的操作和理解;當然更多的以後開發考慮的更多的是效能和優化,就不能單單僅限於此的了解。modelmap 繼承了 linkedmap ,除了實現了自身的一些方法,同樣的繼承 linkedmap 的方法和特性;
modelandview 可以在儲存資料的同時,可以進行設定返回的邏輯檢視,進行控制展示層的跳轉。
請使用80%的時間打好紮實的基礎,剩下18%的時間研究框架,2%的時間去學點英文,框架的官方文件永遠是最好的教程。
設定modelandview物件 , 根據view的名稱 , 和視**析器跳到指定的頁面 .
頁面 : + viewname +
class="org.springframework.web.servlet.view.internalresourceviewresolver"id="internalresourceviewresolver">
對應的controller類
publicclass controllertest1 implements
controller
}
通過設定servletapi , 不需要視**析器 .
1、通過httpservletresponse進行輸出
2、通過httpservletresponse實現重定向
3、通過httpservletrequest實現**
通過springmvc來實現**和重定向 - 無需視**析器;
測試前,需要將視**析器注釋掉
springmvc通過springmvc來實現**和重定向 -無需視**析器;
測試前,需要將視**析器注釋掉
@controller
public
class
resultspringmvc
public
string test2()
public
string test3()
}
通過springmvc來實現**和重定向 - 有視**析器;
重定向 , 不需要視**析器 , 本質就是重新請求乙個新地方嘛 , 所以注意路徑問題.
可以重定向到另外乙個請求實現 .
@controllerpublic
class
resultspringmvc2
public
string test2()
}
SpringMVC 05 常用註解和REST
1.requsetparam 作用 解決前台引數名字和後台引數名字不一致問題。屬性 value 請求引數中的名稱。同name,可省略。required 請求引數中是否必須提供此引數。預設值 true。表示必須提供,如果不提供將報錯.前台的傳參username 安琪拉 href controller ...
Spring MVC接收引數
1.和servletapi緊耦方法 使用原生 servletapi 使用原有的request物件進行獲取 只需要在方法內容宣告request形參即可,servlet在呼叫的時候會自動賦值。按照request的使用方式正常使用即可 springmvc引數優點 沒有引數,不賦值,正常執行 有引數,則給引...
SpringMVC接收陣列引數
今天專案中需要批量刪除的功能 首先想的2個解決方案 方案1 將所有需要刪除的資料的id拼接成一串字串,傳到後台再分割字串,然後實現刪除 方案2 前端將需要刪除的id存入陣列物件,然後整個物件傳到後台,後台list接收,然後實現刪除 終上方案的綜合優勢,使用了方案二 首先前端使用jquery的ajax...