欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Servlet会话技术基础解析

程序员文章站 2024-02-19 18:45:16
一、cookie 1、设置cookie,内容为时间 cookie cookie = new cookie("lastaccesstime",system.cur...

一、cookie

1、设置cookie,内容为时间

cookie cookie = new cookie("lastaccesstime",system.currenttimemillis()+"");
cookie.setmaxage(1*30*24*3600);//设置有效期1个月
cookie.setpath("/项目名称");//访问整个项目都带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转化为10进制long型
   date date = new date(cookievalues);
   response.getwrite().print(date);
  }
}

二、session(getsession()——>session30分钟未使用)

1、设置session

httpsession session = request.getsession();
session.setattribute("name","哈哈哈哈");

2、得到session

httpsession session = request.getsession();
//httpsession session = request.getsession(false);//只获取不创建
string str = (string)session.getattribute("name");

3、session配置,配置时间

<seeeion-config>
  <session-timeout>20</session-timeout>  
</session-config>

4、session摧毁

httpsession session = request.getsession();
session.invalidate();
//session.removeattribute("xxx");//移除某个session

5、使用地址重写方式获得session,只有在cookie禁用下会重写

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>");

三、客户端表单提交问题

1、防止提交空密码

<form action="/项目/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("请输入");
    return false;
   }  
  }
</script>

2、防止重复提交

<form action="/项目/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>

总结

以上就是本文关于servlet会话技术基础解析的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!