diff --git a/src/com/hellogithub/dao/UserDao.java b/src/com/hellogithub/dao/UserDao.java index 6869e0b..d9a7cbb 100644 --- a/src/com/hellogithub/dao/UserDao.java +++ b/src/com/hellogithub/dao/UserDao.java @@ -2,11 +2,10 @@ package com.hellogithub.dao; import com.hellogithub.entity.userEntity; import com.hellogithub.utils.JdbcUtils; +import org.apache.commons.dbutils.QueryRunner; +import org.apache.commons.dbutils.handlers.BeanHandler; -import java.sql.Connection; -import java.sql.Date; -import java.sql.PreparedStatement; -import java.sql.ResultSet; +import java.sql.*; /** * 用户Dao层 @@ -113,4 +112,51 @@ public class UserDao { JdbcUtils.closeConnection(resultSet, preparedStatement, connection); } } + + public int dedletePieceLabel(int userID,String str){ + String label; + int num; + try { + Connection conn = JdbcUtils.getConnection(); + QueryRunner runner = new QueryRunner(); + String sql = "select searchHistory from user where userId=?"; + label = runner.query(conn, sql, new BeanHandler<>(String.class),userID); + label=label.replace(str,""); + sql="UPDATE user SET searchHistory = ? WHERE userId= ?"; + num = runner.update(conn,sql,label,userID); + } catch (SQLException e) { + throw new RuntimeException(e); + } + + return num; + } + public String selectLabel(int userID){ + String label; + try { + Connection conn = JdbcUtils.getConnection(); + QueryRunner runner = new QueryRunner(); + String sql = "select searchHistory from user where userId=?"; + label = runner.query(conn, sql, new BeanHandler<>(String.class),userID); + + } catch (SQLException e) { + throw new RuntimeException(e); + } + + return label; + } + + public int dedleteAllLabel(int userID){ + String label=""; + int num; + try { + Connection conn = JdbcUtils.getConnection(); + QueryRunner runner = new QueryRunner(); + String sql="UPDATE user SET searchHistory = ? WHERE userId= ?"; + num = runner.update(conn,sql,label,userID); + } catch (SQLException e) { + throw new RuntimeException(e); + } + + return num; + } } diff --git a/src/com/hellogithub/dao/projectDao.java b/src/com/hellogithub/dao/projectDao.java index 1bf19fe..4f41df7 100644 --- a/src/com/hellogithub/dao/projectDao.java +++ b/src/com/hellogithub/dao/projectDao.java @@ -21,6 +21,7 @@ public class projectDao { QueryRunner runner = new QueryRunner(); String sql = "select * from project where periodicals = ?"; projectEntityList = runner.query(conn, sql, new BeanListHandler<>(projectEntity.class), num); + conn.close(); } catch (SQLException e) { throw new RuntimeException(e); } @@ -34,6 +35,7 @@ public class projectDao { QueryRunner runner = new QueryRunner(); String sql = "select * from project Group BY periodicals DESC limit 1"; projectEntity = runner.query(conn, sql, new BeanHandler<>(projectEntity.class)); + conn.close(); } catch (SQLException e) { throw new RuntimeException(e); } @@ -47,6 +49,7 @@ public class projectDao { QueryRunner runner = new QueryRunner(); String sql = "select count(1) from project"; count = runner.query(conn, sql, new BeanHandler<>(Integer.class)); + conn.close(); } catch (SQLException e) { throw new RuntimeException(e); } @@ -61,6 +64,7 @@ public class projectDao { QueryRunner runner = new QueryRunner(); String sql = "select * from project where categoryId = ?"; projectEntityList = runner.query(conn, sql, new BeanListHandler<>(projectEntity.class), num); + conn.close(); } catch (SQLException e) { throw new RuntimeException(e); } diff --git a/src/com/hellogithub/service/UserService.java b/src/com/hellogithub/service/UserService.java index 8bef108..73cfc19 100644 --- a/src/com/hellogithub/service/UserService.java +++ b/src/com/hellogithub/service/UserService.java @@ -31,4 +31,7 @@ public class UserService { public userEntity findByUserName(String userName) { return userDao.findByUserName(userName); } + public int dedletePieceLabel(int userID,String str){ return userDao.dedletePieceLabel(userID, str);} + public String selectLabel(int userID){return userDao.selectLabel(userID);} + public int dedleteAllLabel(int userID){return userDao.dedleteAllLabel(userID);} } diff --git a/src/com/hellogithub/servlet/VerifycodeServlet.java b/src/com/hellogithub/servlet/VerifycodeServlet.java index c3887f6..470884d 100644 --- a/src/com/hellogithub/servlet/VerifycodeServlet.java +++ b/src/com/hellogithub/servlet/VerifycodeServlet.java @@ -25,7 +25,7 @@ public class VerifycodeServlet extends HttpServlet { // request.setCharacterEncoding("UTF-8"); // response.setCharacterEncoding("UTF-8"); // response.setContentType("text/html; charset=utf-8"); - // 设置响应头允许ajax跨域访问 + // 设置响应头允许ajax跨域访问` // response.setHeader("Access-Control-Allow-Origin", "*"); // response.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE"); // response.setHeader("Access-Control-Max-Age", "3600"); diff --git a/src/com/hellogithub/servlet/deleteAllLabelServlet.java b/src/com/hellogithub/servlet/deleteAllLabelServlet.java new file mode 100644 index 0000000..888fe0e --- /dev/null +++ b/src/com/hellogithub/servlet/deleteAllLabelServlet.java @@ -0,0 +1,50 @@ +package com.hellogithub.servlet; + +import com.alibaba.fastjson.JSONObject; +import com.hellogithub.service.UserService; +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServlet; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; + +import java.io.IOException; +import java.io.PrintWriter; +import java.util.HashMap; + +public class deleteAllLabelServlet extends HttpServlet { + private UserService userService = new UserService(); + @Override + protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { + doPost(req, resp); + } + + @Override + protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { + + PrintWriter writer = resp.getWriter(); + String id = req.getParameter("xxxxx"); + int num = userService.dedleteAllLabel(Integer.parseInt(id)); + if(num == 0 ){ + setResultError("删除失败",writer); + }else{ + setResultOK("删除成功",writer); + } + + } + public void setResult(Integer code, String msg, PrintWriter writer) { + HashMap result = new HashMap<>(); + result.put("code", code); + result.put("msg", msg); + String jsonString = JSONObject.toJSONString(result); + writer.println(jsonString); + writer.close(); + } + + public void setResultError(String msg, PrintWriter writer) { + setResult(500, msg, writer); + } + + public void setResultOK(String msg, PrintWriter writer) { + setResult(200, msg, writer); + } +} diff --git a/src/com/hellogithub/servlet/deletelabelServlet.java b/src/com/hellogithub/servlet/deletelabelServlet.java new file mode 100644 index 0000000..24b5c25 --- /dev/null +++ b/src/com/hellogithub/servlet/deletelabelServlet.java @@ -0,0 +1,49 @@ +package com.hellogithub.servlet; + +import com.alibaba.fastjson.JSONObject; +import com.hellogithub.service.UserService; +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServlet; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; + +import java.io.IOException; +import java.io.PrintWriter; +import java.util.HashMap; + +public class deletelabelServlet extends HttpServlet { + private UserService userService = new UserService(); + @Override + protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { + doPost(req, resp); + } + + @Override + protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { + PrintWriter writer = resp.getWriter(); + String id = req.getParameter("xxxxx"); + String str = req.getParameter("xxxxx"); + int num = userService.dedletePieceLabel(Integer.parseInt(id),str); + if(num == 0 ){ + setResultError("删除失败",writer); + }else{ + setResultOK("删除成功",writer); + } + } + public void setResult(Integer code, String msg, PrintWriter writer) { + HashMap result = new HashMap<>(); + result.put("code", code); + result.put("msg", msg); + String jsonString = JSONObject.toJSONString(result); + writer.println(jsonString); + writer.close(); + } + + public void setResultError(String msg, PrintWriter writer) { + setResult(500, msg, writer); + } + + public void setResultOK(String msg, PrintWriter writer) { + setResult(200, msg, writer); + } +} diff --git a/src/com/hellogithub/servlet/selectUserLabelServlet.java b/src/com/hellogithub/servlet/selectUserLabelServlet.java new file mode 100644 index 0000000..e174c12 --- /dev/null +++ b/src/com/hellogithub/servlet/selectUserLabelServlet.java @@ -0,0 +1,56 @@ +package com.hellogithub.servlet; + +import com.alibaba.fastjson.JSONObject; +import com.hellogithub.service.UserService; +import jakarta.servlet.ServletException; +import jakarta.servlet.http.*; + +import java.io.IOException; +import java.io.PrintWriter; +import java.util.HashMap; + +public class selectUserLabelServlet extends HttpServlet { + private UserService userService = new UserService(); + @Override + protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { + doPost(req, resp); + } + + @Override + protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { + resp.setCharacterEncoding("UTF-8"); + resp.setContentType("text/html; charset=utf-8"); + // 设置响应头允许ajax跨域访问 + String curOrigin = req.getHeader("Origin"); + resp.setHeader("Access-Control-Allow-Origin", curOrigin == null ? "true" : curOrigin); + resp.setHeader("Access-Control-Allow-Credentials", "true"); + resp.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE, HEAD"); + resp.setHeader("Access-Control-Max-Age", "3600"); + resp.setHeader("Access-Control-Allow-Headers", "access-control-allow-origin, authority, content-type, version-info, X-Requested-With"); + resp.setContentType("application/json;charset=UTF-8"); + + + PrintWriter writer = resp.getWriter(); + String id = req.getParameter("xxxxx"); + String jsonString = JSONObject.toJSONString(userService.selectLabel(Integer.parseInt(id))); + writer.println(jsonString); + writer.close(); + + } + public void setResult(Integer code, String msg, PrintWriter writer) { + HashMap result = new HashMap<>(); + result.put("code", code); + result.put("msg", msg); + String jsonString = JSONObject.toJSONString(result); + writer.println(jsonString); + writer.close(); + } + + public void setResultError(String msg, PrintWriter writer) { + setResult(500, msg, writer); + } + + public void setResultOK(String msg, PrintWriter writer) { + setResult(200, msg, writer); + } +}