標準の JSP 機能を直接使用する方法はありません。コントローラーの手段がないため、オールドスクールの<jsp:useBean>アプローチもMVCとはほど遠いものです。Spring MVC、JSFなどのビューとして JSP をサポートする既存の MVC フレームワークを選択するだけです (ただし、JSF はバージョン 2.0 以降の JSP の後継である Facelets をデフォルトのビュー テクノロジとして使用します)、そのマネージド Bean 機能を使用します。最新の MVC フレームワークは注釈をサポートしています。
この特定のケースでは、アプリケーション スコープ Bean を使用して、MVC フレームワークを必要とせずにアノテーションを使用する完全に異なる代替手段は、ServletContextListenerでアノテーションが付けられた を使用することです@WebListener。
@WebListener
public void Config implements ServletContextListener {
@Override
public void contextInitialized(ServletContextEvent event) {
event.getServletContext().setAttribute("p", new Person());
}
// ...
}
Person(ただし、アプリケーション スコープにa のようなものがあるのはかなり奇妙ですが...)
セッション スコープの場合は実装できHttpSessionListener、リクエスト スコープの場合はServletRequestListener. この方法はかなり不器用です。まともなMVCフレームワークを本当に検討したいと思います。