JavaWeb中Session一直改变的一个原因
来源:互联网 发布:泼墨字软件 编辑:程序博客网 时间:2024/05/19 00:42
这是首次发博客,还是很激动的,有木有*_*!废话不多说,说正题了
先说问题:
就是做JavaWeb项目的时候,session总是出问题,登录进去之后,在后台把用户名存入session,然后跳转到另一个页面,在这个页面的session还是没问题的,但是从这个页面再次跳转到其他页面或者其他的Servlet或者Action,session就会消失,也可以说重置,查看session id 的话会发现,session id 已经改变,并且更甚的是,每次登录的session id 也不一样,给人一种错觉就是整个session都是不好的,唉!
为了满足各种正在焦急的童鞋,先说这种问题的原因所在:
其实,原因很简单,就是项目名字的问题,或者是用了某个符号,或许是用了中文。所以,只要把建项目时候把名字定义为英文即可,当然最好不要直接在原来的项目里修改,因为修改后发布之后(我用的Tomcat)后的项目名称没有变,也可以直接修改发布后的项目文件夹名字(就是发布到服务器地址的里面的文件夹),这个不多说了,主要原因知道后,什么都好办。
下面简单说下自己在跟这个问题做斗争的过程,感兴趣的看看咯:
这个问题是在去年学校让做课程设计时候遇到的,当它出现这个问题的时候,我一度觉得是我对session了解的太少(其实真的了解的不多),我认为session可能不是指的我理解的那种会话,然后就是各种查找session的资料,一直到去年那个课程设计结束,这个问题都没解决。那个时候是第一次接触JavaWeb项目,没有用任何框架,全部都servlet+jsp,最完整的Dao模式,感觉那时候最先进的一点儿就是在servlet里面用到了反射,实现了一个servlet可以处理多个方法,如今自己学习了Struts2框架,看到了<action>里面配置的method属性时候,感觉到这其实就是那是我用到的反射啊。那时候也觉得用Struts2可能会解决session这个问题,但这年开始,多少学点儿struts2后,用struts2做现在这个小项目的时候,忽然发现还是不行。顿时,整个人都不好了,那时候就在心里对自己说了,一定要解决这个问题,并且要把这个发成博客。其实,我在各种尝试的时候,我都又做了一个新的小型的项目作比较,就比如这次的我专门做了一个小的Web项目,里面有一个登陆页面,登陆后进入一个action,返回到two.jsp页面,在two.jsp里面有一个超链接,链接到three.jsp,之后里面还有一个链接,链接到four.jsp,然后在action以及之后的每一个页面中都取得session id 来进行比较,然后很惊喜的发现,所有的session id 都是一样的,根本没有任何问题,然后我一度认为会不会是CSS样式之类的问题,后来就把原来的项目一点儿一点儿得往精简去改,终于,改成了基本跟测试的小项目一样的东西,还是不行,唉,各种无语,各种懊恼,就在那无意中,想到,会不会是项目名称的问题,唉。总算是拨开了云雾,守得云开见月明!
哈哈,说了好多废话,只因这是第一次发博客,加上解决了困扰我好长时间的一个问题,比较兴奋,有好多问题我都还不是很清楚,好多涉及到专业知识的我还没搞清楚,毕竟还只是个小白,喜欢看到的能够指出问题,也希望大神能解释下问什么在项目名字中加了一个符号&session就会一直变,难道是解析的时候当成不是一个项目了么?等待大神的解答,谢谢大家!
这个问题我之前各种搜的时候也见有人遇到过,但是至今为止我还没搜到有直接解决问题的帖子,也算得上是原创吧。
- JavaWeb中Session一直改变的一个原因
- JavaWeb开发中修改session的设置
- ubuntu 安装nginx后一直启动不了的一个原因
- 关于javaweb中session
- android中网络连接一直失败的原因之一
- asp.net中Session丢失的原因
- 房价一直不降的原因
- 房价一直不降的原因
- javaweb-jsp中session和application域的区别
- javaweb中session的用法及相关应用
- 获取相机图像,返回码一直不是RESULT_OK的一个原因
- session失效的原因
- 丢Session的原因
- session失效的原因
- Javaweb session及session.isNew()的理解
- jQuery中一直遗忘的一个筛选方法closest
- append中一直添加的是最后一个单词
- 数据库的一个表一直在使用中 没法查询
- 【转】sed 简明教程
- 解决Multiple dex files define Landroid/support/v4/accessibilityservice/AccessibilityServiceInfoCom
- jQuery判断checkbox是否选中的3种方法
- 下拉刷新和图片轮播控件事件冲突之解决办法(达到和淘宝京东同样的效果)
- Java学习笔记(三)类和对象
- JavaWeb中Session一直改变的一个原因
- Android开发实用小方法
- JS的toFixed方法出错 重写
- 增强360浏览器的兼容性,打开ie兼容模式,代码
- Sed 介绍和教程
- 打开Android C文件中的LOG
- Android开发:获取屏幕宽和高的两种方法(px、dip、分辨率之间的关系及px与dip互相转化)
- hdu 1800
- Qt 在TI AM335x EVM 上利用 CUPS 做網路列印