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] =?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); + } +} + } +}