javaweb开发核⼼心之玩转Servlet4.0
简介:什么是Servlet-开发你的第⼀一个动态⽹网站
什么是Servlet
简介:是JavaServlet的简称,⽤用Java编写的运⾏行行在Web服务器器或应⽤用服务器器上的程序,具有独⽴立于平台和协议的特性, 主要功能在于交互式地浏览和⽣生成动态Web内容
作⽤用:接收⽤用户通过浏览器器传来的表单数据,或者读取数据库信息返回给浏览器器查看,创建动态⽹网⻚页。
接⼝口路路径:package javax.servlet
有两个常⻅见的⼦子类:HttpServlet、GenericServlet
- JavaWeb Servlet⽂文档:https://tomcat.apache.org/tomcat-9.0-doc/servletapi/index.html
- 再次介绍Web项⽬目的⽬目录,学javaweb更更多的是学⾥里里⾯面的类和对怎么⽤用,多做笔记
- 创建第⼀一个Servlet程序
package com.gaze;import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;public class UserServlet extends HttpServlet {//用于处理客户端发起的 GET 请求。@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {//设置 HTTP 响应的内容类型为 HTML,并指定字符编码为 UTF-8。resp.setContentType("text/html;charset=utf-8");//获取响应对象的输出流,用于向客户端发送文本数据。resp.getWriter().write("<h1>你好</h1>");}
}
配置web.xml
<?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-class> 指定 Servlet 类的全限定名,这告诉服务器这个类是一个 Servlet。-->
<!-- 服务器会通过反射机制加载并初始化该类。--><servlet><servlet-name>userServlet</servlet-name><servlet-class>com.gaze.UserServlet</servlet-class></servlet>
<!-- 指定访问路径:--><!-- 通过 <url-pattern> 定义用户访问该 Servlet 的 URL(如 /userServlet)。-->
<!-- 用户在浏览器中输入 /userServlet,服务器会将请求交给对应的 net.xdclass.web.UserServlet 类处理。-->
<!-- 灵活控制路径:--><!-- 你可以配置更复杂的 URL 路径规则,比如:-->
<!-- 精确匹配:/userServlet-->
<!-- 路径匹配:/user/*(适用于多个子路径)-->
<!-- 扩展匹配:*.do(适用于统一后缀)-->
<!-- 默认匹配:/(默认的根路径)--><servlet-mapping><servlet-name>userServlet</servlet-name><url-pattern>/userServlet</url-pattern></servlet-mapping>
</web-app>
访问url
注意:
如果发现导入servletjar包和pom.xml添加依赖会出现(ClassNotFoundException: javax.servlet.http.HttpServlet )
就必须查看你的Tomcat 版本如果 Tomcat版本9就用servlet4点及版本,如果tomcat10就用 ,servlet用5