導航:首頁 > 專利知識 > websession有效期

websession有效期

發布時間:2021-07-26 05:57:30

㈠ 如何設置Session的有效期

設置Tomcat session有效期的三種方式有:
1、在tomcat/conf/web.xml中修改session-timeout的值,該設置是TOMCAT全局默認的;也可以在具體項目的WEB-INF/web.xml中設置該應用所使用的時間,與tomcat/conf/web.xml設置完全相同。
2、在server.xml中定義context時採用如下定義(修改defaultSessionTimeOut的值,計時單位為秒):
<Context path="/livsorder" docBase="/home/httpd/html/livsorder"
defaultSessionTimeOut="3600" isWARExpanded="true"
isWARValidated="false" isInvokerEnabled="true"
isWorkDirPersistent="false"/>
3、在程序中通過servlet api直接修改:
HttpSession ses = request.getSession();
ses.setMaxInactiveInterval(10);//設置單位為秒,設置為-1永不過期。

㈡ 前台用戶登錄session存活時間太短,修改後也不好用應該怎麼改

有四種修改方式可以設置session的有效期限。你可以看下,應該是哪個地方設置的時間太短了,所以就過期了。1、操作系統:
步驟:開始——〉管理工具——〉Internet信息服務(IIS)管理器——〉網站——〉默認網站——〉右鍵「屬性」——〉主目錄——〉配置——〉選項——〉啟用會話狀態——〉會話超時(在這兒設置你要的超時時間,單位分鍾)。確定即可。
2、ASP.NET應用程序中Session過期時間的設置
在ASP.NET這樣的Web應用中,Session是用來保存用戶狀態的常用手段,不過由於伺服器內存空間是有限的,所以Session過期時間設置是很有必要的。在ASP.NET中如何設置Session的過期時間呢,很簡單,修改web.config配置。
具體修改方法如下,在web.config中進行如下配置
<system.web>
<sessionState mode="InProc" timeout="30"/>
</system.web>
在這里指的是Session過期時間為30分鍾。也就是說30分鍾後如果當前用戶沒有操作,那麼Session就會自動過期了。
3、在調用Session的cs頁中,Load事件裡面寫以下
Session.Timeout = 30;
4、Store session in asp.net state service
<sessionState cookieless="false" timeout="480" mode="StateServer" stateConnectionString="tcpip=127.0.0.1:42424" sqlConnectionString="data source=127.0.0.1;user id=sa;password=" />看一下,看你的程序是用到了哪種設置方式,把時間改成你需要的時間就可以了。

㈢ session 默認過期時間到底怎麼設置

方法一:web app server中,如websphere里可以設置超時時間為30分鍾。

方法二:在web.xml中的回session-config配置
session-timeout元素(WEB.XML文件中的元素)用來答指定默認的會話超時時間間隔,以分鍾為單位。該元素值必須為整數。如果 session-timeout元素的值為零或負數,則表示會話將永遠不會超時。如:
<session-config> <session-timeout>30</session-timeout></session-config> //30分鍾

方法三:setMaxInactiveInterval設置當前會話時間
setMaxInactiveInterval設置的是當前會話的失效時間,不是整個web的時間,單位為以秒計算。如果設置的值為零或負數,則表示會話將永遠不會超時。常用於設置當前會話時間。該優先順序要比方法三中的優先順序高。

㈣ 在web應用中session管理有幾種方式試用三種方式設置session超時時間,並分別簡述其優缺點

1、操作系統(System):
步驟:開始——〉管理工具——〉Internet信息服務(IIS)管理器——〉網站——〉默認網站——〉右鍵「屬性」——〉主目錄——〉配置——〉選項——〉啟用會話狀態——〉會話超時(在這兒設置你要的超時時間,單位分鍾)。確定即可。
2、ASP.NET應用程序中Session過期時間的設置
在ASP.NET這樣的Web應用中,Session是用來保存用戶狀態的常用手段,不過由於伺服器內存空間是有限的,因此Session過期時間設置是很有必要的。在ASP.NET中怎麼設置Session的過期時間呢,很容易,修改web.config配置。
具體修改方法如下,在web.config中進行如下配置
<system.web>
<sessionState mode="InProc" timeout="30"/>
</system.web>
在這里指的是Session過期時間為30分鍾。也就是說30分鍾後假如當前用戶木有操作,那麼Session就會自動過期了。
3、在調出使用Session的cs頁中,Load事件里邊寫以下
Session.Timeout = 30;
4、Store session in asp.net state service
<sessionState cookieless="false" timeout="480" mode="StateServer" stateConnectionString="tcpip=127.0.0.1:42424" sqlConnectionString="data source=127.0.0.1;user id=sa;passWORD=" />

