diff --git "a/53 \345\221\250\345\216\232\350\276\260/package Web\350\241\250\345\215\225\344\270\216\346\225\260\346\215\256\345\272\223\350\277\236\346\216\245;import javax.md" "b/53 \345\221\250\345\216\232\350\276\260/20230526 \347\254\254\345\233\233\346\254\241\344\275\234\344\270\232 Update SQL By Web.md"
similarity index 52%
rename from "53 \345\221\250\345\216\232\350\276\260/package Web\350\241\250\345\215\225\344\270\216\346\225\260\346\215\256\345\272\223\350\277\236\346\216\245;import javax.md"
rename to "53 \345\221\250\345\216\232\350\276\260/20230526 \347\254\254\345\233\233\346\254\241\344\275\234\344\270\232 Update SQL By Web.md"
index a382190b4782c80b575b87a3c590b644f8269522..3a3fb7a90bb8df32a73e8470827d2fcb344f7de5 100644
--- "a/53 \345\221\250\345\216\232\350\276\260/package Web\350\241\250\345\215\225\344\270\216\346\225\260\346\215\256\345\272\223\350\277\236\346\216\245;import javax.md"
+++ "b/53 \345\221\250\345\216\232\350\276\260/20230526 \347\254\254\345\233\233\346\254\241\344\275\234\344\270\232 Update SQL By Web.md"
@@ -1,48 +1,34 @@
+# 20230526 第四次作业
+
+ **通过网页修改数据库**
+
```java
-package Web表单与数据库连接;
import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.annotation.*;
import java.io.IOException;
import java.io.PrintWriter;
-import java.sql.ResultSet;
-import java.sql.SQLException;
-@WebServlet(name = "Query", value = "/Query")
-public class Query extends HttpServlet {
+@WebServlet(name = "Insert", value = "/Insert")
+public class Insert extends HttpServlet {
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
- request.setCharacterEncoding("utf-8");
response.setContentType("text/html;charset=utf-8");
+ request.setCharacterEncoding("utf-8");
PrintWriter writer = response.getWriter();
- String id = request.getParameter("qid");
- String sql;
- ResultSet rs;
- if (id.equals(null)) {
- sql = "select * from t1";
- rs = Driver.query(sql);
- } else {
- sql = "select * from t1 where id like ?";
- rs = Driver.query(sql, id);
- }
- System.out.println(sql);
+ String sql = "insert into t1 values(?,?,?)";
+ String id = request.getParameter("id");
+ String name = request.getParameter("name");
+ String sex = request.getParameter("sex");
System.out.println(id);
- try {
- if (rs.isBeforeFirst()) {
- writer.write("数据库中没有任何信息");
- } else {
- while (rs.next()) {
- String Id = rs.getString(1);
- String name = rs.getString(2);
- String sex = rs.getString(3);
- writer.write("\tID=" + Id +
- "\tname=" + name +
- "\tsex=" + sex);
- }
- }
- } catch (SQLException e) {
- writer.write("查询错误");
+ System.out.println(name);
+ System.out.println(sex);
+ int i = Driver.update(sql, id, name, sex);
+ if (i > 0) {
+ writer.write("插入成功,变化了" + i + "条数据");
+ } else {
+ writer.write("插入失败");
}
}
@@ -54,111 +40,120 @@ public class Query extends HttpServlet {
```
```java
-package Web表单与数据库连接;
-
import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.annotation.*;
import java.io.IOException;
import java.io.PrintWriter;
-@WebServlet(name = "Insert", value = "/Insert")
-public class Insert extends HttpServlet {
+@WebServlet(name = "delete", value = "/delete")
+public class delete extends HttpServlet {
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
- response.setContentType("text/html;charset=utf-8");
request.setCharacterEncoding("utf-8");
+ response.setContentType("text/html;charset=utf-8");
PrintWriter writer = response.getWriter();
- String sql = "insert into t1 values(?,?,?)";
+
+ String sql = "delete from t1 where id=?";
String id = request.getParameter("id");
- String name = request.getParameter("name");
- String sex = request.getParameter("sex");
- System.out.println(id);
- System.out.println(name);
- System.out.println(sex);
- int i = Driver.update(sql, id, name, sex);
+ int i = Driver.update(sql, id);
if (i > 0) {
- writer.write("插入成功,变化了" + i + "条数据");
+ writer.write("删除成功");
} else {
- writer.write("插入失败");
+ writer.write("删除失败");
}
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
- doGet(request, response);
+
}
}
+
```
```java
-package Web表单与数据库连接;
-
-import java.sql.*;
+import javax.servlet.ServletException;
+import javax.servlet.annotation.WebServlet;
+import javax.servlet.http.HttpServlet;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+import java.io.PrintWriter;
-/**
- * @author zhc
- */
-public class Driver {
- private static String Driver = "com.mysql.jdbc.Driver";
- private static String URL = "jdbc:mysql:///test?useSSL=false&unicode=true&characterEncoding=utf8";
- private static String User = "root";
- private static String Paw = "root";
+@WebServlet("/update")
+public class Update extends HttpServlet {
+ protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
+ req.setCharacterEncoding("utf-8");
+ resp.setContentType("text/html;charset=utf-8");
+ PrintWriter writer = resp.getWriter();
- //注册驱动
- static {
- try {
- Class.forName(Driver);
- } catch (ClassNotFoundException e) {
- System.out.println("驱动注册失败");
+ String sql = "update t1 set name=?,sex=? where id=?";
+ String id = req.getParameter("id");
+ String name = req.getParameter("name");
+ String sex = req.getParameter("sex");
+ int i = Driver.update(sql, name, sex, id);
+ System.out.println(name);
+ System.out.println(sex);
+ System.out.println(id);
+ if (i > 0) {
+ writer.write("修改成功");
+ } else {
+ writer.write("修改失败");
}
}
- //连接数据库
- public static Connection conn() {
- System.out.println("连接数据中…");
- Connection conn = null;
- try {
- conn = DriverManager.getConnection(URL, User, Paw);
- } catch (SQLException e) {
- System.out.println("数据库连接失败");
- e.printStackTrace();
- }
- return conn;
+ protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
+ super.doPost(req, resp);
}
+}
- //查询
- public static ResultSet query(String sql,String ...keys){
- PreparedStatement pst;
- ResultSet rs=null;
+```
+
+```java
+import javax.servlet.*;
+import javax.servlet.http.*;
+import javax.servlet.annotation.*;
+import java.io.IOException;
+import java.io.PrintWriter;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+
+@WebServlet(name = "Query", value = "/Query")
+public class Query extends HttpServlet {
+ @Override
+ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
+ request.setCharacterEncoding("utf-8");
+ response.setContentType("text/html;charset=utf-8");
+ PrintWriter writer = response.getWriter();
+
+ String id = request.getParameter("qid");
+ String sql = "select * from t1 where id like ?";
+ ResultSet rs = Driver.query(sql, "%" + id + "%");
+ System.out.println(sql);
+ System.out.println(id);
try {
- pst = conn().prepareStatement(sql);
- System.out.println("查询中...");
- for (int i = 0; i < keys.length; i++) {
- pst.setString((i+1),keys[i]);
+ if (!rs.isBeforeFirst()) {
+ writer.write("数据库中没有此ID的信息");
+ } else {
+ while (rs.next()) {
+ String Id = rs.getString(1);
+ String name = rs.getString(2);
+ String sex = rs.getString(3);
+ writer.write("\tID=" + Id +
+ "\tname=" + name +
+ "\tsex=" + sex);
+ writer.write("
");
+ }
}
- rs = pst.executeQuery();
} catch (SQLException e) {
- System.out.println("查询错误");
- e.printStackTrace();
+ writer.write("查询错误");
}
- return rs;
}
- //更新
- public static int update(String sql,String ...keys ){
- int i = 0;
- try {
- PreparedStatement pst = conn().prepareStatement(sql);
- for (int j = 0; j < keys.length; j++) {
- pst.setString((j+1),keys[j]);
- }
- i = pst.executeUpdate();
- } catch (SQLException e) {
- System.out.println("更新失败");
- e.printStackTrace();
- }
- return i;
+ @Override
+ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
+ doGet(request, response);
}
}
```
@@ -168,12 +163,12 @@ public class Driver {
| 序号 | +车辆名称 | +所属品牌 | +车辆简介 | +价格 | +录入时间 | +
|---|---|---|---|---|---|
| ${car.cId} | +${car.cname} | +${car.brandName} | +${car.content} | +${car.place} | +${car.ltime} | +