diff --git a/src/com/hellogithub/dao/UserDao.java b/src/com/hellogithub/dao/UserDao.java index 32bb820..179ba54 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 = "UPDATE 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/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 new file mode 100644 index 0000000..8deed76 --- /dev/null +++ b/src/com/hellogithub/servlet/userAvatarServlet.java @@ -0,0 +1,69 @@ +package com.hellogithub.servlet; + +import com.alibaba.fastjson.JSONObject; +import com.hellogithub.entity.userEntity; +import com.hellogithub.service.UserService; +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; +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); + } +} + 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