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

  • 微博客营销:关系维护及受众放大器(关于微博营销)

    微博客营销:关系维护及受众放大器(关于微博营销)

  • applewatch要单独买充电器吗(apple watch必须用iphone吗)

    applewatch要单独买充电器吗(apple watch必须用iphone吗)

  • 星标朋友和置顶有什么区别(设为星标朋友和置顶聊天)

    星标朋友和置顶有什么区别(设为星标朋友和置顶聊天)

  • 抖音播放量多少算正常(抖音播放量多少有收益)

    抖音播放量多少算正常(抖音播放量多少有收益)

  • 钉钉怎么用微信登录(钉钉怎么用微信转账)

    钉钉怎么用微信登录(钉钉怎么用微信转账)

  • 智能网关用户名和密码是什么(智能网关用户名是什么)

    智能网关用户名和密码是什么(智能网关用户名是什么)

  • kindle是什么东西(kindle多少钱一台)

    kindle是什么东西(kindle多少钱一台)

  • 电脑键盘进水了第一时间怎么处理(电脑键盘进水了开不了机)

    电脑键盘进水了第一时间怎么处理(电脑键盘进水了开不了机)

  • 电线和网线放在一起有影响吗(电线和网线放在一个线槽)

    电线和网线放在一起有影响吗(电线和网线放在一个线槽)

  • 主板针脚歪了能点亮吗(主板针脚歪了能用吗)

    主板针脚歪了能点亮吗(主板针脚歪了能用吗)

  • 链接到前一条页眉在哪个工具栏中(链接到前一条页眉为什么是灰色的)

    链接到前一条页眉在哪个工具栏中(链接到前一条页眉为什么是灰色的)

  • 手机反应慢怎么解决(手机反应慢怎么办?教你打开这个设置)

    手机反应慢怎么解决(手机反应慢怎么办?教你打开这个设置)

  • 7p是不是7plus(7p是不是双卡双待)

    7p是不是7plus(7p是不是双卡双待)

  • ipad7,5是什么型号(ipad7.2是什么)

    ipad7,5是什么型号(ipad7.2是什么)

  • me280ch/a是什么型号(me280zp/a是哪一年的)

    me280ch/a是什么型号(me280zp/a是哪一年的)

  • 红米k30呼吸灯怎么设置(红米k30呼吸灯怎破解)

    红米k30呼吸灯怎么设置(红米k30呼吸灯怎破解)

  • 抖音视频可以看访客吗(抖音视频可以看到谁转发吗)

    抖音视频可以看访客吗(抖音视频可以看到谁转发吗)

  • 淘宝店铺怎么查授权(淘宝店铺怎么查退款纠纷率)

    淘宝店铺怎么查授权(淘宝店铺怎么查退款纠纷率)

  • 华为手机新闻屏幕怎么去掉(华为手机新闻屏幕不亮)

    华为手机新闻屏幕怎么去掉(华为手机新闻屏幕不亮)

  • 手机腾讯视频怎么调全屏(手机腾讯视频怎么微信扫码登录)

    手机腾讯视频怎么调全屏(手机腾讯视频怎么微信扫码登录)

  • jpg格式怎么缩小到200k以下(jpg格式怎么缩小内存)

    jpg格式怎么缩小到200k以下(jpg格式怎么缩小内存)

  • 微信评论怎么显示全文(微信评论怎么显示地址)

    微信评论怎么显示全文(微信评论怎么显示地址)

  • 手机休眠状态在哪设置(手机休眠状态在哪设置vivo)

    手机休眠状态在哪设置(手机休眠状态在哪设置vivo)

  • 显示器响应时间(显示器响应时间开不开)

    显示器响应时间(显示器响应时间开不开)

  • gsm是什么网络类型(gsm是什么网络制式)

    gsm是什么网络类型(gsm是什么网络制式)

  • 电脑怎么设置色盲症颜色滤镜? win10系统颜色滤镜的开启方法(电脑怎么设置色盲模式)

    电脑怎么设置色盲症颜色滤镜? win10系统颜色滤镜的开启方法(电脑怎么设置色盲模式)

  • 点云3D目标检测之——尝试SFD代码跑通(超详细!!)(点云目标检测数据集)

    点云3D目标检测之——尝试SFD代码跑通(超详细!!)(点云目标检测数据集)

  • 一般纳税人的现金收入
  • 贷款取现金
  • 公司法人和经理承担责任一样吗
  • 隔月发票退回应该如何操作
  • 酒店物业费收取标准2019
  • 发现之前的差旅费补助多报了一天该怎么调整
  • 抵扣联 发票联
  • 其他债券投资有减值,为什么其他权益工具投资没有减值
  • 应付票据保证金的会计分录怎么写
  • 其他业务收入的核算内容
  • 银行取现怎么取
  • 进项发票当月不抵扣怎么入账
  • 已经使用的固定资产其变动方式等基础资料将
  • 红字冲回上月收入
  • 其他货币资金包括存出保证金吗
  • 电厂采购通常采购什么
  • 别人帮我们公司代定机票怎么做账
  • 非房地产企业的基建管理办法
  • 收到汇算清缴的现金
  • SIMETER.EXE - SIMETER是什么进程 有什么用
  • 先开票后收款的发票怎么备注
  • 六千元左右
  • 如何选购汽车
  • 企业出租房屋怎样报税
  • npp怎么安装
  • web转义字符
  • php投票网站制作
  • 最新版本金铲铲强势阵容
  • html转化成图片
  • 手把手教你如何套路男神
  • 高新技术企业收入占比不到60%,能否享受税收优惠政策
  • 公链dapp
  • pytorch csdn
  • 当月计提的公积金怎么取
  • 研发支出是资产类会计科目吗
  • 关于机动车的法律定义
  • springboot升级到2.1.6需要注意
  • 织梦如何添加浮动广告
  • python中chr函数介绍
  • 公司应知应会的内容是什么
  • 分页存储的优缺点
  • 小企业会计准则适用范围
  • 税务发票金额可以增加吗?
  • 营业执照是什么字体
  • 多缴纳增值税
  • 湖南残保金优惠政策
  • 营改增后建筑业分公司账务
  • 收到联营单位投入的设备一台
  • 固定资产错记到费用了怎么办
  • 车辆保险费没有发票会计分录
  • 行政事业单位福利费提取比例
  • 个税APP如何修改密码
  • 描述企业会计准则中对固定资产的具体规定
  • 服务行业服务费怎么入账
  • 新买的车没有牌能上路吗
  • 银行日记账余额与银行对账单不符
  • 限定性净资产举例
  • 个人所得税会计分录怎么做
  • Advanced Pagination for MySQL(mysql高级分页)
  • SQLSERVER Pager store procedure分页存储过程
  • win8更新到win8.1
  • xp系统好奇怪哦
  • mac怎么批量删除qq好友
  • win8桌面不显示
  • win10正式版发布时间
  • 黑客需要学哪些
  • 未知类型的文件怎么打开
  • node.js连接不上数据库
  • 网吧保存区连接怎么设置
  • css中如何设置图片大小
  • python lxml解析xml
  • express.js教程
  • JavaScript中的this
  • android之startActivityForResult的使用
  • Android ImageLoader 本地缓存
  • xmpp client
  • 外购的解释
  • 公务卡信用等级1级
  • 西藏景区门票优惠政策最新
  • 2020年税务系统关闭
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设