`

struts2的action中使用session的方法

阅读更多
在Struts2里,如果需要在Action中使用session,可以通过下面两种方式得到
1.通过ActionContext class中的方法getSession得到
2.Action实现org.apache.struts2.interceptor.SessionAware接口的方式来对session 进行操作
下面先看一个采用第一种方式,在action中得到session的例子

写道
package s2.ex.action;


import java.util.Map;


import com.opensymphony.xwork2.ActionContext;

import com.opensymphony.xwork2.ActionSupport;


public class SessionTestAction extends ActionSupport {


public String execute() {

ActionContext actionContext = ActionContext.getContext ();

Map session = actionContext.getSession ();

session.put( "USER_NAME" , "Test User" );

return SUCCESS ;

}
}
 
在这个例子中,通过ActionContext 得到session,并往session里放置一个key为USER_NAME,值为Test User的内容。
下面是一个实现 org.apache.struts2.interceptor.SessionAware接口来对session操作的例子

package  s2.ex.action;


import java.util.Map;


import org.apache.struts2.interceptor.SessionAware;


import com.opensymphony.xwork2.ActionSupport;


public class SessionTest1Action extends ActionSupport implements SessionAware {

    private Map session ;

    public void setSession(Map session) {

       this . session = session;


    }

    public String execute() {

       this . session .put( "USER_NAME" , "Test User 1" );

       return SUCCESS ;

    }

}
 
<%@ page contentType = "text/html; charset=UTF-8" %>

<%@ page pageEncoding = "utf-8" %>

<%@ taglib prefix = "s" uri = "/struts-tags" %>

< html >

< head >

    < title > Session Test </ title >

</ head >


< body >

< h1 >< s:property value = "#session.USER_NAME" /></ h1 >

< h1 > </ h1 >

</ body >
</ html > 
 

   一般在项目中往往会往session里放置一个Object,必如说user,user里有个boolean admin和String userName,如果user里存在isAdmin的方法,在jsp中可以通过<s:if test="#session.user.admin">来判断用户有没有管理权限,通过<s:property value="#session.user.userName">或者来取得用户名。
为了您的安全,请只打开来 源可靠的网址

打开网站     取消

来自: http://hi.baidu.com/zj360202/blog/item/9ec6b54e779474c0d0c86a06.html
分享到:
评论

相关推荐

    Struts2 的Action使用session的方法

    记录了如何在struts2的action中使用session,方便以后直接引用

    Struts2的Action中获得request response session几种方法

    Struts2的Action中获得request response session几种方法

    struts1和struts2的区别

    另外,按照惯例,在Struts1.x中只有“execute”方法能调用Action, 但在Struts2中并非必要,任何声明为public String methodName() 方法,都能通过配置来调用Action。 最后,和Struts1.x最大的革命性的不同是,...

    jsp中Action使用session方法实例分析

    在Struts2里,如果需要在Action中使用session,可以通过下面两种方式得到  1.通过ActionContext class中的方法getSession得到  2.Action实现org.apache.struts2.interceptor.SessionAware接口的方式来对session...

    struts1&struts2

    2.Struts2和Struts1.x的差别, 最明显的就是Struts2是一个pull-MVC架构。 这是什么意思呢?从开发者角度看, ... Struts 2无须继承任何类型或实现任何接口,表单数据包含在Action中,通过Getter和Setter获取。

    深入浅出Struts2(附源码)

    5.1 Struts标签的使用方法 59 5.2 表单标签的共同属性 60 5.3 form标签 62 5.4 textfield、password、hidden标签 63 5.5 submit标签 65 5.6 reset标签 65 5.7 label标签 66 5.8 head标签 66 5.9 textarea...

    struts2传值

    传值问题 在其中取值的方法有两种: #+映射名, 直接写映射名。 1.不加#的方式获取(所有对象放置在栈顶): a.XXaction中有该字段的成员变量. b.XXaction中该对象返回个给...页面struts2标签保存的数据也需要使用#来获取

    ActionContext介绍(在Struts2中)

    在Web应用程序开发中,除了将请求参数自动设置到Action的字段中,我们往往也需要在Action里直接获取请求(Request)或会话 (Session)的一些信息, 甚至需要直接对JavaServlet Http的请求(HttpServletRequest),响应...

    Struts2实战总结

    3:在action类中取得request和session对象的方法 Map session = ActionContext.getContext().getSession(); HttpServletRequest request = ServletActionContext.getRequest (); 设置它们的值的方法

    POI导入导出EXCEL文件.(struts 1.x and struts2.x).doc

    web中使用POI导入导出EXCEL文件的例子 struts1.x的例子,struts2.x可以参考自己修改 1.action的写法 import java.io.*; import java.sql.*; import java.util.ArrayList; import javax.servlet....

    JSP Struts配置文件详解

    @locale:指定是否把Locale对象保存到当前用户的session中,默认为false @processorClass:指定负责处理请求的Java类的完整类名.默认org.apache.struts.action.RequestProcessor @tempDir:指定文件上传时的临时工作...

    搞定J2EE:STRUTS+SPRING+HIBERNATE整合详解与典型案例 (2)

    6.3.6 在代码中使用Log4j 6.4 改进Log4j 6.5 小结 第七章 Ant使用指南 7.1 Ant介绍 7.1.1 Ant简介 7.1.2 为什么要使用Ant 7.2 建立Ant的开发环境 7.2.1 下载Ant 7.2.2 配置Ant 7.3 Ant的使用方法 7.3.1 Ant能完成的...

    Struts2注解+JDBC+MySQL小项目应用

    将用户信息保存到Session中。 Map, Object&gt; session = ActionContext.getContext().getSession(); session.put("userName", userName); session.put("passWord", passWord); // 2. taglib标识传递 resultMsg =...

    Spring struts文档上传代码

    action: 是struts中action层 主要处理表现层的东西 facade:只是一个门面模式(不起多大的作用)主要是处理耦合性问题 session:处理业务逻辑的 dao:数据控制层 调用过程是:action --&gt;facade--&gt;session--&gt;dao ...

    fullCalendar+fancybox+struts2实现的日程安排效果

    后台服务器端采用struts2实现日程安排信息的保存,这里没有连接的数据库,只是将这些信息保存到session里,主要是为了实现保存日程安排的数据而添加的功能,要改成数据库的话只需要在action调用相应的底层代码就ok了...

    深入浅出Struts 2 .pdf(原书扫描版) part 1

    5.1 Struts标签的使用方法 59 5.2 表单标签的共同属性 60 5.3 form标签 62 5.4 textfield、password、hidden标签 63 5.5 submit标签 65 5.6 reset标签 65 5.7 label标签 66 5.8 head标签 66 5.9 textarea标签 66 ...

    jsp+struts权限管理

    import org.apache.struts2.ServletActionContext; import sunyang.functions.domain.Function; import sunyang.functions.service.IFunctionFacade; import sunyang.module.domain.Module; import ...

    搞定J2EE:STRUTS+SPRING+HIBERNATE整合详解与典型案例 (1)

    6.3.6 在代码中使用Log4j 6.4 改进Log4j 6.5 小结 第七章 Ant使用指南 7.1 Ant介绍 7.1.1 Ant简介 7.1.2 为什么要使用Ant 7.2 建立Ant的开发环境 7.2.1 下载Ant 7.2.2 配置Ant 7.3 Ant的使用方法 7.3.1 Ant能完成的...

Global site tag (gtag.js) - Google Analytics