JAVA编程:浏览器的cookie问题

zoutuo 2009-01-27 06:57:35
通过用户输入的用户名和密码,我已经判断在数据库中存在这个用户。这时候我想弄一个cookie放在用户的电脑中,因为如果没有这个东西,页面刷新之后,用户还得重新登录,这种情况非常糟糕,所以我想设置一个cookie。或者不设置这个,用别的能不能代替他?谢谢!请写详细一些,本人菜鸟!
...全文
75 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
zoutuo 2009-01-27
  • 打赏
  • 举报
回复
那请问如果想删除session里的值(访退出功能),在不关闭网页的情况下如何操作?
zoutuo 2009-01-27
  • 打赏
  • 举报
回复
zoutuo 2009-01-27
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 GkfSyser 的回复:]
HTML code
<%
Userslogin userslogin = (Userslogin) session.getAttribute("userslogin");
if (userslogin != null) {
%>
[/Quote]
大哥,你就是我的救命恩人!的确,我忘记用session取了,换了session就ok了!万分感谢!
GkfSyser 2009-01-27
  • 打赏
  • 举报
回复

<%
Userslogin userslogin = (Userslogin) session.getAttribute("userslogin");
if (userslogin != null) {
%>
zoutuo 2009-01-27
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 GkfSyser 的回复:]
引用楼主 zoutuo 的帖子:
因为如果没有这个东西,页面刷新之后,用户还得重新登录,这种情况非常糟糕

你应该用Session,当你严正完用户正确后把他存放在Session里
if (严正成功)
{
session.setAttribute("user",user);
}
在jsp上加入
{
User user = (User)session.getAttribute("user");
if (user==null)
{
跳转到登陆jsp
}
}
[/Quote]
首先谢谢你的回复!其次我补充一下,我是用Ajax验证用户名与密码,我是将页面的值传给一个js,在js中把值传给后台,通过后台验证用户名与密码是否正确,最后将文本结果返回给js,js将结果显示在页面的<div>上。
用了您的方法,request.getSession().setAttribute("userslogin", userslogin);(我是写在struts的action中的),但这个如何返回到js中去呢?我这么写了,页面端的代码是:
<table width="730" border="0">
<tr>
<td>
<div id="user_request">
<%
Userslogin userslogin = (Userslogin) request
.getAttribute("userslogin");
if (userslogin != null) {
%>
abc
<%
} else {
%>
<table>
<tr>
<td width="220">
用户名:
<input type="text" id="username" name="password"
width="50">
</td>
<td width="500">
密码:
<input type="password" id="password" name="password"
width="20">
<input type="button" value="登陆" onclick="verify()">
  
<a
href="<%=request.getContextPath()%>/pages/register.jsp">注册</a>
</td>
</tr>
</table>
<%
}
%>
</div>
</td>
</tr>
</table>

可是不行。请指教!
GkfSyser 2009-01-27
  • 打赏
  • 举报
回复
[Quote=引用楼主 zoutuo 的帖子:]
因为如果没有这个东西,页面刷新之后,用户还得重新登录,这种情况非常糟糕
[/Quote]
你应该用Session,当你严正完用户正确后把他存放在Session里
if (严正成功)
{
session.setAttribute("user",user);
}
在jsp上加入
{
User user = (User)session.getAttribute("user");
if (user==null)
{
跳转到登陆jsp
}
}
GkfSyser 2009-01-27
  • 打赏
  • 举报
回复
[Quote=引用楼主 zoutuo 的帖子:]
页面刷新之后,用户还得重新登录,这种情况非常糟糕,
[/Quote]

根据你的要求你应该用Session
在你验证完用户后把用户名存放在session里,下次登陆jsp时候先验证下session中是否存在用户
if (验证成功 )
{
session.setAttribute("username",username);
}

jsp里
String username= session.getAttribute("username");
if (!"".equls(username) || username==null)
{
跳转到登陆jsp..
}

67,538

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