Struts2保存登陆信息和注销功能例子
无论是开发WEB应用还是信息系统,总要遇到需要登录的问题。即使是开放度很高的网站,也需要有这个功能,除非是一些完全静态的网站,没有一点交互的内容。
这个是学习笔记,直奔主题。
LoginAction类是已经写好了,要记录用户登录的信息,只需要在return SUCCESS;前面加上以下这段代码就OK了。
Map<String, String> attibutes = ActionContext.getContext().getSession();//记录用户登录信息 attibutes.put("username", username); attibutes.put("password", password);
|
还需要导入包:
import java.util.Map; import com.opensymphony.xwork2.ActionContext; import com.opensymphony.xwork2.ActionSupport;
|
这样就可以保存登录的信息了,而注销功能的代码更简单。可以在LoginAction里面写然后在struts.xml那里配置,也可以新建一个LogoutActoin的类如下:
import java.util.Map;
import com.opensymphony.xwork2.ActionContext; import com.opensymphony.xwork2.ActionSupport;
public class LogoutAction extends ActionSupport {
/** * @author lipengcheng * 用户注销 */ private static final long serialVersionUID = 1L;
@SuppressWarnings("unchecked") @Override public String execute() throws Exception { Map<String, String> attibutes = ActionContext.getContext().getSession(); attibutes.remove("username"); return SUCCESS; } }
|
至于struts.xml里面的配置转向,自己写上就可以了,然后是页面的问题。一般的系统在登录之前,登录板块显示的是登陆的一个form,而登录成功之后是显示用户的信息,用户注销之后显示的又是登录的form。用struts2实现起来也是非常的简单。用struts2的<s:set>、<s:if>、<s:else>标签就可以实现。这里是它的官方网站上的介绍,它的基本逻辑是这样的。
<s:if test="%{false}">
<div>Will Not Be Executed</div>
</s:if>
<s:elseif test="%{true}">
<div>Will Be Executed</div>
</s:elseif>
<s:else>
<div>Will Not Be Executed</div>
</s:else>
|
其中test属性是必须的,作为判断显示哪个div的依据。一个实际的例子是:
<!– 这是在session中取得的值 –>
<s:set name="username" value="#session.username"></s:set> <s:set name="password" value="#session.password"></s:set> <s:if test="#username != null"> <div > 欢迎你: <s:property value="#session.username" /> <ul> <li> <a href="#">修改资料</a> <a href="/logout.action">安全退出</a> </li> </ul> </div> </s:if> <s:else> <div> <table> <tr> <s:form action="login" theme="ajax"> <s:textfield label="用户名" name="username"></s:textfield> <s:password label="密码" name="password"></s:password> <s:submit value="登录"></s:submit>
</s:form> </tr> <tr> <td> <a href="/niubonline/nodecorate/register.jsp">注册新用户</a> </td> <td> <a href="#">忘记密码</a> </td> </tr> </table> </div> </s:else>
|
在自己的机子上顺利测试通过,手头上没有书本,很多东西遇到了才上网查找资料,太麻烦了,如果手上有本书可以查就好了,网上的信息很多都重复的,COPY来COPY去的,很久才能解决一个问题。
分享到:
相关推荐
这个“struts2简单例子”是初学者理解Struts2工作原理和核心概念的一个很好的起点。让我们深入探讨一下Struts2的基础知识。 1. **MVC架构**: MVC模式是软件设计中的一个经典模式,它将应用逻辑分为三个主要部分:...
这个“struts2完整例子”压缩包提供了学习和理解Struts2核心概念的实际示例。让我们深入探讨一下Struts2的关键知识点。 1. **MVC架构**:Struts2遵循MVC设计模式,它将业务逻辑(模型)、用户界面(视图)和应用...
struts2简单登录页面struts2简单登录页面struts2简单登录页面struts2简单登录页面struts2简单登录页面struts2简单登录页面struts2简单登录页面struts2简单登录页面
在这个“Struts2登录小例子”中,我们将探讨如何利用Struts2的核心概念和组件来实现一个简单的用户登录功能。 首先,我们需要了解Struts2的基础架构。Struts2框架基于拦截器模型,它允许开发者通过配置Action类和...
Struts2是一个强大的MVC(模型-视图-控制器)框架,它在Java Web开发中被广泛应用,尤其在处理复杂的业务逻辑和用户交互时。在这个项目"struts2实现用户登录注册"中,我们将深入探讨如何利用Struts2在Eclipse开发...
在这个例子中,我们将深入探讨如何在MyEclipse环境下使用Struts2框架与CAS服务器配合,实现单点登录功能。 首先,让我们理解一下CAS(Central Authentication Service)的核心概念。CAS是一个开放源码的SSO解决方案...
Struts2是一个强大的MVC(模型-视图-控制器)框架,用于构建企业级Java Web应用程序。在Struts2框架中,标签库是其一大特色,它提供...通过实践,你会更好地掌握这些标签的功能和用法,从而在开发过程中更加得心应手。
这个"struts2入门例子"旨在帮助初学者理解Struts2的基本架构和核心功能,通过实际操作来学习如何配置Struts2框架以及实现页面跳转。 在Struts2中,`struts.xml`是核心配置文件,它是整个应用的入口点,负责定义动作...
在这个“Struts2小例子”中,我们将深入理解Struts2的核心概念以及如何通过它来实现一个简单的用户登录功能。 首先,让我们了解一下Struts2框架的基本结构。Struts2提供了一个灵活的控制器组件,允许开发者通过...
本篇将详细解析Struts2官方自带的四个例子,帮助你深入理解其核心功能和用法。 1. **HelloWorld** HelloWorld是任何框架的入门示例,Struts2也不例外。在这个例子中,我们将了解如何配置Struts2的基本元素,如`...
本示例是一个基础的Struts2登录应用,旨在帮助开发者理解如何在实际项目中实现用户认证功能。 首先,让我们详细探讨Struts2的核心概念: 1. **Action类**:在Struts2中,业务逻辑通常封装在Action类中。一个Action...
总的来说,Struts2例子是一个实践型的学习资源,帮助开发者熟悉Struts2框架的工作原理和使用方式,为构建实际的Web应用程序打下基础。通过实际操作,你可以更深入地理解MVC模式以及Struts2如何协调模型、视图和控制...
这个"struts2的小例子"是专为初学者设计的,旨在帮助他们快速理解和掌握Struts2的核心概念和用法。 在Struts2框架中,主要包含以下几个关键组件: 1. **Action类**:这是业务逻辑处理的主要场所,通常继承自`org....
这可以通过Struts2的异常处理和国际化功能实现。 10. **测试与调试** 为了确保功能的正确性,需要进行单元测试和集成测试。JUnit可以用来测试Action类,而Struts2也提供了测试插件,便于模拟请求和验证结果。 总...
实例中可能包含简单的登录注册、文件上传下载、用户管理等功能,这些实例可以帮助开发者理解Struts2的工作流程,包括请求的处理、数据的绑定、视图的渲染等。 四、Struts2包 Struts2的包结构通常包括以下部分: - `...
10. **国际化和本地化**:Struts2支持多语言环境,可以设置资源文件来处理错误消息和提示信息,适应不同的语言需求。 通过这个简单的登录示例,学习者可以了解Struts2的基本架构,以及如何使用Struts2处理用户请求...
在本项目中,开发者使用了Hibernate和Struts2这两个核心框架来构建一个基础的登录注册系统,同时还涉及到了分页查询这一重要的数据处理技术。以下是对这些知识点的详细阐述: **1. Hibernate框架:** Hibernate是一...
本示例是一个使用MyEclipse6开发的简单Struts2登录应用,旨在帮助初学者了解如何在实际项目中集成和使用Struts2框架。 首先,Struts2的核心是Action类,它负责处理用户请求。在这个登录例子中,我们可能会有一个名...
基于javaWeb MVC模式,借助struts2框架编写,实现用户简单的注册与登录功能。 1.本demo严格按照MVC的分层模式采用myeclipse编写,可直接运行,服务器为tomcat,数据库为mysql。 2.数据库操作使用c3p0连接池和dbtuils...
在这个“struts2简单登录例子”中,我们将深入探讨如何利用Struts2实现一个基本的用户登录功能。 首先,了解Struts2的核心概念至关重要。它是基于拦截器的架构,允许开发者通过定义拦截器链来处理请求,这使得业务...