diff --git a/.idea/workspace.xml b/.idea/workspace.xml
index 4c68a24..b138443 100644
--- a/.idea/workspace.xml
+++ b/.idea/workspace.xml
@@ -10,7 +10,7 @@
-
+
@@ -361,7 +361,7 @@
-
+
@@ -475,7 +475,15 @@
1745222555582
-
+
+
+ 1745222859116
+
+
+
+ 1745222859116
+
+
diff --git a/src/com/controller/deptadmin/DeptAlterStuServlet.java b/src/com/controller/deptadmin/DeptAlterStuServlet.java
index 996e494..54f1792 100644
--- a/src/com/controller/deptadmin/DeptAlterStuServlet.java
+++ b/src/com/controller/deptadmin/DeptAlterStuServlet.java
@@ -1,50 +1,58 @@
-package com.controller.deptadmin;
+package com.controller.deptadmin;//这一行指定了当前类所在的 Java 包,com.controller.deptadmin 表示该类属于 deptadmin 包下的控制器类。
-import com.dao.DeptAdminDao;
+import com.dao.DeptAdminDao;//导入 DeptAdminDao 类,它通常是一个用于与数据库交互的 DAO(数据访问对象)类,包含了执行 SQL 查询或更新操作的方法。
-import javax.servlet.ServletException;
-import javax.servlet.annotation.WebServlet;
+import javax.servlet.ServletException;//ServletException:用于处理 Servlet 相关的异常。
+import javax.servlet.annotation.WebServlet;//WebServlet:用于定义 Servlet 的注解,它可以声明 URL 映射。
+
+//HttpServlet, HttpServletRequest, HttpServletResponse:处理 HTTP 请求和响应的类。
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
-import java.io.IOException;
+import java.io.IOException;//IOException:用于处理输入输出相关的异常。
+
+@WebServlet("/DeptAlterStuServlet")//这是一个 Servlet 注解,标明该类是一个 Servlet,并定义了它的 URL 映射。用户访问 /DeptAlterStuServlet 路径时会触发该 Servlet。
-@WebServlet("/DeptAlterStuServlet")
+//定义了一个 DeptAlterStuServlet 类,它继承自 HttpServlet,表示这是一个处理 HTTP 请求的 Servlet。
public class DeptAlterStuServlet extends HttpServlet {
+ //这是重写的 doGet 方法,用于处理 HTTP GET 请求。当用户通过 GET 请求访问该 Servlet 时,doGet 方法会被调用。
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
- req.setCharacterEncoding("utf-8");
- resp.setCharacterEncoding("utf-8");
- resp.setContentType("text/html;charset=utf-8");
-
- //获取表单请求的参数
- String sno = req.getParameter("sno");
- String sname = req.getParameter("sname");
- String ssex = req.getParameter("ssex");
- String sage = req.getParameter("sage");
- String sclass = req.getParameter("sclass");
- String specialty = req.getParameter("specialty");
- String sdept = req.getParameter("sdept");
- String sphone = req.getParameter("sphone");
- String spsw = req.getParameter("spsw");
-
- //数据类型转换
+ req.setCharacterEncoding("utf-8");//req.setCharacterEncoding("utf-8"):设置请求的字符编码。
+ resp.setCharacterEncoding("utf-8");//resp.setCharacterEncoding("utf-8"):设置响应的字符编码。
+ resp.setContentType("text/html;charset=utf-8");//resp.setContentType("text/html;charset=utf-8"):设置响应的内容类型为 HTML,字符集为 UTF-8。
+
+ //从 HTTP 请求中获取前端表单提交的参数。req.getParameter() 方法用于获取指定参数名的值,并将其赋值给相应的变量
+ String sno = req.getParameter("sno");//学生学号
+ String sname = req.getParameter("sname");//学生姓名
+ String ssex = req.getParameter("ssex");//学生姓名
+ String sage = req.getParameter("sage");//学生年龄
+ String sclass = req.getParameter("sclass");//学生班级
+ String specialty = req.getParameter("specialty");//学生专业
+ String sdept = req.getParameter("sdept");//学生院系
+ String sphone = req.getParameter("sphone");//学生手机号码
+ String spsw = req.getParameter("spsw");//学生密码
+
+ //将 sage(学生年龄,字符串类型)转换为整数类型 sage1。Integer.parseInt() 方法将字符串转换为整数。
int sage1 = Integer.parseInt(sage);
+ //构建 SQL 更新语句,用于更新 student 表中的学生信息。SQL 语句中使用了占位符 ?,这些占位符将在后面通过参数值进行替换。
String sql = "update student set sname = ?, ssex = ?, sage = ?, sclass = ?, specialty = ?, sdept = ?, sphone = ?, spsw = ? where sno = ?";
- Object[] objects = {sname, ssex, sage1, sclass, specialty, sdept, sphone, spsw, sno};
+ Object[] objects = {sname, ssex, sage1, sclass, specialty, sdept, sphone, spsw, sno};//创建一个 Object 数组 objects,数组中存储了 SQL 语句中的占位符所需的参数值,按顺序传入 sname, ssex, sage1, sclass, specialty, sdept, sphone, spsw, sno。
- int num = DeptAdminDao.executeUpdate(sql, objects);
+ int num = DeptAdminDao.executeUpdate(sql, objects);//调用 DeptAdminDao.executeUpdate 方法执行 SQL 更新操作。该方法返回受影响的行数,即更新的记录数。num 变量将存储这个结果
- System.out.println(num);
+ System.out.println(num);//打印出更新操作影响的记录数,通常用于调试,确认操作是否成功。
// req.getRequestDispatcher("/DeptQueryStuByPageServlet?currentPage=1&rows=8").forward(req, resp);
+ //该行代码将请求转发到 DeptQueryStuByPageServlet,并附带了查询参数(currentPage=1, rows=7, sname=, sclass=, specialty=)。这是为了分页显示学生信息,并可能过滤学生的姓名、班级或专业。
req.getRequestDispatcher("/DeptQueryStuByPageServlet?currentPage=1&rows=7&sname=&sclass=&specialty=").forward(req, resp);
}
+ //这是重写的 doPost 方法。在 doPost 中调用 doGet 方法,意味着无论是通过 GET 请求还是 POST 请求,都会执行相同的操作。
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doGet(req, resp);