做购物车的时候,我们都知道购买的东西会保存到session中,但是光这样简单的保存起来就会带来一个问题,只能呢被同一个浏览器访问到,如果用户使用不同的浏览器进行访问网页的话肯定是会出问题的。下面就来针对这样的问题解决一下。

我们知道cookie是可以实现不同浏览器之间共享的,所以解决办法就朝向了怎么实现将session对象写入到cookie中,下面是解决代码:

 protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

         response.setContentType("text/html;charset=utf-8");
PrintWriter out = response.getWriter(); //创建一个session,并放入一个属性
HttpSession session = request.getSession();
session.setAttribute("username", "张三"); //把session id保存到cookie,在保存id时一定要按照规范存放,这里区分大小写
Cookie cookie = new Cookie("JSESSIONID", session.getId());
cookie.setMaxAge(60*30);//设置声明周期
response.addCookie(cookie);//将cookie回写
}

读取session时方式还是和原来的一样,不变

解决session只能被一个浏览器访问的问题的更多相关文章

  1. Android 隐式意图 让用户选择一个浏览器访问网址

    Intent intent = new Intent(); intent.setAction(Intent.ACTION_VIEW); intent.setData(Uri.parse("h ...

  2. 转载:解决微信OAuth2.0网页授权回调域名只能设置一个的问题

    项目地址:https://github.com/HADB/GetWeixinCode 说明:微信项目很多,但是回调域名有限,经常使用,做个笔记. 解决微信OAuth2.0网页授权只能设置一个回调域名的 ...

  3. tomcat下部署两个工程时,只有一个可以访问,另一个出现404错误,该如何解决

    tomcat下部署两个工程时,只有一个可以访问,另一个出现404错误,该如何解决 在开发新项目的时候,有时候为了省时,直接把曾经做过的项目工程A拷贝成改名为B工程,然后再在B工程上进行功能的开发, 此 ...

  4. 解决微信授权回调页面域名只能设置一个的问题 [php]

    最终的解决方案是:https://github.com/liuyunzhuge/php_weixin_proxy,详细的介绍请往下阅读. 在做项目集成微信登录以及微信支付的时候,都需要进行用户授权.这 ...

  5. 解决Selenium Webdriver执行测试时,每个测试方法都打开一个浏览器窗口的问题

    虽然把WebDriver定义为一个静态变量了,但是每次执行测试都要打开多个窗口,挺浪费时间的. 找了很多中方法,比如使用setUpClass, BeforeSuite都没有完全解决问题.后来无意间发现 ...

  6. 解决微信OAuth2.0网页授权回调域名只能设置一个的问题

    https://github.com/HADB/GetWeixinCode GetWeixinCode 解决微信OAuth2.0网页授权回调域名只能设置一个的问题 使用方法 部署get-weixin- ...

  7. 解决使用IIS5.0配置的FTP服务器,客户端浏览器访问时无法获取目录列表的问题。

    我在windows xp sp3下利用iis构架了FTP服务器,允许且只允许匿名用户登陆.但刚开始配置好后,不管是使用命令行模式还是使用浏览器都发现无法访问. 于是怀疑防火墙屏蔽端口所致,果不其然,在 ...

  8. Centos7.3 进入救援模式,解决虚拟机开机引导只能看到一个横杠

    问题描述:搭建在CAS服务器中的虚拟机开机后只能看到一个横杠,因为开发同事的一些操作使glibc库/lib64/libc.so.6软链接失效 1.libc.so.6 是c运行时库 glibc的软链接, ...

  9. Key/Value之王Memcached初探:三、Memcached解决Session的分布式存储场景的应用

    一.高可用的Session服务器场景简介 1.1 应用服务器的无状态特性 应用层服务器(这里一般指Web服务器)处理网站应用的业务逻辑,应用的一个最显著的特点是:应用的无状态性. PS:提到无状态特性 ...

随机推荐

  1. python-----双色球实现(实例1)

    #输出用户指定组数的双色球信息,其中一组信息 6个红色号码获取范围(1-33),1个蓝色号码获取范围(1-16),要求一组信息中红球内号码不可重复 import randomdef get_ball( ...

  2. 函数调用的方法一共有 4 种,call,apply,bind

    1. 每个函数都包含两个非继承而来的方法:call()方法和apply()方法. 2. 相同点:这两个方法的作用是一样的. 都是在特定的作用域中调用函数,等于设置函数体内this对象的值,以扩充函数赖 ...

  3. [development][lockless][dpdk] 无锁队列

    dpdk: http://dpdk.org/doc/guides/prog_guide/ring_lib.html#ring-library linux: https://lwn.net/Articl ...

  4. falsk_蓝图(blueprint)

    蓝图(blueprint) 随着业务代码的增加,将所有代码都放在单个程序文件中,是非常不合适的.这不仅会让代码阅读变得困难,而且会给后期维护带来麻烦. 什么是蓝图 蓝图:用于实现单个应用的视图.模板. ...

  5. Kubernetes应用管理

    除了容器资源管理和调度,Kubernetes另外一个核心价值是提供了针对不同类型应用管理的API接口集合,这些API集合把针对不同类型应用的管理能力分别到Kubernetes平台中.以Web业务(Lo ...

  6. 第四节:Linux下如何解决冲突

    当出现冲突,我们push的时候,会出现: 然后pull,下拉到本地: 查看冲突: 然后进入冲突文件: 修改为: 保存退出. 提交:

  7. vim常用指令整理小结

    启动Vim后,默认是在 Normal 模式下,但是我们有时不知道是在编辑模式还是normal模式,按ESC键就可以返回normal模式.因为所有的命令都需要在Normal模式下使用,所以建议多按几下E ...

  8. yum方式安装lnmp

    1.安装mysql>>>yum -y install mariadb mariadb-server 给root用户设置密码 >>>mysqladmin -uroot ...

  9. LATCH_EX

    Description: This wait type occurs when a thread is waiting for access to a non-page data structure ...

  10. 初识Shell与Shell脚本

    初识Shell Shell 是一个用 C 语言编写的程序,Shell 既是一种命令语言,又是一种程序设计语言. Shell 是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内 ...