servlet dispatcher .forward(request, response); 进入其它servlet原
Posted 万物生长
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了servlet dispatcher .forward(request, response); 进入其它servlet原相关的知识,希望对你有一定的参考价值。
dispatcher .forward(request, response); 进入其它servlet
假如我们的web.xml配置如下
<servlet> <servlet-name>index</servlet-name> <servlet-class>king.server.IndexServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>index</servlet-name> <url-pattern>/indexhtml</url-pattern> </servlet-mapping> <servlet> <servlet-name>allServlet</servlet-name> <servlet-class>king.server.HttpRequestServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>allServlet</servlet-name> <url-pattern>/*</url-pattern> </servlet-mapping>
IndexServlet代码如下
public class IndexServlet extends HttpServlet{ @Override public void doGet(HttpServletRequest request, HttpServletResponse response) { try { TraceTool.traceParent(); RequestDispatcher dispatcher = request.getRequestDispatcher("/index.html"); dispatcher .forward(request, response); } catch (Exception e) { e.printStackTrace(); } } }
此时执行完IndexServlet的dispatcher .forward(request, response);后相当于去请求了contextPath/index.html,
于是被<url-pattern>/*</url-pattern>的allServlet拦截下来.又进到了allServlet的get(xxx)方法中去了.
以上是关于servlet dispatcher .forward(request, response); 进入其它servlet原的主要内容,如果未能解决你的问题,请参考以下文章
Filter多方式拦截禁用IE图片缓存Filter设置字符编码
如何设置 web.xml 和 dispatcher-servlet.xml 进行映射?
javax.servlet.ServletException:无法在名称为“NA-dispatcher”的 servlet 中解析名称为“login”的视图