看一下,看你的程序是用到了哪種設置方式,把時間改成你要的時間就可以了。

㈤ java web.xml設置session過期時間為15分鍾,超時卻不會過期

你可以試試這么做

web.xml
<listener>
<listener-class>
com.listener.SessionListener
</listener-class>
</listener>
<session-config>
<session-timeout>1</session-timeout>
</session-config>

java
public class SessionListener implements HttpSessionListener{

public void sessionCreated(HttpSessionEvent event) {
HttpSession ses = event.getSession();
String id=ses.getId()+ses.getCreationTime();
SummerConstant.UserMap.put(id, Boolean.TRUE); //添加用戶
}

public void sessionDestroyed(HttpSessionEvent event) {
HttpSession ses = event.getSession();
String id=ses.getId()+ses.getCreationTime();
synchronized (this) {
SummerConstant.USERNUM--; //用戶數減一
SummerConstant.UserMap.remove(id); //從用戶組中移除掉,用戶組為一個map
}
}
}

㈥ session 失效 時間

WebWebsphereXML配置管理Servlet
session-timeout(web.xml)元素與session.setMaxInactiveInterval()函數

a) web app server中,如websphere里可以設置超時時間為30分鍾

b)在web.xml中的session-config配置
session-timeout元素(WEB.XML文件中的元素)用來指定默認的會話超時時間間隔,以分鍾為單位。該元素值必須為整數。如果 session-timeout元素的值為零或負數,則表示會話將永遠不會超時。如:

1. <session-config>
2. <session-timeout>30</session-timeout>
3. </session-config>
4. //30分鍾

setMaxInactiveInterval設置的是當前會話的失效時間,不是整個web的時間,單位為以秒計算。如果設置的值為零或負數,則表示會話將永遠不會超時。常用於設置當前會話時間。
c) 在程序中手動設置
java 代碼

1. session.setMaxInactiveInterval(30 * 60);

想問兩個問題:

一、它們的優先順序?我想C應該最優先,但a和b 呢

二、如果一個應用的多個地方設置了不同的interval,會對session有影響嗎?

如後台管理用戶登錄設置超時時間為30分鍾,前台用戶登錄設置超時時間為15分鍾。

此時的setMaxInactiveInterval是隻影響servlet容器session的實例?還是影響整個容器(如果是這個,就有問題了)
不對,是可以設置的,三種方式設置:

1. 在server.xml中定義context時採用如下定義:

<Context path="/livsorder" docBase="/home/httpd/html/livsorder"
defaultSessionTimeOut="3600" isWARExpanded="true"
isWARValidated="false" isInvokerEnabled="true"
isWorkDirPersistent="false"/>

2. 在web.xml中通過參數指定:

<session-config>
<session-timeout>30</session-timeout>
</session-config>

其中30表示30分鍾

3. 在程序中通過servlet api直接修改
HttpSession ses = request.getSession();
ses.setMaxInactiveInterval(10);
設置單位為秒,設置為-1永不過期。
因為可能要用到cookie,所以學了一下,但又發現不用了,為了以後不忘,寫下此篇筆記。

一、cookie簡介 瀏覽器與WEB伺服器之間是使用HTTP協議進行通信的;而HTTP協議是無狀態協議。也就是說,當某個用戶發出頁面請求時,WEB伺服器只是簡單的進行響應,然後就關閉與該用戶的連接。因此當一個請求發送到WEB伺服器時,無論其是否是第一次來訪,伺服器都會把它當作第一次來對待,這樣的不好之處可想而知。為了彌補這個缺陷,Netscape開發出了cookie這個有效的工具來保存某個用戶的識別信息, 它是一種WEB伺服器通過瀏覽器在訪問者的硬碟上存儲信息的手段。 它是伺服器發送給瀏覽器的體積很小的純文本信息。 定義:cookie是Web瀏覽器存儲的少量命名數據,它與某個特定的網頁和網站關聯在一起。 cookie實際上和某一網站和網頁關聯的,保存用戶一定信息的文本文件。

二、cookie的屬性 除名字與值外,每個cookie有四個可選屬性: 1.expires:指定cookie的生存期。默認情況下cookie是暫時的,瀏覽器關閉就失效。 2.path:它指定了與cookie關聯在一起的網頁。默認是在和當前網頁同一目錄的網頁中有效。 如果把path設置為"/",那麼它對該網站的所有網頁都可見了。 3.domain:設定cookie有效的域名, 如果把path設置為"/",把domain設為".sohu.com",那麼 A.sohu.com和B.sohu.com 的所有網頁都能夠訪問此cookie。 4.secure:布爾值,它指定了網路上如何傳輸cookie。默認情況下,cookie是不安全的, 可以通過一個不安全的,普通的HTTP協議傳輸;若設置cookie為安全的,那麼它將 只在瀏覽器和伺服器通過HTTPS或其它的安全協議連接在一起時才被傳輸。

