第一步:tomcat启动后,将创建的项目添加到配置中
第二步:创建如下三个文件:
package com.jd.servlet;
import java.io.IOException;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class DataServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
@Override
protected void service(HttpServletRequest arg0, HttpServletResponse arg1) throws ServletException, IOException {
System.out.println("service");
super.service(arg0, arg1);
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
System.out.println("doget");
response.sendRedirect("./target.jsp");
}
第三步:在浏览器访问链接127.0.0.1/moon,因为访问的页面在web.xml中的welcome标签中
可以直接访问项目,得到如下执行代码。
点击链接,得到如下结果:
上述过程是重定向,会跳转到页面target.jsp。
上述一系列过程是如何执行的呢?即tomcat如何找到相应Servlet类及其方法:如下图所示
1,tomcat先截取我们访问所传的IP地址,截取" /DataServlet "
2,根据截取的路径内容,在web.xml文件中寻找<url-pattern>/DataServlet</url-pattern>
:标签内容为/DataServlet的<url-pattern>
对标签,
3,接着找到相应的<servlet-name>DataServlet</servlet-name>
4,根据此处找的name,在<servlet>
对标签中找到对应的name标签,为
<servlet-name>DataServlet</servlet-name>
,最后找到java源文件路径<servletclass>com.jd.servlet.DataServlet</servlet-class>
,开始服务器中执行代码。
对于service方法:
程序执行过程中,首先执行service方法,由service方法决定走哪个请求。