Servlet会话技术基础解析
一、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会话技术基础解析的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!
相关文章
springboot使用log4j2异步日志提升性能的实现方式
这篇文章主要介绍了springboot使用log4j2异步日志提升性能,异步日志实现方式:将日志存入一个单独的队列中,有一个单独的线程从队列中获取日志并写入磁盘文件,需要的朋友可以参考下2022-05-05
SpringBoot集成Flyway进行数据库版本迁移管理的步骤
这篇文章主要介绍了SpringBoot集成Flyway进行数据库版本迁移管理的步骤,帮助大家更好的理解和学习使用SpringBoot框架,感兴趣的朋友可以了解下2021-03-03
SpringBoot+Mybatis plus实现多数据源整合的实践
本文主要介绍了SpringBoot+Mybatis plus实现多数据源整合的实践,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2021-10-10
Spring Boot 中的自动配置autoconfigure详解
这篇文章主要介绍了Spring Boot 中的自动配置autoconfigure详解,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧2024-01-01
使用dubbo+zookeeper+spring boot构建服务的方法详解
这篇文章主要给大家介绍了关于如何使用dubbo+zookeeper+spring boot构建服务的相关资料,文中通过示例代码及图片介绍的非常详细,需要的朋友可以参考借鉴,下面随着小编来一起学习学习吧2018-05-05


最新评论