java包含来自Servlet的私有JSP 2 年 Questions & Answers 2698 我的Servlet对everything“/”url模式进行响应。在里面,我有时需要呈现html,所以我想。包括一个JSP页面,但我希望如此。jsp无法从外部访问。另外,如何将模型对象传递给它
# 1 楼答案 I'd like to .include a JSP page, but I'd like that .jsp to be inaccessible externally. 把它放在/WEB-INF文件夹中。客户端无法访问它,但RequestDispatcher可以访问它 request.getRequestDispatcher("/WEB-INF/page.jsp").forward(request, response); Also, how can I pass a model object into it. 将其设置为请求属性 request.setAttribute("bean", bean); // It'll be available as ${bean} in JSP. 另请参见: Servlets tag info page(包含Hello World示例和有用的链接) Hidden features of JSP/Servlet Design patterns webbased applications 这就是说,请注意,在/上映射servlet将接管servletcontainer的内置DefaultServlet服务静态内容的工作。你必须自己处理所有静态文件,比如JS/CSS/images。考虑为JSP视图选择一个更具体的^ { CD5}},如^ {CD6}}或^ {CD7}}。最后,如this answer中所述,将Filter带到前面
# 2 楼答案 这很简单: 将您的JSP文件放入WEB-INF文件夹中李> 在servlet中,执行getServletContext().getRequestDispatcher("/WEB-INF/path/your.jsp").forward(request, response);
# 1 楼答案
把它放在
/WEB-INF
文件夹中。客户端无法访问它,但RequestDispatcher
可以访问它将其设置为请求属性
另请参见:
这就是说,请注意,在
/
上映射servlet将接管servletcontainer的内置DefaultServlet
服务静态内容的工作。你必须自己处理所有静态文件,比如JS/CSS/images。考虑为JSP视图选择一个更具体的^ { CD5}},如^ {CD6}}或^ {CD7}}。最后,如this answer中所述,将Filter
带到前面# 2 楼答案
这很简单:
getServletContext().getRequestDispatcher("/WEB-INF/path/your.jsp").forward(request, response);