spring --springmvc攔截現象

controller層的註冊/登錄方法頭以下
註冊方法頭mvc

/**
	 * 註冊
	 * @param userRegister
	 * 			註冊參數實體
	 * @return 用戶信息
	 */
	@RequestMapping(value = "/register",method = RequestMethod.POST)
	public ResultObject register(
			@RequestParam("loginInfo") String loginInfo,
			@RequestParam("password") String password,
			@RequestParam("nickName") String nickName,
			@RequestParam("signature") String signature,
			@RequestParam("age") String age,
			@RequestParam("gender") String gender,
			@RequestParam("locationId") String locationId,
			@RequestParam(required = false, value = "userImg") MultipartFile userImg) {
                          ResultObject resultObject = new ResultObject();
                            //實現部分
                            ......
                        return resultObject;
                        }

登錄方法頭app

/**
	 * 登錄
	 * @param loginInfo
	 * 			手機號碼
	 * @param password
	 * 			密碼
	 * @return 用戶信息
	 */
	@RequestMapping(value = "/login",method = RequestMethod.POST)
	public ResultObject register(@RequestParam("loginInfo") String loginInfo,
							@RequestParam("password") String password) {
                       ResultObject resultObject = new ResultObject();
                       //實現部分
                        ......
                        return resultObject;
}

請求以下
輸入圖片說明
很明顯,dispatcher處理的路徑是/missBang/login,這與我請求的路徑是一致的,接着尋找/login的路徑,就找到com.readygo.missBang.controller.register這個方法。可是,經過如上的註冊方法和登錄方法可知,因爲大意,將兩個方法名寫成同樣了。所以,mvc可能找到註冊的方法頭裏面去了(本身猜的)。解決方法:將登錄方法頭改爲String login()便可。 問題:不明白爲何會出現這種現象,一直認爲mvc是按照路徑查找,即方法名重了也不影響;經過這個例子,很明顯不是。望路過此貼者發表高見。ui

相關文章
相關標籤/搜索