A. jsp頁面獲取session的問題
Jsp中獲取Session的方法:
session是jsp的內置對象,所以可以直接寫在jsp的
<%
//把b放到session里,命名為a
session.setAttribute("a",
b);
//從session里把a拿出來內,並賦值容給M
String
M
=
session.getAttribute(「a」).toString();
%>
B. jsp頁面怎麼獲取session
session 這介紹得還好回答
http://jingyan..com/article/0964eca236ecd48284f5366f.html
C. 如何在前台jsp頁面中取出session中存入的對象裡面的屬性
jsp中可以通過session的內置方法:("屬性名");來獲取某個屬性。
session對象常用方法
getId():返回一個唯一的標識,這些標識為每個session而產生。當只有一個單一的值與一個session聯合時,或當日誌信息與先前的session有關時,它被當做鍵名使用。
getCreationTime():返回session被創建的時間。
getLastAccessedTime():返回session最後被客戶發送的時間。最小單位為毫秒(ms)。
getMaxInactiveInterval():返回總時間(秒),負值表示session永遠不會超時。
getAttribute(String key):通過指定的關鍵字獲取一個存儲在session中相應的信息。例如:Integer item =(Integer) session.getAttribute("item")。
setAttribute(String key, Object obj):提供一個關鍵詞和一個對象值,然後存在session當中。例如:session.setAttribute(「item」,itemName)。
D. JSP如何取出session里的值
jsp獲取action傳來的session值問題有一下幾種方法:
比如action中有個session ("sessionid","11111111")
一、用內struts標簽獲取:<s:property value="#session.sessionid"/>
二、<%=request.getSession.getAttribute("sessionid");> session也是內容置對象之一,可以直接用session,比request.getSession方便多了,也可以寫成<%=session.getAttribute("sessionid");>
三、el表達式獲取:${sessionScope.sessionid}
如果賦值的是個bean,也是一樣的,類似於${sessionScope.bean.beansth}
E. jsp頁面怎麼取session的值
jsp獲取action傳來的session值問題有一下幾種方法:
比如action中有個session ("sessionid","11111111")
一、用struts標簽獲取:<s:property value="#session.sessionid"/>
二專、<%=request.getSession.getAttribute("sessionid");> session也是內置對象之一,可以屬直接用session,比request.getSession方便多了,也可以寫成<%=session.getAttribute("sessionid");>
三、el表達式獲取:${sessionScope.sessionid}
如果賦值的是個bean,也是一樣的,類似於${sessionScope.bean.beansth}
F. 求助jsp頁面中如何獲取到session對象
剛剛沒發好,代碼沒發上去
java文件是這樣的,在登錄驗證的時候要給出session
......
Sysuser u=sysuserService.validateUser(sysuser.getUsername(), sysuser.getPassword());
session.put("sysuser",u);
......
這裡面的u是個對象,不是string值了,我現在就不知道如何能在jsp頁面中獲取session值了?希望各位給點指點,我想在jsp文件中用代碼塊來讀取session做相應的許可權判斷
<%
請問這裡面怎麼寫才能獲取session這個對象呢
%>
session.getAttribute("sessionName");//return object
謝謝
不過我用
[code=7]
String user=null;
user=session.getAttribute("sysuser");
[/code]
eclipse報錯來的,提示說"不能從Object轉換為String"
我怎麼能輸出session對象為一段段的字元串呢
String user = (String)session.getAttribute("sysuser");
4樓正解
String user=null;
user=session.getAttribute("sysuser").tostring;
session.getAttribute("鍵名"
更詳細的解決辦法參考 :
http://passport..com/?logout&u=http%3A//..com.jishu6.cn/java/%3fa=4.7123016442318
G. 如何在html中獲取jsp中的session的值
伺服器跟蹤用戶狀態有好幾種方法,其中一種就是,伺服器保持session,給客戶端一個sessionid,客戶端每次發送請求時,會把這個sessionid提交給伺服器(這是瀏覽器乾的事),伺服器根據這個sessionid找到相應的session,如果你用的jsp,jsp引擎(比如tomcat)會吧這個session作為一個實例變數放到jsp頁面里,你可以直接使用。如果是html文件,jsp引擎會直接發送給客戶端html文件的內容。
客戶端的js訪問cookie的方法只能訪問存儲在客戶端的cookie(使用js或session的cookie存儲的)。
一般來說,只有伺服器端的CGI程序(ASP、PHP、JSP)具有session會話功能,用來保存用戶在網站期間(會話)的活動數據信息,而對於數量眾多的靜態頁面(HTML)來說,只能使用客戶端的cookies來保存臨時活動數據,但對於cookies的操作是個很煩瑣的過程,遠沒有對於session操作那樣簡便。
為此,本文向讀者推薦一種在DHTML中的解決方案「Persistence技術」,使得在靜態頁面中也能使用session會話功能。
使用保持(Persistence)技術讓我們能夠在當前會話過程中保存一些數據對象到客戶端,它減少了對伺服器的訪問請求,充分發揮了客戶端計算機的數據處理能力,從而也整體提升了頁面顯示效率。
Microsoft Internet Explorer 5瀏覽器和以後的版本都支持使用狀態保持(Persistence)技術,它有以下幾種行為可供調用:
saveFavorite—當頁面被添加到收藏夾時保存頁面狀態和信息
saveHistory—在當前會話中保存頁面狀態和信息
saveSnapshot—當頁面被保存到硬碟時,保存頁面狀態和信息persists
page state and information directly in the page when users save the Web page to
their hard disk.
userData—在當前會話中用XML格式保存頁面狀態和信息 網頁製作
Persistence技術打破了以前使用使用cookies和session的傳統,它繼承了以前cookies的一些安全策略,同時也增加了存儲和管理數據的能力。我們的每個頁面有64KB的用戶數據存儲容量,對於每個站點總計有640KB的存儲上限。
Persistence技術存儲的數據格式符合XML標准,所以可以使用DOM技術中的getAttribute和setAttribute方法來存取數據。
下面是一個Persistence技術的典型應用,通過對Persistence存儲數據的分析,使得靜態頁面具有驗證功能。
實際判斷過程是這樣的:
有三個對象:遊客V、導航頁面A、內容頁面C
遊客V只能通過導航頁面A的鏈接才能看到內容頁面C;
如果遊客V是通過其它途徑來訪問內容頁面C(比如通過其它網站的超鏈接、直接在IE地址欄中輸入網址訪問等),內容頁面C將自動提示版權信息,顯示空白頁。
具體實現步驟:
一、在「導航頁面」中加入一個STYLE用來定義persistent類,同時加入存儲函數fnSave用來授權。
<STYLE>
.userData {behavior:url(#default#userdata);}
</STYLE>
<SCRIPT language=Javascript>
網頁編程
function fnSave(){
oPersistDiv.setAttribute("bIsValid","true");
oPersistDiv.save("oXMLStore");
}
</SCRIPT>
二、在「導航頁面」的<body>和</body>區域中定義一個層用來標識Persistence對象
<DIV CLASS=userData ID="oPersistDiv"></DIV>
三、在「導航頁面」的超鏈接屬性中加入一條語句用來調用函數fnSave:
<a href='redhat2.htm' onmousedown="fnSave()">
接下來,為「內容頁面」加入驗證功能:
四、在「內容頁面」中加入一個STYLE用來定義persistent類,同時加入存儲函數fnLoad用來判斷合法性。
<STYLE>
.userData {behavior:url(#default#userdata);}
</STYLE>
<SCRIPT>
var bPageValid=false;
function fnLoad(){
oPersistDiv.load("oXMLStore");
if((oPersistDiv.getAttribute("bIsValid"))&&(oPersistDiv.getAttribute("bIsValid")=="true")){
bPass=true;
網頁模板
}
else{
bPass=false;
}
oPersistDiv.setAttribute("bIsValid","false");
oPersistDiv.save("oXMLStore");
if(bPass==false){
var sError="來源不明,請您通過授權網站訪問我們.";
alert(sError);
location.href="about:blank";
}
}
</SCRIPT>
五、修改「內容頁面」的<body>區域如下:
<BODY onload="fnLoad()">
<DIV CLASS=userData ID="oPersistDiv"></DIV>
從以上範例可看出,通過persistence的使用,使得普通的靜態內容頁面具有了session功能,一般的不敏感信息完全可以通過session保存在客戶端。
另外,如果不明白persistence的使用,也可以這樣,你的首頁上有個form,用來提交用戶名和密碼。如果你把首頁換成html頁面,完全可以,不過要在其他地方接收用戶名和密碼(比如logon.jsp)。form的action設為logon.jsp。很簡單。使用form的action來轉移接受session的地方,首頁就可以用靜態了
H. jsp頁面接收session中的值並顯示在頁面中
jsp獲取的session直接從抄內置對象獲取,用el表達式顯示就可以了。
java後台設置session方法:
HttpSession session=request.getSession();
session.setAttribute("sname", "test-session");//session設值
request.setAttribute("rname","test-request");//request設值
request.getRequestDispatcher("index.jsp").forward(request, response);
${sname}//session取值
${rname}//request取值
jsp頁面用el表達式取值方法:
用<%=request.getSession().getAttribute('sname')> 就可以取到值了。
I. 在jsp頁面怎麼取session里的List
用EL表達式,比如你的list名字就叫list,那麼jsp中就寫${list} 這樣,就能自動獲取session中的值了,其實這個${}是從4個域中進行獲取的.
J. 在jsp頁面怎麼取session里的List
在jsp頁面獲取session里的list集合,步驟如下:
1.首先新建一個DTO(對象傳輸模型),用來測試數內據:
public class User{
private String name;
private String password;
private String email;
}
2.生成它容們的get,set方法.
然後 在處理業務邏輯的類中 User user = new User()。
3.從登錄頁拿到用戶信息,通通傳入這個User對象(user.name="小江";user.password="1234"),這樣,一個user對象就表示一個人的登錄信息了。
再,List<User> list = new ArrayList<User>,把User對象放入list(list.add(user)),
最後,把list加入HttpSession
4.取出來的時候 遍歷list
for(User user:list){
user.name;
user.password
}