Rumah >Java >javaTutorial >Bagaimana untuk Memanggil Servlet daripada JSP pada Muatan Halaman untuk Memaparkan Data?

Bagaimana untuk Memanggil Servlet daripada JSP pada Muatan Halaman untuk Memaparkan Data?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-12-08 07:08:20728semak imbas

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

Cara Memanggil Servlet daripada JSP pada Pemuatan Halaman

Dalam senario tertentu, anda mungkin perlu menggunakan servlet daripada fail JSP tanpa menggunakan borang HTML. Contohnya, untuk memaparkan hasil pertanyaan pangkalan data dalam jadual HTML apabila halaman dimuatkan.

Penyelesaian Menggunakan Kaedah doGet()

Kaedah doGet() dalam servlet membenarkan meminta prapemprosesan dan pengalihan kepada JSP. Begini cara anda boleh melaksanakan ini:

  1. Laksanakan doGet() dalam Servlet:

    @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. Akses Data Servlet dalam JSP:

    <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
    ...
    <table>
        <c:forEach items="${products}" var="product">
            <tr>
                <td>${product.name}</td>
                <td>${product.description}</td>
                <td>${product.price}</td>
            </tr>
        </c:forEach>
    </table>

Dengan melakukan ini, fail JSP boleh mengakses objek yang ditetapkan oleh servlet dalam kaedah doGet()nya, membolehkan penjanaan kandungan dinamik.

Mencegah Akses JSP Terus

Atas sebab keselamatan, Fail JSP hendaklah diletakkan dalam folder /WEB-INF, menghalang akses terus oleh pengguna.

Nota

Anotasi @WebServlet memerlukan Servlet 3.0 atau lebih tinggi. Jika anda menggunakan versi yang lebih lama, anda mesti mendaftarkan servlet secara manual dalam fail web.xml.

Rujukan

  • [Halaman Wiki Servlets]( https://wiki.java.net/bin/view/Projects/Servlets)
  • [doGet and doPost in Servlets](https://javarevisited.blogspot.com/2011/05/java-servlet-doget-and-dopost-method-example.html)
  • [Cara mengelakkan kod Java dalam JSP](https://stackoverflow.com/questions/5521006/ways-to-avoid-java-code-in-jsp-in-a-best-practice-manner)
  • [Servlet mengembalikan "HTTP Status 404 Sumber yang diminta (/servlet) tidak tersedia"]

Atas ialah kandungan terperinci Bagaimana untuk Memanggil Servlet daripada JSP pada Muatan Halaman untuk Memaparkan Data?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn