首页 > 其他分享 >Servlet技术

Servlet技术

时间:2023-08-02 19:33:35浏览次数:26  
标签:web Servlet 程序 技术 servlet ServletContext ServletConfig

Servlet技术

什么是servlet?

1.Servlet 是 JavaEE 规范之一。规范就是接口

2.Servlet 就 JavaWeb 三大组件之一。三大组件分别是:Servlet 程序、Filter 过滤器、Listener 监听器。

3.Servlet 是运行在服务器上的一个 java 小程序,它可以接收客户端发送过来的请求,并响应数据给客户端。

如何实现servlet程序

1.编写一个类去实现 Servlet 接口

2.实现 service 方法,处理请求,并响应数据

3.到 web.xml 中去配置 servlet 程序的访问地址

servlet通过url定位流程

image-20230731185845963

Servlet的生命周期

1、执行 Servlet 构造器方法

2、执行 init 初始化方法

3、执行 service 方法 第三步,每次访问都会调用。

4、执行 destroy 销毁方法 第四步,在 web 工程停止的时候调用。

实际开发中:

通过继承 HttpServlet 实现Servlet 程序一般在实际项目开发中,都是使用继承 HttpServlet 类的方式去实现 Servlet 程序。

1、编写一个类去继承 HttpServlet 类

2、根据业务需要重写 doGet 或 doPost 方法

3、到 web.xml 中的配置 Servlet 程序的访问地址

使用 IDEA可以直接 创建Servlet 程序

image-20230801094355432

Servlet继承体系

image-20230802173436538

2.ServletConfig 类

  1. 首先ServletConfig 类从类名上来看,就知道是 Servlet 程序的配置信息类。
  2. Servlet 程序和 ServletConfig 对象都是由 Tomcat 负责创建,我们负责使用。
  3. Servlet 程序默认是第一次访问的时候创建,ServletConfig 是每个 Servlet 程序创建时,就创建一个对应的ServletConfig对象。

ServletConfig 类的三大作用

  1. 可以获取 Servlet 程序的别名 servlet-name 的值
  2. 获取初始化参数 init-param
  3. 获取 ServletContext 对象

Servlet 中的代码:

@Override
public void init(ServletConfig servletConfig) throws ServletException {
	System.out.println("2 init 初始化方法");
	// 1、可以获取 Servlet 程序的别名 servlet-name 的值
	System.out.println("HelloServlet 程序的别名是:" + 				servletConfig.getServletName());
	// 2、获取初始化参数 init-param
	System.out.println("初始化参数 username 的值是;" + 			       servletConfig.getInitParameter("username"));
	System.out.println("初始化参数 url 的值是;" +           		servletConfig.getInitParameter("url"));
	// 3、获取 ServletContext 对象
	System.out.println(servletConfig.getServletContext());
}

3.ServletContext 类

什么是 ServletContext?

  1. ServletContext 是一个接口,它表示 Servlet 上下文对象
  2. 一个 web 工程,只有一个 ServletContext 对象实例。
  3. ServletContext 对象是一个域对象。
  4. ServletContext 是在 web 工程部署启动的时候创建。在 web 工程停止的时候销毁

什么是域对象?

域对象,是可以像 Map 一样存取数据的对象,叫域对象。 这里的域指的是存取数据的操作范围,整个 web 工程。

image-20230802174844159

ServletContext 类的四个作用

  1. 获取 web.xml 中配置的上下文参数 context-param
  2. 获取当前的工程路径,格式: /工程路径
  3. 获取工程部署后在服务器硬盘上的绝对路径
  4. 像 Map 一样存取数据

要注释父类调用

image-20230802182538085

标签:web,Servlet,程序,技术,servlet,ServletContext,ServletConfig
From: https://blog.51cto.com/u_15977171/6941924

