位置: 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年在中国不能用了吗)

  • 手机wps输入数字变乱码(手机wps输入数字变成E)

    手机wps输入数字变乱码(手机wps输入数字变成E)

  • 5g延迟多少毫秒(5g网络延迟多少毫秒)

    5g延迟多少毫秒(5g网络延迟多少毫秒)

  • 电脑不能播放视频是怎么回事(电脑不能播放视频文件怎么办)

    电脑不能播放视频是怎么回事(电脑不能播放视频文件怎么办)

  • 小米手环怎么关机重启(小米手环怎么关闭震动功能)

    小米手环怎么关机重启(小米手环怎么关闭震动功能)

  • 手绘板没有压感是什么原因(手绘板没有压感会怎么样)

    手绘板没有压感是什么原因(手绘板没有压感会怎么样)

  • 电脑程序管理快捷键怎么按(电脑程序管理软件)

    电脑程序管理快捷键怎么按(电脑程序管理软件)

  • a3像素尺寸是多少(a3像素尺寸是多少ps)

    a3像素尺寸是多少(a3像素尺寸是多少ps)

  • excel的状态栏具有什么作用(excel中的状态栏)

    excel的状态栏具有什么作用(excel中的状态栏)

  • protruly是什么手机(prosperous是什么意思?)

    protruly是什么手机(prosperous是什么意思?)

  • qq刷新不了是怎么回事(qq刷新不过来怎么办)

    qq刷新不了是怎么回事(qq刷新不过来怎么办)

  • ipad电越充越少怎么办(ipad为什么充不进电)

    ipad电越充越少怎么办(ipad为什么充不进电)

  • 索尼金砖和黑砖的区别(索尼金砖和黑砖哪个值得入手)

    索尼金砖和黑砖的区别(索尼金砖和黑砖哪个值得入手)

  • 双十一退货红包能退吗(双十一退货红包怎么办)

    双十一退货红包能退吗(双十一退货红包怎么办)

  • 打字怎麼改成简体(电脑打字如何设置为简体)

    打字怎麼改成简体(电脑打字如何设置为简体)

  • office邮件合并在哪(office邮件合并功能怎么操作)

    office邮件合并在哪(office邮件合并功能怎么操作)

  • 怎么隐藏手机桌面图标(怎么隐藏手机桌面微信图标)

    怎么隐藏手机桌面图标(怎么隐藏手机桌面微信图标)

  • 华为手机录音怎么循环播放(华为手机录音怎么录)

    华为手机录音怎么循环播放(华为手机录音怎么录)

  • 快手b类封号封多久(快手b类封号几天)

    快手b类封号封多久(快手b类封号几天)

  • 华为电脑linux系统怎么下载软件(华为电脑 linux)

    华为电脑linux系统怎么下载软件(华为电脑 linux)

  • 铃声多多下载的在哪里(铃声多多下载的歌曲在哪个文件夹)

    铃声多多下载的在哪里(铃声多多下载的歌曲在哪个文件夹)

  • 荣耀9x有指纹解锁吗(荣耀9x指纹解锁失灵)

    荣耀9x有指纹解锁吗(荣耀9x指纹解锁失灵)

  • 网易云耳机适配在哪里(网易云耳机适配推荐)

    网易云耳机适配在哪里(网易云耳机适配推荐)

  • 数值型数据有几种数字格式(数值型数据是什么的结果)

    数值型数据有几种数字格式(数值型数据是什么的结果)

  • snkrs怎么取消付款订单(snkrs付款)

    snkrs怎么取消付款订单(snkrs付款)

  • 电脑开wifi给手机用的方法是什么?(电脑开wifi给手机用好吗)

    电脑开wifi给手机用的方法是什么?(电脑开wifi给手机用好吗)

  • echarts 定制legend内容,显示和位置(echart设置legend)

    echarts 定制legend内容,显示和位置(echart设置legend)

  • python列表添加和删除的方法(python 添加列表)

    python列表添加和删除的方法(python 添加列表)

  • 个人所得税计提分录怎么写
  • 金融保险业税目
  • 一般纳税人商品混凝土税率
  • 转入公账怎么做账
  • 分期收款方式确认销售收入
  • 油费补贴计入什么科目
  • 收到外境来电
  • 非营利组织免交的增值税转入哪个科目
  • 税控盘服务费抵减有效期几年
  • 子公司分红母公司缴税吗
  • 已经认证的抵扣联不见了,怎么办?
  • 赠送给客户的产品发货单要填写单价?
  • 出售资产时递延所得税怎么处理
  • 影视公司招演员
  • 失业养老保险如何办理
  • 金税三期的变化
  • 企业每月纳税申报流程
  • 关于增值税普通发票开票信息填写要求
  • 土地的契税和印花税记入什么科目
  • 安装调试费计入什么科目
  • 个税按工资薪金未按时申报的处罚规定
  • 固定资产投资增值税进项税额抵扣规定
  • 当收到转账支票时,应该如何处理?
  • 农业合作社出售农产品怎么计税
  • 注册会计师考试成绩查询2023
  • 预付会议费会计分录
  • 简易征收月末需要转出未交增值税吗
  • 如何修复win10开机转圈五分钟
  • 本月无销售额,但是有进项,需要认证吗
  • 预防cpu被烧毁的办法
  • PHP isset()与empty()的使用区别详解
  • 劳务报酬怎么做帐
  • 西西弗书店主管级
  • framework怎么用
  • 用友的应付单和付款单的区别各是什么时候填制
  • vue项目如何启动运行
  • 税负太高会预警吗
  • labelme目标检测
  • lsattr命令不存在
  • 发票 技术服务
  • 小规模纳税人要缴纳哪些税
  • 在售楼部帮客户卖房犯法吗
  • 预付卡发票如何开
  • 非同一控制下的长期股权投资入账价值
  • 哪些税种影响当期损益
  • 自制小汽车
  • 售后回租会计准则
  • 购买设备分期付款凭证怎么做
  • 申报抵扣了不做账怎么处理?
  • 减免税做营业外收入的会计分录
  • 预付账款可以开发票吗
  • 成本结转的方法实例
  • 政府奖励我公司的钱
  • 外埠存款怎么读
  • 公司注册资金可以变更减少吗
  • Ubuntu下MySQL及工具安装配置详解
  • MySQL 5.0.96 for Windows x86 32位绿色精简版安装教程
  • win10预览版21277
  • 苹果MAC电脑怎么砸壳应用app
  • 在mac设备上用到什么
  • 如何设置桌面背景颜色
  • win10系统如何给d盘加密
  • xp系统怎么没有无线网络连接
  • win10每周更新
  • 64位win7安装kb3038314补丁更新失败临时解决方法
  • linuxvi编辑器三种模式
  • bat批处理命令大全
  • webrtc介绍
  • node.js抓包
  • android studio环境
  • 菜鸟 安卓
  • unity编辑器安装
  • unity破解安装教程
  • 使用java
  • 理解的英文
  • python电话本
  • 劳动监察执法机构是什么
  • 青春逐梦税务蓝
  • 个人意外所得税税率
  • 潍坊市的职工医保多少钱
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设