400-650-7353
您所在的位置:首页 > IT干货资料 > java > 【Java基础知识】Servlet学习之创建Servlet程序(二)

【Java基础知识】Servlet学习之创建Servlet程序(二)

  • 发布: java培训
  • 来源:Java培训干货资料
  • 2021-02-25 20:59:38
  • 阅读()
  • 分享
  • 手机端入口

1、创建方式二

通过继承javax.servlet.GenericServlet抽象类,创建与访问协议无关的Servlet。

继承GenericServlet抽象类

在Servlet程序中,只需要重写为客户请求提供服务的service方法,在GenericServlet抽象类中,这是一个抽象方法。

代码示例如下:

@WebServlet(description = "通过GenericServlet抽象类派生的Servlet程序", urlPatterns = { "/shouhuola/Servlet02" })

public class Servlet02 extends GenericServlet {

@Override

public void service(ServletRequest arg0, ServletResponse arg1) throws ServletException, IOException {

// TODO Auto-generated method stub

arg1.setContentType("text/html; charset=utf-8");

arg1.getWriter().println("这是通过GenericServlet抽象类派生的Servlet程序");

}

}

2、创建方式三

通过继承javax.servlet.http.HttpServlet抽象类,创建支持HTTP访问协议的Servlet。

继承HttpServlet抽象类

在Servlet程序中,可以根据客户的请求方式(例如:GET、POST、HEAD、PUT、DELETE、TRACE、OPTIONS),重写为客户请求提供服务的doXxx方法;也可以重写其父类的service方法。

若重写了其父类的service方法,则由service方法为客户请求提供服务。

若在service方法中调用了父类的service方法,例如:

super.service(req, resp);

那么,service方法会根据HTTP协议的请求方式,调用对应请求方式的处理方法doXxx()。

代码示例如下:

@WebServlet(description = "通过HttpServlet抽象类派生的Servlet程序", urlPatterns = { "/shouhuola/Servlet03" })

public class Servlet03 extends HttpServlet {

private static final long serialVersionUID = 1L;

public Servlet03() {

super();

// TODO Auto-generated constructor stub

}

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

// TODO Auto-generated method stub

response.setContentType("text/html; charset=utf-8");

response.getWriter().println("这是通过HttpServlet抽象类派生的Servlet程序");

}

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

// TODO Auto-generated method stub

doGet(request, response);

}

文章“【Java基础知识】Servlet学习之创建Servlet程序(二)”已帮助

>>本文地址:https://www.ujiuye.com/zhuanye/2021/67166.html

THE END  

声明:本站稿件版权均属中公教育优就业所有,未经许可不得擅自转载。

1 您的年龄

2 您的学历

3 您更想做哪个方向的工作?

获取测试结果
  • 大前端大前端
  • 大数据大数据
  • 互联网营销互联网营销
  • JavaJava
  • Linux云计算Linux
  • Python+人工智能Python
  • 嵌入式物联网嵌入式
  • 全域电商运营全域电商运营
  • 软件测试软件测试
  • 室内设计室内设计
  • 平面设计平面设计
  • 电商设计电商设计
  • 网页设计网页设计
  • 全链路UI/UE设计UI设计
  • VR/AR游戏开发VR/AR
  • 网络安全网络安全
  • 新媒体与短视频运营新媒体
  • 直播带货直播带货
  • 智能机器人软件开发智能机器人
 

快速通道fast track

近期开班时间TIME