setAttribute使用

setAttribute這個方法,在JSP內置對象session和request都有這個方法,這個方法作用就是保存數據,然後還可以用getAttribute方法來取出。
比如現在又個User對象,User curruser = new User(“zhangsan”, 20, “男”);
1,request.setAttribute(“curruser”, curruser)(ps:curruser不能加引號,否者會報錯Property ‘name’ not found on type java.lang.String,原因是你的request.setAttriubuten部分很可能是在裏面添加了一個字符串而不是一個對象,這樣纔會後面用EL取值的時候not found on type java.lang.String了)這個方法是將curruser這個對象保存在request作用域中,然後在轉發進入的頁面就可以獲取到你的值,如果你會一些框架的話,那些框架標籤也可以獲取到,比如struts標籤,還有jstl。如果這你都不會的話,那麼你可以在jsp頁面編寫java小腳本來獲取:<% User myuser = (User)request.getAttribute(“curruser”)%>,在jsp頁面顯示值:<%=myuser.getName()%>。
2,session.setAttribute(“curruser”, curruser)。這個方法和上面唯一的區別就是作用域,就是在你整個程序啓動的時候,如果在session中保存了數據,那麼在你這個無論你在哪個頁面,在什麼時候都可以獲取到這個值,全局的,只要你的這個程序是啓動的。session默認的過期時間是30分鐘,過期無效,可以去修改這個值。

發佈了25 篇原創文章 · 獲贊 5 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章