`
zithan
  • 浏览: 175759 次
  • 性别: Icon_minigender_1
  • 来自: 广州
文章分类
社区版块
存档分类
最新评论

Struts2保存登陆信息和注销功能例子(转)

阅读更多

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例子struts2例子struts2例子struts2例子struts2例子struts2例子struts2例子struts2例子

    struts2完整例子

    struts2完整例子struts2完整例子struts2完整例子struts2完整例子struts2完整例子struts2完整例子

    struts例子struts例子struts例子struts例子struts例子struts例子

    struts例子struts例子struts例子struts例子struts例子struts例子struts例子struts例子struts例子struts例子struts例子struts例子struts例子struts例子struts例子

    struts2简单例子

    struts2简单例子,struts2实例开发

    struts2简单登录页面

    struts2简单登录页面struts2简单登录页面struts2简单登录页面struts2简单登录页面struts2简单登录页面struts2简单登录页面struts2简单登录页面struts2简单登录页面

    struts2标签使用例子

    struts2标签使用例子 struts2标签使用例子 struts2标签使用例子struts2标签使用例子

    struts2登录小例子

    struts2登录小例子

    struts2实现用户登录注册

    简单实现注册登录功能。开发环境为eclipse,使用struts2框架。

    javaWeb_struts2框架实现简单用户注册登录

    基于javaWeb MVC模式,借助struts2框架编写,实现用户简单的注册与登录功能。 1.本demo严格按照MVC的分层模式采用myeclipse编写,可直接运行,服务器为tomcat,数据库为mysql。 2.数据库操作使用c3p0连接池和dbtuils...

    struts2标签库例子

    主要介绍了struts2的标签的详细使用例子说明

    struts2入门例子

    struts2 例子 struts.xml基本配置 页面跳转

    struts2+cas单点登陆例子

    myEclipse下含源码,在struts2下集成cas实现单点登陆的例子,例子虽然简单,基本上反映出cas的工作原理!

    struts2-2.2.3简单环境搭建例子.zip

    struts2-2.2.3简单环境搭建例子.zip 可以直接运行的,培养自信从行动开始。 struts2-2.2.3简单环境搭建例子.zip 可以直接运行的,培养自信从行动开始。 struts2-2.2.3简单环境搭建例子.zip 可以直接运行的,培养...

    struts2简单登录例子

    struts2简单登录例子

    struts2登录实例

    struts2登录实例struts2登录实例struts2登录实例struts2登录实例struts2登录实例struts2登录实例struts2登录实例

    典型的struts2例子

    根据wantedsheep提问做的一个struts2例子

    Struts2小例子

    struts2的一个简单小例子,模拟一个用户登陆的过程,如果用户名密码成功则跳转到main.jsp,否则跳转到登陆界面并显示提示信息。

    struts2学习简单例子

    eclipse的,Struts2 环境的搭建及和HelloWorld,Struts2 环境的搭建及和HelloWorld,Struts2 环境的搭建及和HelloWorld,Struts2 环境的搭建及和HelloWorld,Struts2 环境的搭建及和HelloWorld,Struts2 环境的搭建...

    struts2登陆例子

    自己做的一个简单的struts2登陆例子,拿出来与大家分享

    struts2官方自带的四个例子

    struts2官方自带的四个例子,本人亲自调通,并能运行,是学习的好材料!

Global site tag (gtag.js) - Google Analytics