So rufen Sie ein Servlet aus JSP beim Laden der Seite auf
In bestimmten Szenarien müssen Sie möglicherweise ein Servlet aus einer JSP-Datei ohne aufrufen mithilfe eines HTML-Formulars. Zum Beispiel, um Datenbankabfrageergebnisse in einer HTML-Tabelle beim Laden der Seite anzuzeigen.
Lösung mit der doGet()-Methode
Die doGet()-Methode in einem Servlet ermöglicht dies Anforderungsvorverarbeitung und Weiterleitung an die JSP. So können Sie dies implementieren:
Implementieren Sie doGet() in 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); } }
Zugriff auf Servlet-Daten in JSP:
...
${product.name} | ${product.description} | ${product.price} |
Auf diese Weise kann die JSP-Datei auf die vom Servlet in seiner doGet()-Methode festgelegten Objekte zugreifen und so eine dynamische Inhaltsgenerierung ermöglichen.
Verhindern des direkten JSP-Zugriffs
Aus Sicherheitsgründen sollte die JSP-Datei im Ordner /WEB-INF abgelegt werden, um den direkten Zugriff zu verhindern Benutzer.
Hinweis
Die @WebServlet-Annotation erfordert Servlet 3.0 oder höher. Wenn Sie eine ältere Version verwenden, müssen Sie das Servlet manuell in der Datei web.xml registrieren.
Referenzen
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3