随着Servlet 3.0的引入,我们可以使用 web.xml 中的注释和省略映射将 servlet 映射到 URL 模式。
我想知道是否有一些说明或特殊标签允许将 jsp 映射到页面代码中的 URL 而无需在 web.xml 中声明 servlet
随着Servlet 3.0的引入,我们可以使用 web.xml 中的注释和省略映射将 servlet 映射到 URL 模式。
我想知道是否有一些说明或特殊标签允许将 jsp 映射到页面代码中的 URL 而无需在 web.xml 中声明 servlet
没有这样的设施。
您可以做的最好的事情是将 JSP 隐藏在其中/WEB-INF
(这样它就永远不会被 URL 直接请求),只需创建一个转发到该 JSP 的 servlet,最后将其映射到所需的 URL 模式。这很容易:
@WebServlet("/foo")
public class FooServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.getRequestDispatcher("/WEB-INF/foo.jsp").forward(request, response);
}
}
这样 JSP/WEB-INF/foo.jsp
就可以通过http://localhost:8080/context/foo
. 您可以使用前端控制器模式将其进一步抽象为一组 JSP 的单个 servlet 。