EL表達式 作用域問題 對象名字和session的優先級

EL表達式可以從pageContext,request,session,application四個作用域中取到值,如果4個作用域都有name屬性怎麼辦? 

EL會按照從小到大的優先級順序獲取 

pageContext>request>session>application


但是如果你有一個對象是他會優先選擇對象

		<div style="font-weight:bold;font-size:16px;color:red;">!!${user.name}</div>

public ModelAndView login(User user,HttpSession session) throws Exception{
		ModelAndView mav;
		String email=user.getEmail();
		String pwd=user.getPassword();
		String md5pwd=Md5Encrypt.toMd5Encrypt(pwd);
		System.out.println(md5pwd);
		User finduser=userservice.SelectByEmailForPwd(user);
		System.out.println(finduser);
		String findpwd=finduser.getPassword();
		System.out.println("find"+findpwd);
		if(md5pwd.equals(findpwd)) {
			session.setAttribute("user",finduser);
			System.out.println(session.getAttribute("login"));}}
所有用session傳遞值時別跟對象名字重合了,否者容易出錯,例如我這裏定義的用戶沒用名字的,用EL表達式顯示時不顯示,因爲沒用名字,所以換了一個鍵名就OK了

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章