① 請問,java高手,java中的session默認是有個有效期的吧,比如有效期是20分鍾,
session 有效期是說 你20分鍾內不再有請求 你一直操作=一直有請求 所以不會斷
② Java中怎麼判斷Session是否過期
調用request.getSession(false),如果返回null,代表沒有該session即已經過期,反之則沒有過期
③ java中的session 從過期失效 到 摧毀 要多少時間
這個是JVM回收機制的問題,什麼時候回收,什麼時候摧毀。
解釋:過期的內容,已經成為jvm中的垃圾信息,這個具體什麼時候摧毀,沒辦法說的,只能說什麼時候JVM進行垃圾回收,什麼時候釋放這個資源。
④ 如何判斷session過期 java
設置session的失效時間
a)web.xml中
<session-config>
<session-timeout>30</session-timeout>
</session-config>
b)在程序中手動設置
session.setMaxInactiveInterval(30 * 60);//設置單位為秒,設置為-1永不過期
c)tomcat也可以修改session過期時間,在server.xml中定義context時採用如下定義:
<Context path="/livsorder" docBase="/home/httpd/html/livsorder"
defaultSessionTimeOut="3600" isWARExpanded="true"
isWARValidated="false" isInvokerEnabled="true"
isWorkDirPersistent="false"/>
2.如何判斷session過沒過期
if(request.getSession(false)==null)
System.out.println("Session has been invalidated!");
else
System.out.println("Session is active!");
⑤ java session過期問題
1、Session是有生命周期的,生命周期結束,Session就會過期,Session 裡面的信息就會丟失。
2、另外Session可能會因為其他原因導致session覆蓋而過期;
3、下面舉個小例子的原因解釋說明Session因為覆蓋而丟失(過期)
原因解釋:
客戶端(瀏覽器)基於cookie保存交互的session會話信息,但是cookie又是基於域來區分;
假如A_ 和 B_ 項目使用了同一個域,故其cookie所在層級一樣,如果兩個項目都是用默認的sessionCookieName的話就會導致session的相互覆蓋致某一方session丟失(過期);
在 A_項目需要訪問 B_項目中的某一個服務JSP,需要與B_伺服器建立一個session會話(即生成一個sessionID),如果A_項目與B_項目屬於不同的兩個域或者是cookie所屬不同層級,這個新生成的session和A_項目自身的session會話互不幹擾。
⑥ java如何對SESSION設置有效時間!
程序中session都有一個默認的過期時間,其中tomcat中的默認時間為30分鍾,根據需要我專們可以去手動設置session的過期時屬間,以下是設置session的過期時間的三個方法:
1.在tomcat-->conf-->conf/web.xm中的<session-config>中設置:
<session-config>
<session-timeout>30</session-timeout>
</session-config>
2.在項目的web.xml中定義:
<session-config>? ?
<session-timeout>20</session-timeout>? ?
</session-config>
註:20則設置過期時間為20分鍾
3.在程序中定義:
session.setMaxInactiveInterval(30*60);
⑦ java web為什麼我的session過期時間設為永不過期,瀏覽器session還是會過期
Tomcat Session過期時間
Tomcat採用資料庫連接池技術,當用戶在一定時間不對資料庫有操作時間後,就自動關閉這個連接,這是為了更好的利用資源,防止浪費寶貴的資料庫連接資源。
可以採用如下三種方式,設置這個連接(Session)的過期時間:
前兩個都是修改tomcat的配置文件conf
1. 在server.xml中定義context時採用如下定義:
xml 代碼
<Context path="/livsorder" docBase="/home/httpd/html/livsorder"
defaultSessionTimeOut="3600" isWARExpanded="true"
isWARValidated="false" isInvokerEnabled="true"
isWorkDirPersistent="false"/>
3600秒=1小時
2. 在web.xml中通過參數指定:
xml 代碼
<session-config>
<session-timeout>30</session-timeout>
</session-config>
其中30表示30分鍾
3. 在程序中通過servlet api直接修改
java 代碼
HttpSession ses = request.getSession();
ses.setMaxInactiveInterval(10);
設置單位為秒,設置為-1永不過期。
⑧ java的session過期問題
會,看你session設置的過期時間設置了多久,在web.xml里有設置
<session-config>
<session-timeout>30</session-timeout>
</session-config>
⑨ java session 過期
你彈出前加個判斷畲
⑩ java網站中session 有默認的過期時間嗎
程序中session都有一個默認的過期時間,其中tomcat中的默認時間為30分鍾,根據需要我們可以去手動設置session的過期時間,以下是設置session的過期時間的三個方法:
1.在tomcat-->conf-->conf/web.xm中的<session-config>中設置:
<session-config>
<session-timeout>30</session-timeout>
</session-config>
2.在項目的web.xml中定義:
<session-config>
<session-timeout>20</session-timeout>
</session-config>
註:20則設置過期時間為20分鍾 測試通過
3.在程序中定義:
session.setMaxInactiveInterval(30*60);
設置單位為秒,設置為-1永不過期