From e6de96ec7dbc506e57db67d2413a7d4bd358494b Mon Sep 17 00:00:00 2001 From: sjm <2431685932@qq.com> Date: Fri, 7 Jul 2023 12:17:45 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E5=A4=B4=E5=83=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/com/hellogithub/dao/UserDao.java | 21 ++++++ src/com/hellogithub/service/UserService.java | 5 ++ .../servlet/userAvatarServlet.java | 70 +++++++++++++++++++ 3 files changed, 96 insertions(+) create mode 100644 src/com/hellogithub/servlet/userAvatarServlet.java diff --git a/src/com/hellogithub/dao/UserDao.java b/src/com/hellogithub/dao/UserDao.java index 32bb820..8baafd7 100644 --- a/src/com/hellogithub/dao/UserDao.java +++ b/src/com/hellogithub/dao/UserDao.java @@ -306,4 +306,25 @@ public class UserDao { return userEntity; } + + /** + * userAvatar头像 + * @return + */ + public void insertUserAvatar(String username,String url){ + Connection conn = null; + PreparedStatement preparedStatement = null; + String sql = "insert into user set userAvatar = ? where userName = ? AND isValid = 1;"; + try{ + conn = JdbcUtils.getConnection(); + preparedStatement = conn.prepareStatement(sql); + preparedStatement.setString(1, url); + preparedStatement.setString(2,username); + preparedStatement.executeUpdate(); + JdbcUtils.closeConnection(preparedStatement, conn); + }catch(Exception e){ + JdbcUtils.rollBackTransaction(conn); + e.printStackTrace(); + } + } } diff --git a/src/com/hellogithub/service/UserService.java b/src/com/hellogithub/service/UserService.java index 5164b5a..268dd34 100644 --- a/src/com/hellogithub/service/UserService.java +++ b/src/com/hellogithub/service/UserService.java @@ -76,4 +76,9 @@ public class UserService { public userEntity selectUserByName(String name ){return userDao.selectUserByName(name);} public int selectIdByName(String name ){return userDao.selectIdByName(name);} + + /** + * userAvatar + */ + public void insertUserAvatar(String username,String url){userDao.insertUserAvatar(username,url);} } diff --git a/src/com/hellogithub/servlet/userAvatarServlet.java b/src/com/hellogithub/servlet/userAvatarServlet.java new file mode 100644 index 0000000..24015c9 --- /dev/null +++ b/src/com/hellogithub/servlet/userAvatarServlet.java @@ -0,0 +1,70 @@ +package com.hellogithub.servlet; + +import com.alibaba.fastjson.JSONObject; +import com.hellogithub.entity.userEntity; +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 jakarta.servlet.http.HttpSession; + +import javax.servlet.annotation.WebServlet; +import java.io.IOException; +import java.io.PrintWriter; +import java.util.HashMap; + +@WebServlet("/userAvatar") +public class userAvatarServlet 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(); + HttpSession session = req.getSession(); + userEntity userentity = (userEntity) session.getAttribute("user"); + String url = req.getParameter("url"); + if(userentity == null) + { + setResultError("未登录",writer); + }else{ + userService.insertUserAvatar(userentity.getUserName(), url); + setResultOK("成功", 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); + } +} + } +} From 0f053f661358f1e26a68e9bf8fdb63fe5b6fdc96 Mon Sep 17 00:00:00 2001 From: sjm <2431685932@qq.com> Date: Fri, 7 Jul 2023 12:31:06 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E5=A4=B4=E5=83=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/com/hellogithub/dao/UserDao.java | 2 +- src/com/hellogithub/servlet/userAvatarServlet.java | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/src/com/hellogithub/dao/UserDao.java b/src/com/hellogithub/dao/UserDao.java index 8baafd7..179ba54 100644 --- a/src/com/hellogithub/dao/UserDao.java +++ b/src/com/hellogithub/dao/UserDao.java @@ -314,7 +314,7 @@ public class UserDao { public void insertUserAvatar(String username,String url){ Connection conn = null; PreparedStatement preparedStatement = null; - String sql = "insert into user set userAvatar = ? where userName = ? AND isValid = 1;"; + String sql = "UPDATE user set userAvatar = ''+?+'' WHERE userName = ? AND isValid = 1;"; try{ conn = JdbcUtils.getConnection(); preparedStatement = conn.prepareStatement(sql); diff --git a/src/com/hellogithub/servlet/userAvatarServlet.java b/src/com/hellogithub/servlet/userAvatarServlet.java index 24015c9..4e02f95 100644 --- a/src/com/hellogithub/servlet/userAvatarServlet.java +++ b/src/com/hellogithub/servlet/userAvatarServlet.java @@ -66,5 +66,4 @@ public class userAvatarServlet extends HttpServlet { setResult(200, msg, writer); } } - } -} + From 59e3373b817a8f22cdf61955cef6a8cf4c4ec78e Mon Sep 17 00:00:00 2001 From: Qing Date: Fri, 7 Jul 2023 12:32:28 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/com/hellogithub/servlet/UploadHandleServlet.java | 2 +- src/com/hellogithub/servlet/userAvatarServlet.java | 10 +++++----- web/WEB-INF/web.xml | 9 +++++++++ 3 files changed, 15 insertions(+), 6 deletions(-) diff --git a/src/com/hellogithub/servlet/UploadHandleServlet.java b/src/com/hellogithub/servlet/UploadHandleServlet.java index 36aca46..c787777 100644 --- a/src/com/hellogithub/servlet/UploadHandleServlet.java +++ b/src/com/hellogithub/servlet/UploadHandleServlet.java @@ -39,7 +39,7 @@ public class UploadHandleServlet extends HttpServlet { //得到上传文件的保存目录,将上传的文件存放于WEB-INF目录下,不允许外界直接访问,保证上传文件的安全 String savePath = this.getServletContext().getRealPath(File.separator+"WEB-INF"+File.separator+"upload"); - savePath= this.getServletContext().getRealPath(File.separator+"WEB-INF"+File.separator+"upload").replace("\\out\\artifacts\\hellogithub_war_exploded\\WEB-INF\\upload","\\web\\uploadFile"); + savePath= this.getServletContext().getRealPath(File.separator+"WEB-INF"+File.separator+"upload").replace("\\out\\artifacts\\helloGithub_war_exploded\\WEB-INF\\upload","\\web\\uploadFile"); System.out.println(savePath); // savePath="D:\\Java\\helloG\\hellogithub\\web\\uploadFile"; // String savePath="E:\\Desktop\\out"; diff --git a/src/com/hellogithub/servlet/userAvatarServlet.java b/src/com/hellogithub/servlet/userAvatarServlet.java index 4e02f95..8deed76 100644 --- a/src/com/hellogithub/servlet/userAvatarServlet.java +++ b/src/com/hellogithub/servlet/userAvatarServlet.java @@ -3,11 +3,11 @@ package com.hellogithub.servlet; import com.alibaba.fastjson.JSONObject; import com.hellogithub.entity.userEntity; 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 jakarta.servlet.http.HttpSession; +import javax.servlet.ServletException; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import javax.servlet.http.HttpSession; import javax.servlet.annotation.WebServlet; import java.io.IOException; diff --git a/web/WEB-INF/web.xml b/web/WEB-INF/web.xml index d80081d..a1c8489 100644 --- a/web/WEB-INF/web.xml +++ b/web/WEB-INF/web.xml @@ -3,4 +3,13 @@ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd" version="4.0"> + + + default + *.jpg + *.css + *.png + *.gif + *.js + \ No newline at end of file