Servlet 入门
学习内容来自 B站千峰Java视频
两种架构
- C/S 架构,即 Client/Server 架构
- B/S 架构,即 Browser/Server 架构
C/S 架构
特点:必须在客户端安装特定软件
优点:图形显示效果好
缺点:服务器的软件和功能进行升级,客户端也必须升级,不利于维护
B/S 架构
特点:无需安装客户端,通过浏览器访问即可;需要通过 HTTP 协议访问
优点:软件和功能进行升级时更新服务器即可,利于维护
缺点:图形显示效果不如 C/S
常见的 Web 服务器

Tomcat 安装
- 下载
进入官网选择想要的版本下载

- 下载后解压缩,目录结构如下


Tomcat 启动和停止
双击 bin/startup.bat 文件启动

启动后,在浏览器中输出 localhost:8080 查看

双击 shutdown.bat 文件即可关闭

项目部署及访问静态资源
Tomcat 是 web 服务器,项目都部署在 webapps 下,然后通过特定的 URL 访问
创建项目

访问
- 使用 startup.bat 打开 tomcat
- 在浏览器输入 localhost:8080/myweb/hello.html
什么是 Servlet
- Servlet 是 JavaEE 规范接口之一
- Servlet 是 JavaWeb 三大组件之一
- Servlet 是运行在服务器上的一个 java 小程序,接收客户端发送的请求,并响应数据给客户端

Servlet 作用

开发步骤
- 搭建开发环境

- 编写 Servlet


-
部署 Servlet

-
配置 Servlet


-
运行测试

IDEA 开发 Servlet实现部署、访问
这里因为使用的是 IDEA 2021.2,参考了这篇博客
创建后的项目结构为:

- 创建 Servlet 的实现类
public class MyServlet implements Servlet {
@Override
public void init(ServletConfig servletConfig) throws ServletException {
}
@Override
public ServletConfig getServletConfig() {
return null;
}
@Override
public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
System.out.println("my first servlet web project");
System.out.println(new Date());
}
@Override
public String getServletInfo() {
return null;
}
@Override
public void destroy() {
}
}
- 添加配置
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
version="4.0">
<servlet>
<servlet-name>my</servlet-name>
<servlet-class>com.sict.servlet.MyServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>my</servlet-name>
<url-pattern>/myservlet</url-pattern>
</servlet-mapping>
</web-app>
- 在 IDEA 中运行

项目打包
war 包

- 打开 Project Structure,进入 Artifacts

- 如图

- 选择右下角的 apply,然后点击 ok
- Build


此时 build 好的 war 包在 out 目录下

接下来将 war 包放入 tomcat 容器即可
HTTP 协议
概念

特点

通信流程

请求报文与响应报文
-
请求报文

例子:

-
响应报文

例子

本文介绍了Servlet的基础知识,包括C/S和B/S架构的区别,Tomcat的安装、启动、项目部署和静态资源访问。重点讲解了如何在IDEA中开发和部署Servlet,涉及HTTP协议和请求响应流程。
817

被折叠的 条评论
为什么被折叠?



