访问或添加request、session、application属性

一、通过ActionContext类获取session、application从而往里面添加或访问属性
配置文件:

<action name="testAttri" class="cn.itcast.action.LoginAction" method="AttributeTest">
         <result name="success">/WEB-INF/page/attribute.jsp</result>
         </action>

Action类:

    public String AttributeTest() {
        ActionContext act = ActionContext.getContext();
        act.getApplication().put("app", "全局范围");
        act.getSession().put("ses", "会话范围");
        act.put("req", "请求范围");
        return "success";       
    }

jsp:

    <body>
    ${applicationScope.app }
    ${session.ses }
    ${req }
    </body>

二、获取HttpServletRequest/HttpSession/ServletContext/HttpServletResponse对象
包含方法1和方法2.
方法1:通过ServletActionContext类直接获取

HttpServletRequest request = ServletActionContext.getRequest();
        request.getSession().setAttribute("sess", "session");
        ServletContext servletContext = ServletActionContext.getServletContext();
        servletContext.setAttribute("con", "Scontext");
        HttpServletResponse response = ServletActionContext.getResponse();

方法2:通过指定接口,由struts框架运行时注入:

public class LoginAction implements ServletRequestAware,ServletResponseAware,ServletContextAware{
    private ServletContext context;
    private HttpServletResponse res;
    private HttpServletRequest req;

@Override
    public void setServletContext(ServletContext arg0) {
        this.context = arg0;
    }

    @Override
    public void setServletResponse(HttpServletResponse arg0) {
        this.res = arg0;
    }

    @Override
    public void setServletRequest(HttpServletRequest arg0) {
        this.req = arg0;
    }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 一. Java基础部分.................................................
    wy_sure阅读 9,296评论 0 11
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 33,397评论 18 399
  • action中如何接受页面传过来的参数 第一种情况:(同名参数) 例如:通过页面要把id=1 name=tom a...
    清枫_小天阅读 8,378评论 1 22
  • spring mvc 工作机制(原理): DispatcherServlet主要用作职责调度工作,本身主要用于控制...
    java大湿兄阅读 5,890评论 5 24
  • 一树繁花, 雨轻柔耳语, 青春的誓言,洒落满地。 六月的风拾花为笔, 用娴熟的手法写下——毕业快乐! 我曾,期待,...
    多样阅读 2,241评论 0 4

友情链接更多精彩内容