Struts 2访问Servlet API

在servlet中可以通过servlet API来获取Session,在Struts中如何获取Session呢?

    解析:将用户名放入session 两种方案

1. 与Servlet API解耦的访问方式

    --->01.使用ActionContext类获取ServletAPI对象对应的Map对象

    --->02.Struts2向Action注入ServletAPI对象对应的Map对象

2. 与Servlet API耦合的访问方式

解耦方式: 

方案一: 对Servlet API进行封装   ,借助ActionContext

        提供了三个Map对象访问request、session、application作用域

        通过ActionContext类获取这三个Map对象

                Object get("request")

                Map getSession()

     Map getApplication()

         案例:登陆成功后,记录用户名到Session中,登陆失败,跳会登陆页面

         步骤一:书写Action

方案二:向Action中注入ServletAPI对象对应的Map对象

       步骤一:书写Action

耦合方式:

      方式一:通过ActionContext的子类ServletActionContext实现

     方式二:向Action实例注入Servlet API对象

2.在Struts中如何保存登陆用户名 ,用Session机制

解析:在Servlet中如何获取到Session对象?

  ----->request.getSession()

在Struts中如何获取session对象

 --->ActionContext类

在Struts中通过注入,核心接口 SessionAware: setSession(Map<String,Object> map);

 

posted @ 2018-11-17 15:59  岔气的猫  阅读(215)  评论(0)    收藏  举报