在开始前,先理清概念,假设一个完整的地址栏:http://localhost:8080/servlet04/cook04?username=张三

(1)http > 使用的协议,localhost > 主机名/域名,8080 > 端口号

(2)servlet04 > 站点名/项目对外访问路径

        ① 跟在主机名:端口号/的后面,项目下资源访问路径的前面

        ② 访问的是整个项目

        ③在编辑配置 > 部署 > 应用程序上下文中查看或修改

(3)cook04 > 项目下的资源访问路径

        ① 跟在站点名后面

        ② 访问的是对应项目下的某个文件资源

        ③ 在@WebServlet()中设置

(4)? >  后面接的是请求参数

(5)URI指:/servlet04/cook04(站点名开始到?前的部分)

一、实现servlet

第一步:src下创建包,创建一个java文件

第二步:继承HttpServlet

此处要导入tomcat的servlet-api.jar包,详见下文idea集成tomcat的第三步(4)Web基础(二):Idea集成Tomcat-CSDN博客https://blog.csdn.net/kamal_happy/article/details/160252567

第三步:在类定义行上面,添加注释@WebServlet(“项目下资源访问路径”)

第四步:ctrl+o快捷键,重写service()方法,用于处理请求

注意:选择参数为HttpServletRequest类和HttpServletResponse类的service()方法

第五步:默认的项目对外访问路径较为复杂 > 点击编辑配置 > 部署 > 下方的应用程序上下文 > 修改为较为简单的项目对外访问路径 > 应用确定

第六步:测试是否实现成功。

在service()方法内,输入以下代码,点击运行 > 进入Tomcat服务器 > 地址栏在后面加上项目下资源访问路径,再进行访问 > 成功输出流到浏览器,则说明Servlet实现成功

resp.getWriter().write("hello servlet");

二、servlet生命周期

1. 生命周期

(1) init():创建并初始化实例(只调用一次)

(2)service():处理请求(可调用多次)

(3)destroy():销毁实例(只调用一次)

2. 流程

(1)客户端发送请求

(2)Service容器接收请求

(3)Service容器创建HttpRequest对象

(4)Service容器创建HttpResponse对象

(5)Service容器调用service()方法

(6)HttpRequest对象发送请求信息给HttpServlet

(7)HttpServlet返回响应信息给HttpResponse对象

(8)Service容器把响应结果返回给客户端

Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