5

これは、Struts2のセッションに値を格納する正しい方法ですか?

Map<String, Object> session = ActionContext.getContext().getSession();
session.put("user", "USERNAME");
4

1 に答える 1

1

struts 2.x の SessionAware インターフェイスでは、HTTP セッションの動作を Action クラスに取り込むために、Action クラスは SessionAware インターフェイスを実装する必要があります。

SessionAware インターフェイスから実装する場合は、アクション クラスで SessionAware によってメソッド setSession() をオーバーライドする必要があります。アクション クラスを SessionAware インターフェースから実装すると、struts 2 コントローラーは正確にセッション オブジェクトを注入しませんが、同様の動作で Map オブジェクトを注入します。

 Map m;
 public void setSession(Map m)
    {
        this.m=m;
    }

 public String execute()
    {
        m.put("user", "USERNAME");


        return SUCCESS;
    }
于 2013-02-24T13:45:12.883 に答える