三、cookie的操作 cookie可以用javascipt來操作,也可以用JSP來操作。 下面給大家我寫的幾個例子,相信大家一看就明白了: 1.javascript 操作:
<script language="javascript">
//設置cookie,cookie有效期時間未GMT時間(距1970年1月1日臨時的毫秒)
//例如可以設置setCookie("password","12345",(3600000*24*180)),180有效
function setCookie (name, value, expires) {
var expdate = new Date();
expdate.setTime(expdate.getTime() + expires);
document.cookie = name + "=" + escape(value) +
"; expires=" + expires.toGMTString() + "; path=/";
}

//根據cookie名,取得cookie值
function getCookie(name) {
var search;
search = name + "="
offset = document.cookie.indexOf(search)
if (offset != -1) {
offset += search.length ;
end = document.cookie.indexOf(";", offset) ;
if (end == -1)
end = document.cookie.length;
return unescape(document.cookie.substring(offset, end));
}
else
return "";
}

//刪除某一cookie
function deleteCookie(name) {
var expdate = new Date();
expdate.setTime(expdate.getTime() - (3600 *24* 1000 * 1));
setCookie(name, "", expdate);
}

//檢查是否存在此cookie
function checkCookie(cookieName,cookieValue){
if (getCookie(cookieName)==cookieValue){
return true;
}else{
return false;
}
}
</script>

2.jsp 操作: java中有個Cookie類:javax.servlet.http.Cookie

//讀取cookie的通用類,以Cookie[] 做參數傳個構造函數;
package com.test;
import javax.servlet.http.*;
/**
* @author sheng_li
*
*/
public class ComCookie {
private Cookie[] cookies;
private Cookie cookie;
public ComCookie(Cookie[] cs){
cookies = cs;
}
/**
* 通過cookieName,取得cookieValue,如果沒有此cookie則返回默認值
* @param cookieName
* @param defaultValue
* @return
*/
public String getCookieValue(String cookieName,String defaultValue) {
for(int i=0; i< cookies.length; i++) {
Cookie cookie = cookies[i];
if (cookieName.equals(cookie.getName()))
return(cookie.getValue());
}
return(defaultValue);
}
/**
* 類方法,通過cookieName,取得cookieValue
* @param cookies
* @param cookieName
* @param defaultValue
* @return
*/
public static String getCookieValue(Cookie[] cookies,
String cookieName,
String defaultValue) {
for(int i=0; i < cookies.length; i++) {
Cookie cookie = cookies[i];
if (cookieName.equals(cookie.getName()))
return(cookie.getValue());
}
return(defaultValue);
}
}

JSP中:(以下內容來源於網路)

JSP是使用如下的語法格式來創建cookie的: Cookie cookie_name =new Cookie("Parameter","Value"); 例如:Cookie newCookie =new Cookie("username","waynezheng"); response.addCookie(newCookie); 解釋:JSP是調用Cookie對象相應的構造函數Cookie(name,value)用合適的名字和值來創建Cookie,然後 Cookie可以通過HttpServletResponse的addCookie方法加入到Set-Cookie應答頭,本例中Cookie對象有兩個字元串參數:username,waynezheng。注意,名字和值都不能包含空白字元以及下列字元: @ : ;? , " / [ ] ( ) =

處理Cookie的屬性 看到這里,有的朋友又要問了:我光知道如何創建Cookie有什麼用呀?是呀,光知道如何創建Cookie而不知道怎麼使用是不夠的。在JSP中,程序是通過cookie.setXXX設置各種屬性,用cookie.getXXX讀出cookie的屬性,現把Cookie的主要屬性,及其方法列於下,供大家參考: 讀取客戶端的Cookie

