spring mvc請求controller訪問方式
1.一個Controller裡含有不同的請求url
@Controller //類似Struts的Action public class TestController {
@RequestMapping("test/login.do") // 請求url地址對映,類似Struts的action-mapping public String testLogin(@RequestParam(value="username")String username, String password, HttpServletRequest request) { // @RequestParam是指請求url地址對映中必須含有的引數(除非屬性required=false)}// @RequestParam可簡寫為:@RequestParam("username") if (!"admin".equals(username) || !"admin".equals(password)) { return "loginError"; // 跳轉頁面路徑(預設為轉發),該路徑不需要包含spring-servlet配置檔案中配置的字首和字尾 } return "loginSuccess"; }
2.採用一個url訪問,通過url引數來區分訪問不同的方法
@Controller @RequestMapping("/test2/login.do") // 指定唯一一個*.do請求關聯到該Controller public class TestController2 { @RequestMapping public String testLogin(String username, String password, int age) { // 如果不加任何引數,則在請求/test2/login.do時,便預設執行該方法 if (!"admin".equals(username) || !"admin".equals(password) || age < 5) {return "loginError"; } return "loginSuccess"; } @RequestMapping(params = "method=1", method=RequestMethod.POST) public String testLogin2(String username, String password) { // 依據params的引數method的值來區分不同的呼叫方法 // 可以指定頁面請求方式的型別,預設為get請求 if (!"admin".equals(username) || !"admin".equals(password)) { return "loginError"; } return "loginSuccess"; } @RequestMapping(params = "method=2") public String testLogin3(String username, String password, int age) { if (!"admin".equals(username) || !"admin".equals(password) || age < 5) { return "loginError"; } return "loginSuccess"; } }
3.RequestMapping在Class上,可看做是父Request請求url,而RequestMapping在方法上的可看做是子Request請求url,父子請求url最終會拼起來與頁面請求url進行匹配
@Controller @RequestMapping("/test3/*") // 父request請求url public class TestController3 { @RequestMapping("login.do") // 子request請求url,拼接後等價於/test3/login.do public String testLogin(String username, String password, int age) { if (!"admin".equals(username) || !"admin".equals(password) || age < 5) { return "loginError"; } return "loginSuccess"; } }
4.在SpringMVC中常用的註解還有@PathVariable,@RequestParam,@PathVariable標記在方法的引數上,利用它標記的引數可以利用請求路徑傳值
@Controller //類似Struts的Action public class TestController {
@RequestMapping(value="/comment/{blogId}", method=RequestMethod.POST) public void comment(Comment comment,@PathVariable int blogId) throws IOException { }}
相關推薦
spring mvc請求controller訪問方式
1.一個Controller裡含有不同的請求url @Controller //類似Struts的Action public class TestController { @RequestMapping("test/login.do") // 請求url地址對
Spring MVC 從 Controller向頁面傳值的方式
用戶 () 傳參數 control let att model enter 設定 Spring MVC 從 Controller向頁面傳值的方式 在實際開發中,Controller取得數據(可以在Controller中處理,當然也可以來源於業務邏輯層),傳給頁面,常用的方
spring mvc 請求處理方式...
標題實在不知應該如何定義,略處尷尬。 相信有很多剛接觸Spring mvc的小夥伴跟我一樣都有個小疑問。如何正確根據場景需要來處理請求,舉個栗子吧~~~ 拿login作為栗子,賬號密碼輸入完畢 -》 登陸按鈕 -》 Controller -》賬戶正確 -》 主頁.jsp
通過攔截器Interceptor實現Spring MVC中Controller介面訪問資訊的記錄
java web工程專案使用了Spring+Spring MVC+Hibernate的結構,在Controller中的方法都是用於處理前端的訪問資訊,Controller通過呼叫Service進行業務處理後給前端返回ModelAndView物件或者只返回Json格式資料。如
spring mvc請求過程
logs ont com 邏輯 src resolv 發送 pre mage 1. 請求會首先發送到DispatchServlet,這是spring的前置Servlet,它會接收請求並轉發給spring的MVC controller,也就是業務controller 2. D
Spring MVC筆記(四) 訪問靜態頁面
inpu web-inf bean ... 逗號 beans efi back 發送 本例通過<mvc:resources>標簽訪問一個靜態或動態頁面。 首先還是創建一個web工程,並引入相關jar包: 創建控制器類,WebController.java
6.Spring MVC靜態資源訪問
cati 解決 fault 是我 直接 mage 所有 param 進行 在SpringMVC中常用的就是Controller與View。但是我們常常會需要訪問靜態資源,如html,js,css,image等。 默認的訪問的URL都會被DispatcherServlet所攔
MyBatis-Plus 多庫部署方式;spring mvc 多庫部署方式
1、實現mybatis-plus的多個數據庫的切換方式 原始碼地址:https://github.com/baomidou/mybatisplus-spring-mvc 2、因為其文件都是相互依賴的,所以修改配置,就是在已有的配置中修改
spring mvc 請求引數String 轉date
以spring boot為背景 1 實現org.springframework.core.convert.converter.Converter介面生成一個自定義Converter。 public class DateConverter implements Converter&l
簡單讀!spring-mvc請求的來龍去脈
相信spring-mvc這種被玩壞了的架構理念,大家都爛熟於胸了,不過還是想來扒一扒他的細節。 一個http請求,怎麼樣被 spring 接收,又怎樣做出響應呢? 一般地,我們會配置一個 web.xml,然後開始程式碼之旅。 在 web.xml 中配置 servlet-mapping, 將
spring MVC框架controller間跳轉失效問題
info control 代碼 img nbsp ont response 返回 生效 今天調試時,發現redirect:url 不生效,訪問直接返回這串字符串。忘了找了兩個來小時,才找到正確的原因。 原來是因為我代碼開始用的是@RestController, 用了這個後,
Spring MVC請求流程
Spring MVC 發起請求到前端控制器DispathServlet 前端控制器請求處理器對映器 handerMapping查詢handler 處理器對映器handerMapping像前端控制器返回handler 處理器對映器呼叫處理器介面卡,去執行handler han
spring mvc中controller怎麼接收頁面表單提交的資料
轉自:http://blog.csdn.net/wujiaqi168/article/details/41957187 1、定義一個類,該類的欄位要包含表單中所有input的name對應的值,並且在類中為對應的欄位生成getter 與setter方法 2、在對應的c
Spring MVC請求處理流程及架構
protected void doDispatch(HttpServletRequest request, HttpServletResponse response) throws Exception { HttpServletRequest processedRequest = request; H
Spring MVC攔截器+註解方式實現防止表單重複提交
表單重複提交是在多使用者Web應用中最常見、帶來很多麻煩的一個問題。有很多的應用場景都會遇到重複提交問題,比如: 1.點選提交按鈕兩次。2.點選重新整理按鈕。3.使用瀏覽器後退按鈕重複之前的操作,導致重複提交表單。4.使用瀏覽器歷史記錄重複提交表單。5.瀏覽器重複的HTTP
spring mvc 請求轉發和重定向
請求重定向與請求轉發的比較,HttpServletResponse.sendRedirect方法和RequestDispatcher.forward方法都可以讓瀏覽器獲得另外一個URL所指向的資源,但兩者的內部執行機制有很大的區別。 1.RequestDisp
spring mvc的controller識別同一個form表單的多個submit按鈕問題以及相關處理
之前只寫過spring mvc的controller處理form表單中一個submit的程式碼,今天遇到了form表單中存在多個submit,然後自己百度了一下,找到了解決方案,不過又出現了其他錯誤,現在來總結一下。 sp
spring mvc中controller使用介紹
SpringMVC是一個基於DispatcherServlet的MVC框架,每一個請求最先訪問的都是DispatcherServlet,DispatcherServlet負責轉發每一個Request請求給相應的Handler,Handler處理以後再返回相應的檢視(View
Spring AOP 對Spring MVC的Controller切面攔截不起作用
1 問題描述 當使用Spring AOP對Controller層的Controller類的方法進行切面攔截,不起作用。AOP配置沒有任何問題。 2 排查過程 Spring AOP配置沒有任何問題;【正常】 斷點除錯:Spring原始碼斷點除錯,在呼叫Controller方法時,Controller的例項被JD
spring MVC中controller層和service層的junit4測試
import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.*; import static org.springframework.test.web.servlet.result.MockMvcResul