Servlet會(huì)話技術(shù)基礎(chǔ)解析
一、cookie
1、設(shè)置cookie,內(nèi)容為時(shí)間
Cookie cookie = new Cookie("LastAccessTime",System.currentTimeMillis()+"");
cookie.setMaxAge(1*30*24*3600);//設(shè)置有效期1個(gè)月
cookie.setPath("/項(xiàng)目名稱");//訪問(wèn)整個(gè)項(xiàng)目都帶cookie
2、獲得cookie信息
Cookie cookies[] = request.getCookies();
for(int i = 0;cookie!=null&&i<cookies.length;i++){
if(cookies[i].getName().equals("LastAccessTime")){
long cookieValues = Long.parseLong(cookies[i].getVlues());//將String轉(zhuǎn)化為10進(jìn)制Long型
Date date = new Date(cookieValues);
response.getWrite().print(date);
}
}
二、session(getSession()——>session30分鐘未使用)
1、設(shè)置session
HttpSession session = request.getSession();
session.setAttribute("name","哈哈哈哈");
2、得到session
HttpSession session = request.getSession();
//HttpSession session = request.getSession(false);//只獲取不創(chuàng)建
String str = (String)session.getAttribute("name");
3、session配置,配置時(shí)間
<seeeion-config> <session-timeout>20</session-timeout> </session-config>
4、session摧毀
HttpSession session = request.getSession();
session.invalidate();
//session.removeAttribute("XXX");//移除某個(gè)session
5、使用地址重寫方式獲得session,只有在cookie禁用下會(huì)重寫
request.getSession();
String url1 = response.encodingURL("需要重寫的地址1");
String url2 = response.encodingURL("需要重寫的地址2");
PrintWriter out = response.getWriter;
out.print("<a href = '"+url1+"'>XXXX</a>");
out.print("<a href = '"+url2+"'>YYYY</a>");
三、客戶端表單提交問(wèn)題
1、防止提交空密碼
<form action="/項(xiàng)目/xxx" method ="post" onsubmit="return dosubmit(this)">
用戶名:<input type="text" name="username"><br/>
密碼:<input type="password" name = "password"><br/>
<input type="submit" value="提交">
</form>
<script>
function dosubmit(obj){
if(obj.category.value==''){
alter("請(qǐng)輸入");
return false;
}
}
</script>
2、防止重復(fù)提交
<form action="/項(xiàng)目/xxx" method ="post" onsubmit="return dosubmit()">
用戶名:<input type="text" name="username"><br/>
密碼:<input type="password" name = "password"><br/>
<input type="submit" value="提交">
</form>
<script>
function dosubmit(){
var iscommitted = false;
if(!iscommitted){
iscommitted = true;
return true;
}else{
return false;
}
}
</script>
總結(jié)
以上就是本文關(guān)于Servlet會(huì)話技術(shù)基礎(chǔ)解析的全部?jī)?nèi)容,希望對(duì)大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站其他相關(guān)專題,如有不足之處,歡迎留言指出。感謝朋友們對(duì)本站的支持!
相關(guān)文章
springboot使用log4j2異步日志提升性能的實(shí)現(xiàn)方式
這篇文章主要介紹了springboot使用log4j2異步日志提升性能,異步日志實(shí)現(xiàn)方式:將日志存入一個(gè)單獨(dú)的隊(duì)列中,有一個(gè)單獨(dú)的線程從隊(duì)列中獲取日志并寫入磁盤文件,需要的朋友可以參考下2022-05-05
SpringBoot集成Flyway進(jìn)行數(shù)據(jù)庫(kù)版本遷移管理的步驟
這篇文章主要介紹了SpringBoot集成Flyway進(jìn)行數(shù)據(jù)庫(kù)版本遷移管理的步驟,幫助大家更好的理解和學(xué)習(xí)使用SpringBoot框架,感興趣的朋友可以了解下2021-03-03
Java中常見(jiàn)的XML解析方法與應(yīng)用詳解
XML(eXtensible Markup Language)是一種用于存儲(chǔ)和傳輸數(shù)據(jù)的標(biāo)記語(yǔ)言,被廣泛應(yīng)用于表示和交換獨(dú)立于應(yīng)用程序和硬件平臺(tái)的結(jié)構(gòu)化信息,下面我們就來(lái)看看它的常見(jiàn)解析方法有哪些吧2024-01-01
SpringBoot+Mybatis plus實(shí)現(xiàn)多數(shù)據(jù)源整合的實(shí)踐
本文主要介紹了SpringBoot+Mybatis plus實(shí)現(xiàn)多數(shù)據(jù)源整合的實(shí)踐,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-10-10
Spring Boot 中的自動(dòng)配置autoconfigure詳解
這篇文章主要介紹了Spring Boot 中的自動(dòng)配置autoconfigure詳解,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2024-01-01
使用dubbo+zookeeper+spring boot構(gòu)建服務(wù)的方法詳解
這篇文章主要給大家介紹了關(guān)于如何使用dubbo+zookeeper+spring boot構(gòu)建服務(wù)的相關(guān)資料,文中通過(guò)示例代碼及圖片介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2018-05-05
java利用多線程和Socket實(shí)現(xiàn)猜拳游戲
這篇文章主要為大家詳細(xì)介紹了java利用多線程和Socket實(shí)現(xiàn)猜拳游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-08-08
java 使用poi 導(dǎo)入Excel數(shù)據(jù)到數(shù)據(jù)庫(kù)的步驟
這篇文章主要介紹了java 使用poi 導(dǎo)入Excel 數(shù)據(jù)到數(shù)據(jù)庫(kù)的步驟,幫助大家更好的理解和使用Java,感興趣的朋友可以了解下2020-12-12