類型 方法名 方法解釋
String getComment() 返回cookie中注釋,如果沒有注釋的話將返回空值.
String getDomain() 返回cookie中Cookie適用的域名. 使用getDomain() 方法可以指示瀏覽器把Cookie返回給同 一域內的其他伺服器,而通常Cookie只返回給與發送它的伺服器名字完全相同的伺服器。注意域名必須以點開始(例如.yesky.com)
int getMaxAge() 返回Cookie過期之前的最大時間,以秒計算。
String getName() 返回Cookie的名字。名字和值是我們始終關心的兩個部分,筆者會在後面詳細介紹 getName/setName。
String getPath() 返回Cookie適用的路徑。如果不指定路徑,Cookie將返回給當前頁面所在目錄及其子目錄下 的所有頁面。
boolean getSecure() 如果瀏覽器通過安全協議發送cookies將返回true值,如果瀏覽器使用標准協議則返回false值。
String getValue() 返回Cookie的值。筆者也將在後面詳細介紹getValue/setValue。
int getVersion() 返回Cookie所遵從的協議版本。
void setComment(String purpose) 設置cookie中注釋。
void setDomain(String pattern) 設置cookie中Cookie適用的域名
void setMaxAge(int expiry) 以秒計算,設置Cookie過期時間。
void setPath(String uri) 指定Cookie適用的路徑。
void setSecure(boolean flag) 指出瀏覽器使用的安全協議,例如HTTPS或SSL。
void setValue(String newValue) cookie創建後設置一個新的值。
void setVersion(int v) 設置Cookie所遵從的協議版本。

在Cookie發送到客戶端前,先要創建一個Cookie,然後用addCookie方法發送一個HTTP Header。 JSP將調用request.getCookies()從客戶端讀入Cookie,getCookies()方法返回一個HTTP請求頭中 的內容對應的Cookie對象數組。你只需要用循環訪問該數組的各個元素,調用getName方法檢查各 個Cookie的名字,至找到目標Cookie,然後對該Cookie調用getValue方法取得與指定名字關聯的值 。

例如
<%
String userName=request.getParameter("username");//從提交的HTML表單中獲取,用戶名
Cookie theUsername=new Cookie("username",userName);//以"username",userName值/對創建一個Cookie
response.addCookie(theUsername);
%>
..............
<%
Cookie myCookie[]=request.getCookies();//創建一個Cookie對象數組
for(int n=0;n=cookie.length-1;i++);//設立一個循環,來訪問Cookie對象數組的每一個元素
Cookie newCookie= myCookie[n];
if(newCookie.getName().equals("username")); //判斷元素的值是否為username中的值
{%>
你好,<%=newCookie.getValue()%>!//如果找到後,向他問好
<%}
%>
設置Cookie的存在時間,及刪除Cookie 在JSP中,使用setMaxAge(int expiry)方法來設置Cookie的存在時間,
參數expiry應是一個整數。正值表示cookie將在這么多秒以後失效。 注意這個值是cookie將要存在的最大時間,
而不是cookie現在的存在時間。 負值表示當瀏覽器關閉時,Cookie將會被刪除。零值則是要刪除該Cookie。 如:
<%
Cookie deleteNewCookie=new Cookie("newcookie",null);
deleteNewCookie.setMaxAge(0);
deleteNewCookie.setPath("/");
response.addCookie(deleteNewCookie);
%>

tomcat設置session失效時間
分類: Java 2011-11-09 18:50 107人閱讀 評論(0) 收藏 舉報
tomcat在5.5以後,就沒有自帶admin項目了,如果要從http://localhost:8080界面進入tomcat管理頁面,需要從網上下載對應的tomcat-admin.zip,舉個例子,如果你的tomcat是5.5.30的,需要從http://tomcat.apache.org/download-55.cgi下載(在下載頁面的Binary Distributions欄下的第四大項,Administration Web Application 即是)。解壓以後,得到的文件夾里,東西都已經給你整理好了。

你只需要按照解壓文件的目錄,這些文件到$CATALINA_BASE對應的目錄下,項目映射文件admin.xml中的路徑稍微改下,然後重啟tomcat就行了。

在tomcat的conf目錄下的tomcat-user.xml文件中還需要加

<role rolename="standard"/>

<role rolename="manager"/>

<role rolename="admin"/>

<user username="admin" password="admin" roles="standard,manager,admin"/>

來添加一個admin用戶,這樣就可以訪問tomcat的admin頁面了。

同樣,我們可以訪問tomcat的manager頁面來查看session的信息,在tomcat6.0以上的版本是自帶了manager這個項目的,如果是tomcat5.5.x的版本也需要去網上下載的,配置同admin。

這里說說session過期時間的設置,一般來說方法有四種:

1. 在tomcat——>conf——>servler.xml文件中定義:

<Context path="/test" docBase="/test"

defaultSessionTimeOut="3600" isWARExpanded="true"

isWARValidated="false" isInvokerEnabled="true"

isWorkDirPersistent="false"/> //單位是秒

2. 在web.xml中定義:這個針對具體項目

<session-config>

