要实现一个登入和登出的功能,需要下面的预备知识。
session 一次连接的对象 主要用于客户端和服务器保持状态,从浏览器和客户端建立连接时开始 到客户端关闭时自动失效 无法再客户端保存状态。
cookie 客户端缓存的对象 主要用户在客户端保存登陆状态,可以设置过期时间保存在客户端。
login.JSP主要代码
<form action="login.action">
name:<input type="text" name="username">
<br>
password:<input type="password" name="password" >
<br>
<input type="button" onclick="javascript:this,form.submit()" >
</form>
loginAction.java
public class loginAction extends ActionSupport
{
HttpServletResponse response;
private String username;
private String password;
private String tips;
HttpServletRequest request;
public String getUsername()
{
return username;
}
public void setUsername(String username)
{
this.username = username;
}
public String getPassword()
{
return password;
}
public void setPassword(String password)
{
this.password = password;
}
public String getTips()
{
return tips;
}
public void setTips(String tips)
{
this.tips = tips;
}
public String execute()
{
response=ServletActionContext.getResponse();
if ("zhangjin".equalsIgnoreCase(username)
&& "password".equalsIgnoreCase(password))
{
ActionContext ctx=ActionContext.getContext();
ctx.getSession().put("username", "zhangjin");
Cookie cookie=new Cookie("username", "zhangjin");
cookie.setMaxAge(24*60*60);
response.addCookie(cookie);
return "success";
}
else
{
setTips("用户名/密码错误");
return "input";
}
}
public String logOut()
{
response=ServletActionContext.getResponse();
request=ServletActionContext.getRequest();
request.getSession().invalidate();
Cookie[] cookies=request.getCookies();
if(cookies!=null)
{
for (int i=0;i<cookies.length;i++)
{
Cookie cook=cookies[i];
if("username".equals(cook.getName()))
{
cook.setValue(null);
cook.setMaxAge(0);
response.addCookie(cook);
}
}
}
return "session";
}
}
分享到:
相关推荐
基于 Go 实现登入和登出广东天翼校园网的命令行工具Go语言(也称为Golang)是由Google开发的一种静态强类型、编译型的编程语言。它旨在成为一门简单、高效、安全和并发的编程语言,特别适用于构建高性能的服务器和...
在互联网时代,电子商务网站与社区论坛的结合已经成为一种常见的运营模式。Discuz是一款知名的社区论坛系统,而ECShop则是一款功能强大的B2C电子商务平台。当这两者进行整合时,能够实现会员数据的同步,提高用户...
【PHP+MySQL简单的登入注销源码】是一种基于PHP编程语言和MySQL数据库的用户身份验证系统。这个源码实现了基础的用户登入与登出功能,并具备防止未授权直接访问的保护措施。 首先,我们来深入理解这个系统的关键...
在电信的业务中,有一种Unix实验室出租业务。只要用户向电信运营商申请一个Unix帐号,就可以远程登录Unix实验室,并使用Unix系统。 用户使用电信运营商提供的Unix实验室的服务需要缴纳一定的费用,电信运营商需要...
网络事件审计包括网络行为审计、网络探针、Telnet登入/登出过程、Ftp登入/登出过程、Web访问等。数据库事件审计包括数据库访问源分析、用户登录数据查询、数据修改、数据删除、数据定义权限管理等。 该系统支持多种...
记住密码功能通常涉及到SharedPreferences,这是Android提供的一种轻量级数据存储方式。当用户勾选“记住密码”选项时,我们可以将用户名和加密后的密码保存在SharedPreferences中。 ```java CheckBox ...
函数说明 把登录数据按一个登入一个登出匹配成一条完整的登录过程记录。 参数说明 Vector<LogRecord> logins 日志的登入数据 * Vector<LogRecord> logouts 日志的登出数据 返回说明 Vector<MatchedRecord> 所有完整...
分布式在线考试系统是一种基于互联网的考试模式,它利用现代网络技术,为用户提供了一个公平、便捷的在线考试环境。本文将详细介绍分布式在线考试系统的实现方法和关键技术,以及如何确保考试的公平性和安全性,同时...
SpringBoot简化了Java应用的开发过程,而WebSocket则提供了一种双向通信机制,使得服务器和客户端可以实时交换数据。 首先,我们需要理解单设备登录的概念。在单设备登录系统中,同一用户在同一时间只能在一个设备...
V-link是一种视频商务服务,在视频中使用交互性元素 使用Srping启动2.3.4 使用gradle构建 使用JPA 使用MongoDB(与Mongo地图集配合使用) 使用Mongo会话 使用胸腺 使用AWS(EC2,S3) 要求 为了构建和运行应用...
- CAS提供了一种安全的机制来防止会话劫持和票证伪造,如使用加密算法对票证进行签名和验证。 - 为了防止CSRF攻击,CAS通常会生成一个隐藏的令牌,确保只有来自合法页面的请求才会被处理。 6. **多语言支持**: ...
(1)登入/登出模块:系统有两种用户:普通用户及管理员用户,管理员用户是直接设定的,是不能通过注册得到的,而普通用户则是可以通过提交注册表单注册的。用户登录时不需要选择以普通用户或管理员的方式登录,登录...
- 当前处于ISPF环境时,连续按F3键直至出现以下两种情况之一: - **返回TSO READY界面**:此时可参照上述TSO READY环境下的退出步骤。 - **出现Specify Disposition of Log Data Set界面**: - 在Process Option...
1)登入/登出模块:系统有两种用户:普通用户及管理员用户,管理员用户是直接设定的,是不能通过注册得到的,而普通用户则是可以通过提交注册表单注册的。用户登录时不需要选择以普通用户或管理员的方式登录,登录...
在IT行业中,单点登录(Single Sign-On,简称SSO)是一种身份验证机制,它允许用户在一个应用系统中登录后,无需再次输入凭证即可访问其他相互信任的应用系统。本项目基于Spring Boot框架,旨在实现同域名下的单点...
定时登录和登出则可以根据用户的需求设置时间,自动执行登录和退出操作,例如在工作时间自动登录,在非工作时间自动登出。 在实际应用中,QQ批量登录器广泛应用于企业客户服务、在线营销、社群管理等多个场景。例如...
单点登录(Single Sign-On, SSO)是一种用户在一次登录后就能访问多个相互信任的应用系统的技术。在本文档中,我们将深入理解SSO的实现细节,主要关注前端与后端的交互,以及如何与认证中心进行对接。 一、JS文件...
Java单点登录(Single Sign-On, SSO)是一种身份验证机制,允许用户在一次登录后访问多个相互关联的应用系统,而无需再次输入凭证。CAS(Central Authentication Service)是开源的SSO解决方案,由耶鲁大学开发,...
单点登录(Single Sign-On,简称SSO)是一种网络应用中的身份验证机制,它允许用户在一次登录后,就可以在多个相互独立的应用系统之间自由切换,而无需再次进行身份验证。这种技术极大地提升了用户体验,同时也简化...