「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > ページのロード時に JSP からサーブレットを呼び出してデータを表示する方法

ページのロード時に JSP からサーブレットを呼び出してデータを表示する方法

2024 年 12 月 21 日に公開
ブラウズ:222

How to Call a Servlet from a JSP on Page Load to Display Data?

ページの読み込み時に JSP からサーブレットを呼び出す方法

特定のシナリオでは、JSP ファイルからサーブレットを呼び出す必要がある場合があります。 HTML フォームを使用します。たとえば、ページの読み込み時にデータベース クエリの結果を HTML テーブルに表示するには、

doGet() メソッドを使用した解決策

サーブレットの doGet() メソッドを使用すると、次のことが可能になります。リクエストの前処理と JSP へのリダイレクト。これを実装する方法は次のとおりです:

  1. サーブレットに doGet() を実装します:

    @WebServlet("/products")
    public class ProductsServlet extends HttpServlet {
        ...
        protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            ...
            request.getRequestDispatcher("/WEB-INF/products.jsp").forward(request, response);
        }
    }
  2. JSP でのサーブレット データへのアクセス:

    ...
    
    ${product.name} ${product.description} ${product.price}

これを行うと、JSP ファイルは doGet() メソッドでサーブレットによって設定されたオブジェクトにアクセスできるようになり、動的なコンテンツ生成が可能になります。

直接 JSP アクセスの防止

セキュリティ上の理由から、JSP ファイルは /WEB-INF フォルダ内に配置し、次のような直接アクセスを防止する必要があります。 users.

@WebServlet アノテーションには Servlet 3.0 以降が必要です。古いバージョンを使用している場合は、サーブレットを web.xml ファイルに手動で登録する必要があります。

参考資料

  • [サーブレット Wiki ページ]( https://wiki.java.net/bin/view/Projects/Servlets)
  • [doGet および doPost inサーブレット](https://javarevisited.blogspot.com/2011/05/java-servlet-doget-and-dopost-method-example.html)
  • [Java コードを回避する方法JSP](https://stackoverflow.com/questions/5521006/ways-to-avoid-java-code-in-jsp-in-a-best-practice-manner)
  • [サーブレットは "HTTP を返します"ステータス 404 要求されたリソース (/servlet) は利用できません"]
最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3