20111025
来源:互联网 发布:一键apache php mysql 编辑:程序博客网 时间:2024/05/16 18:24
Session和Cookie的主要区别在于:
Cookie是把用户的数据写给用户的浏览器。
Session技术把用户的数据写到用户独占的session中。
Session对象由服务器创建,开发人员可以调用request对象的getSession方法得到session对象。
使用Session完成简单的购物功能:
public class BuyServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
private GoodsService gService = new GoodsServiceImpl();
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//传递的参数 获取其值
String rid = request.getParameter("id");
//类型转换
Integer id = Integer.parseInt(rid);
//执行查询
Goods entity = gService.findById(id);
//session中获取carts
HttpSession session = request.getSession();
//实现关闭浏览器 再打开(15分钟内) 加入购物车的商品还在
Cookie cookie = new Cookie("JSESSIONID",session.getId());
cookie.setMaxAge(10*60);
cookie.setPath("/201110251");
response.addCookie(cookie);
@SuppressWarnings("unchecked")
List<Goods> carts = (List<Goods>) session.getAttribute("carts");
//判断
if(carts==null){
carts = new ArrayList<Goods>();
session.setAttribute("carts", carts);
}
//添加到集合中
carts.add(entity);
//响应到另一个Servlet中
response.sendRedirect("/201110251/servlet/ListCartsServlet");
//购物车实现3(IE禁用cookie后session的处理)
// //响应到另一个Servlet中
// String url=response.encodeRedirectUrl("/201110251/servlet/ListCartsServlet");
// response.sendRedirect(url);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
this.doGet(request, response);
}
}
- 20111025
- 20111025晴
- 20111025-rhevh-blue-SDMC
- session应用 20111025
- 20111025学习总结:
- rsync远程同步主机数据
- xcode代码本地管理
- 20111024
- Iframe自适应其加载的内容高度
- milk香港版——交互设计漫谈
- 20111025
- rdiff工具使用方法
- 逆境转心境
- ARM To Introduce 64-bit Processing in ARMv8 Architecture
- zend studio 8安装与汉化
- 复制文件
- asp.net 利用VS将CS类文件生成DLL文件
- Flex导出Excel (as3xls)
- ASP.NET 安全认证(四)