相关文章

  • 活动预告 | 中国数据库联盟(ACDU)中国行第二站定档杭州,邀您探讨数据库技术与实践!
    数据库技术一直是信息时代中不可或缺的核心组成部分,随着信息量的爆炸式增长和数据的多样化,其重要性愈发凸显。作为中国数据库联盟(ACDU)的品牌活动之一,【ACDU中国行】在线下汇集数据库领域的行业知名人士,共同探讨数据库前沿技术及其应用,促进行业发展和创新,同时也为开发者们提供一个......
  • 音视频SDK对比|在线K歌APP技术正版曲库技术选型
    摘要在线K歌软件的开发有许多技术难点,需考虑到音频录制和处理、实时音频传输和同步、音频压缩和解压缩、设备兼容性问题等技术难点外,此外,开发者还应关注音乐版权问题,确保开发的应用合规合法。前言前面写了几期关于直播SDK技术选型的文章,主要是从RTC实时音视频、超低延迟直播、CDN......
  • 音视频SDK对比|K歌App中的实时合唱功能如何进行技术选型
    摘要在线K歌软件的开发有许多技术难点,需考虑到音频录制和处理、实时音频传输和同步、音频压缩和解压缩、设备兼容性问题等技术难点外,此外,开发者还应关注音乐版权问题,确保开发的应用合规合法。前言前面写了几期关于直播SDK技术选型的文章,主要是从RTC实时音视频、超低延迟直播......
  • 音视频技术开发——还有什么不能讲的?
    当我们把自己从泥沼般的2020 拔出来的时候,音视频行业在2021也悄然发生了变化。在所有振奋人心的转变中,我们选取了最能反映当下并影响未来的技术趋势,并据此策划了 LiveVideoStackCon2021上海站一系列的技术专题。边缘计算不边缘、API功能细化、低代码开发火热、硬件加速当道......
  • 视频技术与AI感知如何助力生鲜供应链数字化、智慧化?
    一、行业背景近年来,我国肉类、水果、蔬菜、水产品、乳品、速冻食品等生鲜市场需求快速增长,营商环境持续改善,推动冷链物流较快发展,但仍面临不少突出瓶颈和痛点难点卡点问题,难以有效满足市场需求。传统生鲜食材供应链存在诸多弊端,各弊端之间相互牵连,这对全面推进生鲜食材消费升级造成......
  • 突破游戏行业天花板,“技术外溢”成趋势
    文|螳螂观察作者|余一受游戏版号发放的“放缓”、人口结构的调整,过去两年国内游戏行业过得并不算好。前不久据相关机构发布的数据显示,2022年中国游戏市场实际销售收入2658.84亿元,同比减少306.29亿元,下降10.33%。且游戏用户规模6.64亿,同比下降0.33%。好在随着上半年版号发放平稳......
  • 音视频技术开发周刊 | 140
    架构 为什么您的视频会议系统不互相集成主要是因为当大多数公司希望成为SaaS或者云供应商时,以至于没有动力去实现。https://www.theverge.com/2020/4/1/21202945/zoom-alternative-conference-video-free-app-skype-slack-hangouts-jitsi 到目前为止,Zoom安全和隐私缺陷和问题,......
  • 下一代边缘计算技术在哪里?
    云网一体,超大规模流量下边缘云的架构与技术揭秘伴随超高清视频时代的开启,热点赛事、晚会直播等特殊场景的巨大流量对业务的带宽储备、节点资源、流量调度和安全保障能力提出了新的挑战。火山引擎边缘云基于抖音世界杯、央视春晚直播、京东618等百亿级流量实践,构建了完整支撑超大规......
  • 聊城高新技术企业认定申报注意事项
    聊城高新技术企业认定申报注意事项1、知识产权Ⅱ类知识产权数量至少5件以上、Ⅰ类知识产权至少1件以上知识产权数量和质量双达标。知识产权是高企申报的重要条件,同时也是认定评审的主要得分项。知识产权(自主研发、转让、授让)方面的工作需要本年度完成。Ⅰ类知识产权:发明专利(含国......
  • 浅析大数据时代下的视频技术发展趋势以及AI加持下视频场景应用
    视频技术的发展可以追溯到19世纪初期的早期实验。到20世纪初期,电视技术的发明和普及促进了视频技术的进一步发展。1)数字化:数字化技术的发明和发展使得视频技术更加先进。数字电视信号具有更高的清晰度和更大的带宽,可以更快地传输和存储视频数据。2)高清晰度:高清晰度视频技术在21世纪......