JavaEE开发技术(第一章:Servlet基础)
一、介绍:
二、B/S和C/S架构
C/S架构
C/S架构是第一种计较早的软件架构,主要用于局域网内。
优点:客户端功能丰富,性能高,安全性强
缺点:需要单独下载安装,跨平台性差,不便于维护升级
B/S架构
B/S架构的全称为Browser/Server,即浏览器/服务器架构
Brower指的是Web浏览器,极少事务逻辑在前端实现,但主要事务逻辑在服务器端实现。
优点:无需安装,使用方便,部署和维护简单,跨平台,易于扩展
缺点:性能相对较低,安全性挑战更大
单体架构
三、Tomcat服务器
WEB服务器
WEB服务器(WEB Server)本质上是一个应用程序(软件),它运行在服务器主机上,主要畜栏里两件事:
1.监听请求:监听来自客户端(通常是WEB浏览器,如Chrome)的HTTP请求
2.发送响应:根据请求的内容,向客户端发辉相应的HTTP响应
这个请求响应模型是基于HTTP/HTTPS协议的,是B/S架构的核心
Tomcat
官方定义:Apache Tomcat是一个开源的、轻量级的Java Servlet、JavaServer Pages、JavaExpression Language和Java WebSocket技术的实现。由Apache软件基金会和Sun公司(现属Oracle)等共同开发。
通俗理解:Tomcat是一个能够运行Java Web程序的特殊WEB服务器。它不仅处理静态资源(HTML、图片),更重要的是它内置了能够解析和执行Servlet和JSP的“引擎”(即Servlet容器)。
优点:开源免费、轻量级、技术成熟
Tomact目录
Tomcat核心配置
在conf目录下server.xml文件
查看一下该文件,默认的端口号是8080,可以自行修改(80端口号为缺省端口号,如果修改为80,则浏览器访问时可省略端口号)
idea整合tomcat
新建项目
修改名称创建
编辑配置
添加新配置
修改浏览器为edge并且初次配置选择tomcat的路径(名称可以自定义)
修改项目结构(2025版本)
修改项目结构(老版本自动创建jsp文件,工件中的Web应用程序无需手动创建)
项目结构找到模块添加web.xml(2025版本)
项目结构中找到工件添加添加 Web应用程序:展开型 进来(2025版本)
选择原模块进来
在WEB下创建index.jsp文件,EB-INF下创建classes和lib目录(2025版本)
构建api依赖:将Tomcat安装目录下的lib目录里的servlet-api.jar复制进来
找到项目结构,模块中找到路径使用模块编译输出路径,统一到classes路径下应用即可
项目结构中模块,找到依赖,添加jar包,找到路径下jar包
选中应用
调配设置找到部署添加第一个工件,至此完成部署
四、Servlet介绍
Servlet(Server Applet)是用Java编写的、运行在服务器端的程序。 它遵循一套名为“Servlet规范”的标准(该规范是Java EE的一部分),用于扩展服务器的功能,可以动态地生成Web内容。
所以,Servlet的核心职责就是:接收请求、处理请求、生成响应
五、第一个Servlet程序
在src下创建包
在包下创建Servlet类
实现Servlet接口及接口中的所有抽象方法
在Servlet方法中输出Hello Servet!
添加路径映射
运行项目在浏览器中访问
映射路径是什么就在浏览器地址栏追加什么
日志如下
Servlet执行流程
六、Servlet的生命周期
Servlet对象的生命周期指一个对象从被创建到被销毁的整个过程
Servlet的生命周期完全由Servlet容器(如Tomcat) 管理,分为三个阶段:
1. 初始化 (init()) 时机:当Web应用启动后,第一次有客户端请求访问该Servlet时,容器会调用init()方法
作用:该方法只执行一次,用于加载一次性资源(如建立数据库连接、读取配置文件)
2. 处理请求(service()) 时机:每次客户端请求到来时,容器都会创建一个新线程来处理
作用:service方法会在每次发起请求时调用
3. 销毁 (destroy()) 时机:Web应用被停止或重新部署,或者服务器关闭时
作用:该方法只执行一次,用于释放init()方法中加载的资源(如关闭数据库连接、清理内存)
注意:destroy()调用后,Servlet对象会被垃圾回收器回收
Servlet对象是单实例支持多线程!!!
Servlet方法