首先建立java八个类public class oneServlet implements Servlet {}
public class TwoServlet extends GenericServlet{}
public class ThreeServlet extends HttpServlet{}
@WebServlet(urlPatterns="/d")
public class fourServlect extends HttpServlet {@WebServlet("/hellow")
public class FiveServlect extends HttpServlet {}@WebServlet("/abc
@WebServlet("*.abc")
package com.servlet;
import java.io.IOException;
import javax.servlet.Servlet;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
public class oneServlet implements Servlet {
public oneServlet() {
// TODO Auto-generated constructor stub
}
@Override
public void destroy() {
// dectroy 删除select,cpu释放内存
System.err.println("当servlet不在实现该方法");
}
@Override
public ServletConfig getServletConfig() {
// TODO Auto-generated method stub
//获得 get servlet 小程序 confign 设置信息
//getServletConfig()作用用于servlet在/web/html文件中设置信息
return null;
}
@Override
public String getServletInfo() {
// TODO Auto-generated method stub
return null;
}
@Override
public void init(ServletConfig arg0) throws ServletException {
// TODO Auto-generated method stub
//初始数据
System.out.println("加载信........息");
System.out.println("说明浏览器每一次访问servlet就是第一次访问创建同一个对象");
System.out.println("加载信息。。。。。2");
System.out.println("这是第一个oneservlect ");
}
@Override
public void service(ServletRequest arg0, ServletResponse arg1) throws ServletException, IOException {
// TODO Auto-generated method stub
//等待浏览器访问
System.out.println("servlect处于运行状态");
System.out.println("public class oneServlet implements Servlet {");
}
}
package com.servlet;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@WebServlet("*.abc")
public class SevenServlect extends HttpServlet {
private static final long serialVersionUID = 1L;
public SevenServlect() {
super();
// TODO Auto-generated constructor stub
System.out.println("3.后缀名匹配 以"*"开始 以字符结尾 运行结果 ");
System.out.println("servlect处于运行状态rn" +
"public class oneServlet implements Servlet {rn" +
"当前servlet处于运行rn" +
"public class TwoServlet extends GenericServlet {rn" +
"我收到浏览器的get请求访问 get---dogetrn" +
"这是第三个oneservlect rn" +
"public class ThreeServlet extends HttpServlet{rn" +
"这是第四个servlect rn" +
"这是第五个servlect rn" +
"http://localhost:8080/Day02jsp/bbb?money=&name=rn" +
"十月 06, 2021 1:30:49 下午 org.apache.catalina.core.StandardContext reloadrn" +
"信息: 已开始重新加载名为[/Day02jsp]的上下文rn" +
"当servlet不在实现该方法rn" +
"Twoservlet 在运行 过程中哦哦哦rn" +
"这是第二个oneservlect rn" +
"tree对象在创建rn" +
"加载信........息rn" +
"说明浏览器每一次访问servlet就是第一次访问创建同一个对象rn" +
"加载信息。。。。。2rn" +
"这是第一个oneservlect rn" +
"十月 06, 2021 1:30:49 下午 org.apache.catalina.core.StandardContext reloadrn" +
"信息: 已完成重新加载名为/Day02jsp的上下文rn" +
"这是第五servlect 1.完全匹配 必须以"/"开始 rn" +
"例如:/hello /a/b/crn" +
"http://localhost:8080/Day02jsp/bbb?money=&name=rn" +
"十月 06, 2021 1:31:39 下午 org.apache.catalina.core.StandardContext reloadrn" +
"信息: 已开始重新加载名为[/Day02jsp]的上下文rn" +
"当servlet不在实现该方法rn" +
"Twoservlet 在运行 过程中哦哦哦rn" +
"这是第二个oneservlect rn" +
"tree对象在创建rn" +
"加载信........息rn" +
"说明浏览器每一次访问servlet就是第一次访问创建同一个对象rn" +
"加载信息。。。。。2rn" +
"这是第一个oneservlect rn" +
"十月 06, 2021 1:31:39 下午 org.apache.catalina.core.StandardContext reloadrn" +
"信息: 已完成重新加载名为/Day02jsp的上下文rn" +
"这是第六个servlect 2.目录匹配 必须以"/"开始 以"*"结束 rn" +
"http://localhost:8080/Day02jsp/bbb?money=&name=rn" +
"十月 06, 2021 1:32:49 下午 org.apache.catalina.core.StandardContext reloadrn" +
"信息: 已开始重新加载名为[/Day02jsp]的上下文rn" +
"当servlet不在实现该方法rn" +
"Twoservlet 在运行 过程中哦哦哦rn" +
"这是第二个oneservlect rn" +
"十月 06, 2021 1:32:49 下午 org.apache.catalina.core.StandardContext reloadrn" +
"信息: 已完成重新加载名为/Day02jsp的上下文rn" +
"tree对象在创建rn" +
"加载信........息rn" +
"说明浏览器每一次访问servlet就是第一次访问创建同一个对象rn" +
"加载信息。。。。。2rn" +
"这是第一个oneservlect rn" +
"3.后缀名匹配 以"*"开始 以字符结尾 rn" +
"");
System.out.println("完全匹配>目录匹配>后缀名匹配");
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
response.getWriter().append("Served at: ").append(request.getContextPath());
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
}
}
package com.servlet;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class ThreeServlet extends HttpServlet{
//http:网络协议 TCP/LP 被动协议 需要用户去访问服务器 ,服务器材会发送数据。
//有四种发送数据方式:get 发送请求 post发送请求
public ThreeServlet() {
// TODO Auto-generated constructor stub
System.out.println("tree对象在创建");
}
//UDP:主动协议,不管用户要不要 ,服务器都会发送数据
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
// TODO Auto-generated method stub
System.out.println("我收到浏览器的get请求访问 get---doget");
System.out.println("这是第三个oneservlect ");
System.out.println("public class ThreeServlet extends HttpServlet{");
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
// TODO Auto-generated method stub
System.out.println("我收到浏览器的post请求访问 post----dopost");
}
}
package com.servlet;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@WebServlet(urlPatterns="/d")
public class fourServlect extends HttpServlet {
private static final long serialVersionUID = 1L;
//定义一个变量
int countt=0;
String hdrt="L LOVE YOU hellow world";
public fourServlect() {
System.out.println("这是第四个servlect ");
// TODO Auto-generated constructor stub
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
countt++;
response.getWriter().append("Served at:get countt"+countt+"l love you "+countt+"");
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
response.getWriter().append("Served at:get ");
}
}
package com.servlet;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@WebServlet("/hellow")
public class FiveServlect extends HttpServlet {
private static final long serialVersionUID = 1L;
public FiveServlect() {
System.out.println("这是第五servlect 1.完全匹配 必须以"/"开始 rn" +
"例如:/hello /a/b/c");
System.out.println("http://localhost:8080/Day02jsp/bbb?money=&name=");
// TODO Auto-generated constructor stub
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
response.getWriter().append("Served at: ").append(request.getContextPath());
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
}
}
package com.servlet;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@WebServlet("/abc
public SixServlect2() {
System.out.println("这是第六个servlect 2.目录匹配 必须以"/"开始 以"*"结束 ");
System.out.println("http://localhost:8080/Day02jsp/bbb?money=&name=");
// TODO Auto-generated constructor stub
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
response.getWriter().append("Served at: ").append(request.getContextPath());
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
}
}
package com.servlet;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@WebServlet("*.abc")
public class SevenServlect extends HttpServlet {
private static final long serialVersionUID = 1L;
public SevenServlect() {
super();
// TODO Auto-generated constructor stub
System.out.println("3.后缀名匹配 以"*"开始 以字符结尾 运行结果 ");
System.out.println("servlect处于运行状态rn" +
"public class oneServlet implements Servlet {rn" +
"当前servlet处于运行rn" +
"public class TwoServlet extends GenericServlet {rn" +
"我收到浏览器的get请求访问 get---dogetrn" +
"这是第三个oneservlect rn" +
"public class ThreeServlet extends HttpServlet{rn" +
"这是第四个servlect rn" +
"这是第五个servlect rn" +
"http://localhost:8080/Day02jsp/bbb?money=&name=rn" +
"十月 06, 2021 1:30:49 下午 org.apache.catalina.core.StandardContext reloadrn" +
"信息: 已开始重新加载名为[/Day02jsp]的上下文rn" +
"当servlet不在实现该方法rn" +
"Twoservlet 在运行 过程中哦哦哦rn" +
"这是第二个oneservlect rn" +
"tree对象在创建rn" +
"加载信........息rn" +
"说明浏览器每一次访问servlet就是第一次访问创建同一个对象rn" +
"加载信息。。。。。2rn" +
"这是第一个oneservlect rn" +
"十月 06, 2021 1:30:49 下午 org.apache.catalina.core.StandardContext reloadrn" +
"信息: 已完成重新加载名为/Day02jsp的上下文rn" +
"这是第五servlect 1.完全匹配 必须以"/"开始 rn" +
"例如:/hello /a/b/crn" +
"http://localhost:8080/Day02jsp/bbb?money=&name=rn" +
"十月 06, 2021 1:31:39 下午 org.apache.catalina.core.StandardContext reloadrn" +
"信息: 已开始重新加载名为[/Day02jsp]的上下文rn" +
"当servlet不在实现该方法rn" +
"Twoservlet 在运行 过程中哦哦哦rn" +
"这是第二个oneservlect rn" +
"tree对象在创建rn" +
"加载信........息rn" +
"说明浏览器每一次访问servlet就是第一次访问创建同一个对象rn" +
"加载信息。。。。。2rn" +
"这是第一个oneservlect rn" +
"十月 06, 2021 1:31:39 下午 org.apache.catalina.core.StandardContext reloadrn" +
"信息: 已完成重新加载名为/Day02jsp的上下文rn" +
"这是第六个servlect 2.目录匹配 必须以"/"开始 以"*"结束 rn" +
"http://localhost:8080/Day02jsp/bbb?money=&name=rn" +
"十月 06, 2021 1:32:49 下午 org.apache.catalina.core.StandardContext reloadrn" +
"信息: 已开始重新加载名为[/Day02jsp]的上下文rn" +
"当servlet不在实现该方法rn" +
"Twoservlet 在运行 过程中哦哦哦rn" +
"这是第二个oneservlect rn" +
"十月 06, 2021 1:32:49 下午 org.apache.catalina.core.StandardContext reloadrn" +
"信息: 已完成重新加载名为/Day02jsp的上下文rn" +
"tree对象在创建rn" +
"加载信........息rn" +
"说明浏览器每一次访问servlet就是第一次访问创建同一个对象rn" +
"加载信息。。。。。2rn" +
"这是第一个oneservlect rn" +
"3.后缀名匹配 以"*"开始 以字符结尾 rn" +
"");
System.out.println("完全匹配>目录匹配>后缀名匹配");
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
response.getWriter().append("Served at: ").append(request.getContextPath());
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
}
}
package com.servlet;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@WebServlet("/ten")
public class ten extends HttpServlet {
private static final long serialVersionUID = 1L;
public ten() {
super();
// TODO Auto-generated constructor stub
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
response.getWriter().append("Served at: ").append(request.getContextPath());
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
}
}
web.xlm文件
运行结果Day02jsp index.jsp OneServlet com.servlet.OneServlet 5 OneServlet /a TwoServlet com.servlet.TwoServlet 0 TwoServlet /b ThreeServlet com.servlet.ThreeServlet 2 ThreeServlet /c
第二章完毕