<session-timeout>20</session-timeout>//單位是分鍾,0表示session不會失效

</session-config>

3. 在程序中定義:這個就針對具體頁面了

session.setMaxInactiveInterval(30*60);//單位是秒

4.在conf/context.xml文件設置:這個是針對所有的項目了

打開context.xml,在<Context>節點下添加如下<Manager>節點:

<Manager className="org.apache.catalina.session.PersistentM anager" >

debug=0

saveOnRestart="true"

maxActiveSession="-1"

minIdleSwap="-1"

maxIdleSwap="-1"

maxIdleBackup="-1"

<Store className="org.apache.catalina.session.FileStore" directory="../session" />

//這里代表的是文件持久化.也可以自己實現Store

</Manager>

saveOnRestart:(true/false)配置服務重啟工程中對session的處理,若為true,則關閉前把有效的session保存,啟動後重新載入 maxActiveSession:活動狀態Session的最大數,為-1時則不限制,否則Session Manager將會把超出的Session對象轉移到Session Store中。

minIdleSwap:Session不活動的最短時間,超過該時間,Session Manager 可能會把該Session對象轉移到Session Store中,單位為秒。

maxidleSwap:Session不活動的最長時間,超過該時間,Session Manager 將會把該Session對象轉移到Session Store中,該Session將不在內存中。

maxidleBackup: Session不活動的最長時間,超過該時間,Session Manager 將會把該Session對象備份到Session Store中,但該Session對象依然存在內存中。

<Store>指定實現持久化的類和Session存放的文件位置,如該例子中指定的類是:org.apache.catalina.session.FileStore,而Session對象存放的目錄則是tomcat根目錄下的 session文件夾(當然自己創建)

在第四種配置中,配置完後可以寫一個簡單的jsp頁面,在頁面上顯示本次用戶訪問的Session ID,然後重起tomcat,再刷新該頁面,可以看到該Session Id不變,而在/session目錄下自動生成一個以session id為名,以「session」為擴展名的文件。該Session的持久化配置成功。

㈦ web前端sesessionstorage的過期時間怎麼設置

1、local storage沒有過期時間的功能,應該是指sessionStorage,
2、sessionStorage與localStorage 同屬 webstorage 規范,API 一致不過是帶有生命周期的,其生命周期 以頁面 session 為界(不能自己設置過期時間)。
3、只要瀏覽器保持打開,頁面刷新和重載都會保持 sessionStorage 內容,關閉的時候清除。新建標簽頁和新建窗口則屬於新的 session。

回答不容易,希望能幫到您,滿意請幫忙採納一下,謝謝 !

㈧ web開發中在一次會話過程中Session會發送給瀏覽器一個名為JESSIONID的Cookie,那麼該Cookie的有效期為多少

第一次訪問伺服器的時候,會在響應頭裡面看到Set-Cookie信息(只有在首次訪問伺服器的時候才會在響應頭中出現該信息)
瀏覽器會根據響應頭的set-cookie信息設置瀏覽器的cookie並保存之
注意此cookie由於沒有設置cookie有效日期,所以在關閉瀏覽器的情況下會丟失掉這個cookie。

㈨ java web為什麼我的session過期時間設為永不過期,瀏覽器session還是會過期

用cookie,把失效時間設置很長或者永不過期

㈩ tomcat session 有效期 固定嗎

不是固定的,tomcat的session默認過期時間是30分鍾,也可以修改它的過期時間,在web.xml中進行配置:
60
單位是分鍾。
希望能幫到你。

閱讀全文

與websession有效期相關的資料

熱點內容
內容無版權今日頭條 瀏覽:327
房產糾紛訴訟時效是多長時間 瀏覽:269
無形資產年限怎麼確定 瀏覽:542
工商登記人員工作總結2018 瀏覽:799
我要發明機器人300字 瀏覽:341
轉讓合作書 瀏覽:512
上海聯瑞知識產權代理有限公司寧波分公司 瀏覽:364
西安私人二手挖機轉讓 瀏覽:698
債務股權轉讓 瀏覽:441
食堂轉讓合同範本 瀏覽:335
廣西華航投資糾紛 瀏覽:902
萌分期投訴 瀏覽:832
金軟pdf期限破解 瀏覽:730
馬鞍山學化妝 瀏覽:41
膠州工商局姜志剛 瀏覽:786
了解到的發明創造的事例 瀏覽:391
2012年中國知識產權發展狀況 瀏覽:773
合肥徽之皇知識產權代理有限公司 瀏覽:636
天津企興知識產權待遇 瀏覽:31
二項基本公共衛生服務項目試題 瀏覽:305