Java serverlet 学习笔记

0.serverlet 是server+applet的缩写。

1.也是一个类,继承自HttpServlet,没有main方法

2.有init 和 destroy方法,只会运行一次,容器是tomcat。

3.使用的时候必须在web.xml中映射

<servlet>
<servlet-name>login</servlet-name>			//注册名称,可以随便输入
<servlet-class>com.baidu.Login</servlet-class>		//该serverlet所在的class路径
</servlet>

<servlet-mapping> 
	<servlet-name>login</servlet-name> <span style="white-space:pre">	</span>//对应上面的注册名称
	<url-pattern>/login</url-pattern> <span style="white-space:pre">	</span>//url访问地址
</servlet-mapping>
4.请求的时候,会到service方法里边,然后service去做一个操作,比如:doPost  doGet.






### Java Servlet 使用指南 Java Servlet 是一种用于扩展 Web 应用程序功能的技术,它允许开发者编写动态网页并处理 HTTP 请求和响应。以下是关于 Java Servlet 的详细介绍及其示例代码。 #### 什么是 Java Servlet? Java Servlet 是运行在支持 Java 的 Web 容器(如 Apache Tomcat)上的服务器端组件,能够接收和发送 HTTP 请求与响应。Servlet 提供了一种标准的方法来扩展 Web 应用的功能[^1]。 #### 如何创建一个简单的 Servlet 类? 要创建一个基本的 Servlet,可以通过继承 `javax.servlet.http.HttpServlet` 并重写其方法(如 `doGet()` 或 `doPost()`)来完成。下面是一个典型的例子: ```java import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; // 使用 @WebServlet 注解定义 URL 映射 @WebServlet("/hello") public class HelloServlet extends HttpServlet { private static final long serialVersionUID = 1L; protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // 设置响应的内容类型为 text/html response.setContentType("text/html"); // 获取输出流以便向客户端返回数据 try (var out = response.getWriter()) { // 向客户端输出 HTML 内容 out.println("<!DOCTYPE html>"); out.println("<html><head><title>Hello</title></head><body>"); out.println("<h1>Hello from Servlet!</h1>"); out.println("</body></html>"); } } protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // 如果需要处理 POST 请求,则在此处实现逻辑 doGet(request, response); } } ``` 上述代码展示了如何通过继承 `HttpServlet` 来创建一个名为 `HelloServlet` 的简单 Servlet,并将其映射到 `/hello` 路径下[^2]。 #### 处理 GET 和 POST 请求 - **GET 方法**:通常用来获取资源信息。上面的例子中已经实现了 `doGet()` 方法。 - **POST 方法**:常用于提交表单或其他形式的数据。如果希望处理 POST 请求,可以在 `doPost()` 中加入额外的业务逻辑[^4]。 #### 部署 Servlet 到 Tomcat 服务器 为了使 Servlet 正确工作,需将其打包成 WAR 文件并部署至支持 JSP/Servlet 的容器(例如 Apache Tomcat)。具体步骤如下: 1. 将项目导出为 WAR 文件; 2. 把生成的 WAR 文件复制到 Tomcat 的 `webapps` 目录; 3. 启动 Tomcat 服务并通过浏览器访问指定路径验证结果。 #### 结合 MySQL 数据库操作 当需要连接数据库时,可以引入 JDBC 驱动,在 Servlet 中执行 SQL 查询语句。以下片段演示了如何查询一条记录并将结果显示给用户: ```java protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String url = "jdbc:mysql://localhost:3306/testdb"; String user = "root", password = "password"; try (Connection conn = DriverManager.getConnection(url, user, password)) { Statement stmt = conn.createStatement(); ResultSet rs = stmt.executeQuery("SELECT name FROM users LIMIT 1"); if (rs.next()) { String userName = rs.getString("name"); response.setContentType("text/plain"); PrintWriter out = response.getWriter(); out.print("User Name is: " + userName); } else { response.sendError(HttpServletResponse.SC_NOT_FOUND, "No data found."); } } catch (SQLException e) { throw new ServletException(e.getMessage(), e); } } ``` 此部分说明了如何利用 JDBC 进行基础的数据库交互。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值