包含Servlet中的私有JSP

Haf*_*hor 8 java jsp servlets

我让我的Servlet响应所有"/"url-pattern.在内部我需要有时渲染html,所以我想.包含一个JSP页面,但我希望.jsp在外部是不可访问的.另外,我如何将模型对象传递给它.

Bal*_*usC 14

我想.包含一个JSP页面,但我希望外部无法访问.jsp.

把它放在/WEB-INF文件夹中.客户端无法访问它,但RequestDispatcher可以访问它.

request.getRequestDispatcher("/WEB-INF/page.jsp").forward(request, response);
Run Code Online (Sandbox Code Playgroud)

另外,我如何将模型对象传递给它.

将其设置为请求属性.

request.setAttribute("bean", bean); // It'll be available as ${bean} in JSP.
Run Code Online (Sandbox Code Playgroud)

也可以看看:


也就是说,请注意,映射servlet /会接管servletcontainer内置的DefaultServlet用于提供静态内容的工作.您必须自己处理所有静态文件,如JS/CSS /图像.考虑选择更具体的url-pattern类似/pages/**.do用于JSP视图.Filter本答案中所述,最终成为一个前沿.

  • 我把资源放在他们自己的子文件夹中,如(`WEB-INF/jsp`) (2认同)