diff --git a/src/com/hellogithub/dao/projectDao.java b/src/com/hellogithub/dao/projectDao.java index 5a5c624..1dcd77b 100644 --- a/src/com/hellogithub/dao/projectDao.java +++ b/src/com/hellogithub/dao/projectDao.java @@ -8,6 +8,8 @@ import org.apache.commons.dbutils.handlers.BeanHandler; import org.apache.commons.dbutils.handlers.BeanListHandler; import java.sql.Connection; +import java.sql.PreparedStatement; +import java.sql.ResultSet; import java.sql.SQLException; import java.util.List; @@ -309,4 +311,21 @@ public class projectDao { } return projectEntity; } + + public int selectProjectByPname(String projectName){ + ResultSet rs = null; + String sql = "SELECT * FROM project WHERE projectName = ? AND isValid = 1;"; + try{ + Connection conn = JdbcUtils.getConnection(); + PreparedStatement prep = conn.prepareStatement(sql); + prep.setString(1, projectName); + rs = prep.executeQuery(); + if(rs.wasNull()) + return 1; + else + return 0; + } catch (SQLException e) { + throw new RuntimeException(e); + } + } } diff --git a/src/com/hellogithub/servlet/selectProjectByPname.java b/src/com/hellogithub/servlet/selectProjectByPname.java new file mode 100644 index 0000000..cae260c --- /dev/null +++ b/src/com/hellogithub/servlet/selectProjectByPname.java @@ -0,0 +1,60 @@ +package com.hellogithub.servlet; + +import com.alibaba.fastjson.JSONObject; +import com.hellogithub.service.projectService; +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServlet; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; + +import javax.servlet.annotation.WebServlet; +import java.io.IOException; +import java.io.PrintWriter; +import java.util.HashMap; + +@WebServlet("/selectProjectByPname") +public class selectProjectByPname extends HttpServlet { + private projectService projectservice = new projectService(); + @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 projectName = req.getParameter("projectName"); + int bool = projectservice.selectProjectByPname("projectName"); + if(bool == 1){ + setResultError("项目已存在", writer); + } + 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); + } +}