ホームページ  >  記事  >  Java  >  Springの通常クラスはセッションとリクエストオブジェクトを取得します。

Springの通常クラスはセッションとリクエストオブジェクトを取得します。

(*-*)浩
(*-*)浩転載
2019-08-31 15:07:382192ブラウズ

Spring を使用する場合、通常のクラスでセッション オブジェクトやリクエスト オブジェクトを取得する必要があることがよくあります。

たとえば、一部の AOP インターセプター クラスでは、struts2 を使用する場合、struts2 にはインターフェイスがあるため、org.apache.struts2.ServletActionContext を使用してセッション オブジェクトを簡単に取得できます。

Springの通常クラスはセッションとリクエストオブジェクトを取得します。

使用法:

ServletActionContext.getRequest().getSession();

従来の Java Spring プロジェクトの通常のクラスでは、どのようにしてセッションとリクエストを取得するのでしょうか?

1. 次のコードを web.xml に追加します:

<listener>
        <listener-class>org.springframework.web.context.request.RequestContextListener</listener-class>
</listener>

2. 通常のクラスにセッションとリクエストを直接挿入できます

@Autowired
private HttpSession session;
 
@Autowired
private HttpServletRequest request;

さらに、リスナーの後最初のステップでは、コードを使用して reuqest オブジェクトを取得することもできます。

HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();

Spring Boot プロジェクトにいて、web.xml がない場合は、リスナーを手動で最初のステップ: 通常のクラスにセッションとリクエストを直接注入できます。

以上がSpringの通常クラスはセッションとリクエストオブジェクトを取得します。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はcsdn.netで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。