페이지 로드 시 JSP에서 서블릿을 호출하는 방법
특정 시나리오에서는 JSP 파일에서 서블릿을 호출하지 않고 호출해야 할 수도 있습니다. HTML 양식을 사용합니다. 예를 들어, 페이지 로드 시 HTML 테이블에 데이터베이스 쿼리 결과를 표시합니다.
doGet() 메서드를 사용하는 솔루션
서블릿의 doGet() 메서드는 다음을 허용합니다. 전처리 및 JSP로의 리디렉션을 요청합니다. 이를 구현하는 방법은 다음과 같습니다.
서블릿에서 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); } }
JSP에서 서블릿 데이터에 액세스:
...
${product.name} | ${product.description} | ${product.price} |
이를 통해 JSP 파일은 doGet() 메소드에서 서블릿이 설정한 객체에 액세스할 수 있어 동적 콘텐츠 생성이 가능해집니다.
직접 JSP 액세스 방지
보안상의 이유로 JSP 파일은 /WEB-INF 폴더에 배치되어 직접 액세스를 방지해야 합니다. 사용자별.
참고
@WebServlet 주석을 사용하려면 Servlet 3.0 이상이 필요합니다. 이전 버전을 사용하는 경우 web.xml 파일에서 서블릿을 수동으로 등록해야 합니다.
참조
부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.
Copyright© 2022 湘ICP备2022001581号-3