Servlet转发

可以使用ServletContext中的getRequestDispatcher(url).forward(request, response)方法进行转发

myservlet2.java

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
public class myservlet2 extends HttpServlet {
    public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        System.out.println("我要办事");
        System.out.println("你的事我办不了");
        System.out.println("你的事我找人帮你办");
        ServletContext application=this.getServletContext();
        //将请求向下传递
        application.getRequestDispatcher("/demo3").forward(request, response);
        System.out.println("事办完了");
    }
    public void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        doGet(request,response);
    }
 
}

 myservlet3.java

1
2
3
4
5
6
7
8
9
10
11
public class myservlet3 extends HttpServlet {
    public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        System.out.println("这个事我能办");
    }
    public void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        doGet(request,response);
    }
 
}

  web.xml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
    xmlns="http://java.sun.com/xml/ns/javaee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
    http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
  <display-name></display-name>
 
   <servlet>
    <description>This is the description of my J2EE component</description>
    <display-name>This is the display name of my J2EE component</display-name>
    <servlet-name>myservlet2</servlet-name>
    <servlet-class>com.zk.myservlet.myservlet2</servlet-class>
  </servlet>
  <servlet>
    <description>This is the description of my J2EE component</description>
    <display-name>This is the display name of my J2EE component</display-name>
    <servlet-name>myservlet3</servlet-name>
    <servlet-class>com.zk.myservlet.myservlet3</servlet-class>
  </servlet>
 
   <servlet-mapping>
    <servlet-name>myservlet2</servlet-name>
    <url-pattern>/demo2</url-pattern>
  </servlet-mapping>
  <servlet-mapping>
    <servlet-name>myservlet3</servlet-name>
    <url-pattern>/demo3</url-pattern>
  </servlet-mapping> 
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
</web-app>

运行效果:此案例从myservlet2.java中间转发至myservlet3.java

程序结构

 

 

 

posted @   leagueandlegends  阅读(136)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示