Java Session的简单运用 可用于自动登录以及保存需要的数据等
2017-10-18 15:33
288 查看
在WEB开发中,服务器可以为浏览器创建一个会话对象(session对象),通过将一个sessionID 以cookie方式返回给浏览器,只要浏览器不保持关闭或者没有超过session的失效时间,服务器就会一直保持这个session对象存放需要存储的数据,特别应用于用户自动登录。
public void UserInfo(HttpServletRequest request){
JSONObject customerInfo = new JSONObject ();
customerInfo.put("username","hanger");
customerInfo.put("username","hanger111");
// 创建或者获取session对象
HttpSession session = request.getSession();
// 修改session
session.setMaxInactiveInterval(1 * 24 * 60 * 60);// 秒后session对象将要被销毁
// 保存会话数据(作为域对象)
session.setAttribute("customerInfo", customerInfo.toString());
}
public void checkUserInfo(HttpServletRequest request,HttpServletResponse response){
// 创建或者获取session对象
HttpSession session = request.getSession();
String customerInfo = (String) session.getAttribute("customerInfo");
if (StringUtils.isEmpty(customerInfo)) {
response.sendRedirect("http://www.baidu.com");
return null; // 告诉Spring MVC我已经完成了处理 避免因为删除cookies 页面重定向携带jsessionid 报错
// 找不到服务器
} else {
response.getWriter().write(customerInfo);//将客户信息返回到页面
}
}
上述就完成了session的基本操作,当调用UserInfo时,将数据存到session,调用checkUserInfo时,检查session是否还存在,不存在就重定向你想要的页面,比如你的首页,或者登录页,否则将数据发送到页面,用于页面获取,
自动登录的具体实现就是,当请求过来,自己定义一个页面标识是否勾选自动登录的值,当判断不自动登录则不用保存session,下次请求自动重定向到指定页面,否则将数据保存到session中,checkUserInfo方法不用变。
public void UserInfo(HttpServletRequest request){
JSONObject customerInfo = new JSONObject ();
customerInfo.put("username","hanger");
customerInfo.put("username","hanger111");
// 创建或者获取session对象
HttpSession session = request.getSession();
// 修改session
session.setMaxInactiveInterval(1 * 24 * 60 * 60);// 秒后session对象将要被销毁
// 保存会话数据(作为域对象)
session.setAttribute("customerInfo", customerInfo.toString());
}
public void checkUserInfo(HttpServletRequest request,HttpServletResponse response){
// 创建或者获取session对象
HttpSession session = request.getSession();
String customerInfo = (String) session.getAttribute("customerInfo");
if (StringUtils.isEmpty(customerInfo)) {
response.sendRedirect("http://www.baidu.com");
return null; // 告诉Spring MVC我已经完成了处理 避免因为删除cookies 页面重定向携带jsessionid 报错
// 找不到服务器
} else {
response.getWriter().write(customerInfo);//将客户信息返回到页面
}
}
上述就完成了session的基本操作,当调用UserInfo时,将数据存到session,调用checkUserInfo时,检查session是否还存在,不存在就重定向你想要的页面,比如你的首页,或者登录页,否则将数据发送到页面,用于页面获取,
自动登录的具体实现就是,当请求过来,自己定义一个页面标识是否勾选自动登录的值,当判断不自动登录则不用保存session,下次请求自动重定向到指定页面,否则将数据保存到session中,checkUserInfo方法不用变。
相关文章推荐
- 安卓Shareprefrence实现记住密码自动登录以及保存在shareprefrence里面数据如何加密解密
- 数据加密实战之记住密码、自动登录和加密保存数据运用DES和MD5混合使用
- Java Web 开发利用Struts2+Spring+mybatis写一个用户登录界面以及简单的数据交互
- 关于通过java的Preferences保存简单数据到window的注册表中
- C++ 哈希表 (hashtable) 用于保存简单的数据,及数据查找,数据删除
- 玩转web之servlet(六)---session介绍及简单使用(登录验证中保存信息)
- cookie保存user数据及cookie实现自动登录
- SESSION信息保存在哪个文件目录下以及能够用来保存什么类型的数据
- ios-day13-01(私人通讯录。控制器之间的数据传递、保存密码和自动登录的实现、普通对象的归档、UITableView的局部刷新和向左滑动删除功能等等)
- [Java开发] cookie、session及实现记住密码,自动登录思路
- 玩转web之servlet(六)---session介绍及简单使用(登录验证中保存信息)
- 简单通过java的socket&serversocket以及多线程技术实现多客户端的数据的传输,并将数据写入hbase中
- JAVA通过Session和Cookie实现网站自动登录的技术
- 一个包含Jersey库的简单Web Service以及一个发送Json数据的Java客户端
- php里少用到的session_module_name,以及session的key值限制,简单将session存储为json格式数据的方法
- javaweb之Session简单例子(两个页面一个存数据,一个取数据)和session的一些基本内容
- 新浪微博JAVA开发-保存AccessToken数据,可以作为下次登录凭证
- Java 学习笔记10:获取POST数据以及简单模板输出
- SESSION信息保存在哪个文件目录下以及能够用来保存什么类型的数据
- session失效,使用ajax请求数据被拦截,此时正常的处理逻辑是跳到登录界面,而不是界面没有变化(java判断是否是ajax请求)