位置: IT常识 - 正文

JavaWeb之Servlet

编辑:rootadmin
Service 1. Service的概述 1.1 Service是什么 Servlet是Java提供的一门动态web资源开发技术 Servlet是JavaEE 规范之一,其实就是一个接口,将来我们需要定义Servlet类实现Servlet接口,并由web服务器运行Servlet 1.2 Servi ... Service1. Service的概述1.1 Service是什么Servlet是Java提供的一门动态web资源开发技术Servlet是JavaEE 规范之一,其实就是一个接口,将来我们需要定义Servlet类实现Servlet接口,并由web服务器运行Servlet1.2 Service怎么使用(快速入门)创建web项目,导入Servlet依赖坐标<dependency><groupId>javax.servlet</groupld><artifactId>javax.servlet-api</artifactld><version>3.1.0</version><!--运行环境中排除这个jar包,因为tomcat里自带了这个jar包,不然运行时会报错--><scope>provided</scope></dependency>创建: 定义一个类,实现Servlet接口,并重写接口中所有方法,并在 service方法中打印输出一句话,用以测试是否访问成功,如果成功访问会在控制台中打印出hello servlet!@WebServlet("/")public class ServletTest implements Servlet { @Override public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException { System.out.println("hello servlet!"); } @Override public void init(ServletConfig servletConfig) throws ServletException { } @Override public ServletConfig getServletConfig() { return null; } @Override public String getServletInfo() { return null; } @Override public void destroy() { }}配置:在类上使用@WebServlet注解,配置该Servlet的访问路径@WebServlet("/demo1")public class ServletDemo1 implements Servlet{访问:启动Tomcat,浏览器输入URL访问该Servlethttp://localhost:8080/web-demo/demo1

推荐整理分享JavaWeb之Servlet,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

注解@WebServlet()里面的访问路径开头记得加"/"

2. Servlet执行流程及生命周期2.1 执行流程

可以看到上方的快速入门案例,我只创建了Servlet接口的实现类,并没有new任何一个对象,反而在运行tomcat时控制台上却打印了service()方法里的内容。

Servlet由谁创建?servlet方法由谁调用?Servlet由web服务器创建,servlet()方法由web服务器调用。服务器怎么知道servlet种一定有service方法?因为我们自定义的servlet,必须实现servlet接口并复写其方法,而servlet接口中有service方法。2.2 生命周期

对象的生命周期指一个对象从被创建到被销毁的整个过程

Servlet运行在Servlet容器(web服务器)中,其生命周期由容器来管理,分为4个阶段:JavaWeb之Servlet

加载和实例化:默认情况下,当Servlet第一次被访问时,由容器(Tomcat)创建Servlet对象。

初始化:在Servlet实例化之后,容器将调用Servlet的init()方法初始化这个对象,完成一些如“加载配置文件、创建连接”等初始化的工作。该方法只会调用一次。

也就是说就算多次访问该Servlet对象,init()方法也只会调用一次。而不像service()方法一样,每访问一次Servlet对象就执行一次service()里的程序。

请求处理:每次请求Servlet时,Servlet容器都会调用Servlet的service()方法对请求进行处理。

服务终止:当需要释放内存或者容器关闭时,容器就会调用Servlet实例的destroy()方法完成资源的释放。在destroy()方法调用之后,容器会释放这个Servlet实例,该实例随后会被Java的垃圾收集器所回收。

可以在注解@WebServlet()里添加属性loadOnStartup来设置何时创建Servlet对象@WebServlet(urlPatterns = "/demo", loadOnStartup = 1)//此时Servlet对象就会在启动tomcat服务器时就会被创建,而不是等到被人访问时才创建@WebServlet("/")public class ServletTest implements Servlet {......}负整数:第一次被访问web页面时创建Servlet对象0或正整数:服务器启动时创建Servlet对象,数字越小优先级越高3. Servlet体系结构以及方法使用

我们将来开发B/S架构的web项目,都是针对HTTP协议,所以我们自定义的servlet,会继承HttpServlet。

3.1 HttpServlet概述

HttpServlet类是servlet.http包中定义了采用HTTP通信协议的Servlet接口实现类。

因为HTTP不同的请求方式拥有不同的请求数据的格式,因此HttpServlet里有两种方法:

doGet(HttpServletRequest req, HttpServletResponse resp):获取get请求,进行处理doPost(HttpServletRequest req, HttpServletResponse resp):获取post请求,进行处理3.2 怎么使用创建自定义类并继承HttpServlet,然后实现方法@WebServlet("/servletTest2")public class ServletTest2 extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { System.out.println("doGet ..."); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { System.out.println("doPost ..."); }}在webapp目录下创建html文件,并创建表单以post方式访问上边继承HttpServlet的子类<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title></head><body> <h3>用以测试HttpServlet的不同请求方式和不同的数据请求格式</h3> <!--action表单提交的URL,这里的值是 “项目的上下文根 + 需要访问的Servlet头部注解
本文链接地址:https://www.jiuchutong.com/zhishi/304142.html 转载请保留说明!

上一篇:python带你采集桌游、剧本杀游戏店数据信息~(python 数据采集卡)

下一篇:2022年可在苹果笔记本M1和M2芯片的Macos系统上运行的手机Alook浏览器-8倍速破解版-电脑学习网(苹果2021年在中国不能用了吗)

  • 电脑照片文件格式怎么修改(电脑照片文件格式怎么jpg)

    电脑照片文件格式怎么修改(电脑照片文件格式怎么jpg)

  • 佳能800d和80d区别(佳能800d和佳能80d单反哪个好)

    佳能800d和80d区别(佳能800d和佳能80d单反哪个好)

  • 小米行为标注的用处(小米行为标注有什么用)

    小米行为标注的用处(小米行为标注有什么用)

  • 手机格式化了没有备份怎么办(手机格式化了没法激活怎么办)

    手机格式化了没有备份怎么办(手机格式化了没法激活怎么办)

  • 抖音上怎么设置不让别人下载自己的作品(抖音上怎么设置定位地址)

    抖音上怎么设置不让别人下载自己的作品(抖音上怎么设置定位地址)

  • 抖音怎么看注册时间(抖音怎么看注册天数)

    抖音怎么看注册时间(抖音怎么看注册天数)

  • 计算机硬件系统组成及各部分作用(计算机硬件系统的五大基本部件及其作用)

    计算机硬件系统组成及各部分作用(计算机硬件系统的五大基本部件及其作用)

  • 小米手机清除数据是不是什么都没有了(小米手机清除数据后没有备份能恢复数据吗)

    小米手机清除数据是不是什么都没有了(小米手机清除数据后没有备份能恢复数据吗)

  • rtu和dtu区别(rtu定义)

    rtu和dtu区别(rtu定义)

  • 不是好友怎么解封微信号(不是好友怎么解封微信限制)

    不是好友怎么解封微信号(不是好友怎么解封微信限制)

  • 笔记本能装几个硬盘(笔记本能装几个机械硬盘)

    笔记本能装几个硬盘(笔记本能装几个机械硬盘)

  • 笔记本电脑充电是开机还是关机(笔记本电脑充电器发热很烫什么原因)

    笔记本电脑充电是开机还是关机(笔记本电脑充电器发热很烫什么原因)

  • 连接硬盘和光驱是什么接口(连接硬盘和光驱的是什么接口)

    连接硬盘和光驱是什么接口(连接硬盘和光驱的是什么接口)

  • ipadpro9.7支持快充吗(ipadpro9.7可以快充吗)

    ipadpro9.7支持快充吗(ipadpro9.7可以快充吗)

  • vivo深色模式有什么用(vivo手机的深色模式可以省电吗)

    vivo深色模式有什么用(vivo手机的深色模式可以省电吗)

  • 华为nova6能不能无线充电(华为nova6能不能root)

    华为nova6能不能无线充电(华为nova6能不能root)

  • 智能组网是什么意思(智能组网是什么路由器)

    智能组网是什么意思(智能组网是什么路由器)

  • OPPO k5怎么关闭来电语音报号(oppok5怎么关闭盲人模式)

    OPPO k5怎么关闭来电语音报号(oppok5怎么关闭盲人模式)

  • 微信分身和微信的区别(微信分身和微信双开是什么意思)

    微信分身和微信的区别(微信分身和微信双开是什么意思)

  • 华为智慧能力要开启吗(华为智慧能力是什么作用)

    华为智慧能力要开启吗(华为智慧能力是什么作用)

  • za什么版本(zam是哪个版本)

    za什么版本(zam是哪个版本)

  • 电脑集成显卡在哪(电脑集成显卡在设备管理器找不到)

    电脑集成显卡在哪(电脑集成显卡在设备管理器找不到)

  • 搜狗浏览器如何截图(搜狗浏览器如何取消拦截网站)

    搜狗浏览器如何截图(搜狗浏览器如何取消拦截网站)

  • Windows 10桌面网络图标不见了怎么办(win10桌面网络图标怎么调出来)

    Windows 10桌面网络图标不见了怎么办(win10桌面网络图标怎么调出来)

  • 计算土地增值税时允许扣除的项目有
  • 村委会什么会计准则
  • 装修行业专票的税率是多少
  • 融资租赁购入固定资产的融资费用如何扣除
  • 个体工商户网上报税流程
  • 新会计准则中计提减值如何回转
  • 滞留票的处理
  • 行政事业单位工资标准
  • 企业管理咨询公司哪家好
  • 未开票收入已报税怎么办
  • 应付职工薪酬如何填列
  • 公司制度奖励怎么写
  • 工作过失扣工资合法吗
  • 工资条迟到扣款
  • 企业采购一般应包括什么
  • 船票能开发票吗
  • 员工一次性赔偿怎么算
  • 统借统还定义
  • 进项税额加计抵减如何申报
  • 增值税专用发票使用规定 最新
  • 商品流通企业代表企业
  • 对外捐赠资产时应计入什么科目
  • 四项服务加计扣除政策2023
  • 小规模纳税人金融服务税率
  • 购买所有物品都是可以退货吗
  • 经营性资产和非经济资产
  • 电脑没组装好会怎么样
  • 待抵扣进项税额和待认证进项税额的区别
  • 0x0000000a蓝屏代码怎么解决
  • 交易性金融资产是什么意思
  • 国家占耕地补偿款给谁?
  • avgserv9.exe是什么进程 avgserv9进程的详细介绍
  • PHP:oci_get_implicit_resultset()的用法_Oracle函数
  • 未分配收益怎么取出
  • pniopcac.exe是什么
  • php能开发微信小程序吗
  • 应收账款清查采用实地盘点法
  • 限售股转让个人所得税退税
  • Joomla使用Apache重写模式的方法
  • mvc与mvvm
  • 用友固定资产折旧方法
  • 跟郑老师学会计建筑业账务处理
  • 公允价值怎么记账
  • mongodb运行
  • windows7基本使用教程
  • 数据库触发器db2什么意思
  • 收回以前年度多发奖金分录
  • 企业无票支出该怎么做账
  • 为什么出台农产品质量安全法
  • 汇票没到期如何兑现
  • 负债类科目的余额方向为借方 不考虑双向等例外情况
  • 金蝶利润表出现科目
  • sql server添加语句
  • 付的房屋租金计入什么会计科目
  • 房产税是怎么样
  • 跨月发票作废如何恢复
  • 外贸企业的汇率怎么算
  • 专票入账用哪一联
  • 出口确认收入的时间
  • 其它综合收益包括
  • 期初数据根据总账还是明细账
  • 固定资产处置当月还要折旧吗
  • mysql5.7闪退
  • sql server复制表数据
  • 批量查询sql语句
  • windows7用户
  • E: Encountered a section with no Package: header错误解决方法
  • rrpcsb.exe - rrpcsb是什么进程 有什么用
  • win7系统电脑卡住了怎么办
  • windows10预览版是什么
  • dos命令/s
  • linux安装oracle数据库步骤
  • javascript点击切换div内容
  • js快速生成数组
  • 详解各种汽油一吨等于多少升
  • 深圳全电子发票开具流程
  • 税务局基层党建工作汇报
  • 北京税务局开票系统
  • 国税增值税普通发票
  • 供给侧改革什么样的劳动力
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设