diff --git a/README.md b/README.md index 54b93d32..dd4cc3f7 100644 --- a/README.md +++ b/README.md @@ -337,7 +337,7 @@ Echo 是一套前后端不分离的开源社区系统,基于目前主流 Java ### 显示评论及相关信息 -> 评论部分前端的名称显示有些缺陷,有兴趣的小伙伴欢迎提 PR 解决~ +> 评论部分前端的名称显示有些缺陷,有兴趣的小伙伴欢迎提 PR 解决 ~ 关于评论模块需要注意的就是评论表的设计,把握其中字段的含义,才能透彻了解这个功能的逻辑。 @@ -451,7 +451,7 @@ double score = Math.log10(Math.max(w, 1)) -并推荐我的开源教程类项目 [『 CS-Wiki 』](https://gitee.com/veal98/CS-Wiki),Gitee 推荐项目,目前已 0.9k star: 致力打造完善的 Java 后端知识体系,不仅仅帮助各位小伙伴快速且系统的准备面试(秋招/社招),更指引学习的方向。 +并推荐我的开源教程类项目 [『 CS-Wiki 』](https://gitee.com/veal98/CS-Wiki),Gitee 推荐项目,目前已累积 1.5k star: 致力打造完善的 Java 后端知识体系,不仅仅帮助各位小伙伴快速且系统的准备面试(秋招/社招),更指引学习的方向。 ### 序章 @@ -465,12 +465,18 @@ double score = Math.log10(Math.max(w, 1)) - [Echo 在 Windows 环境下的部署](https://mp.weixin.qq.com/s/ZgYGqLB5_rfCXNrW9jqgtQ) - [Echo 在 Linux 服务器上的部署](https://mp.weixin.qq.com/s/q9X5sJv7mtPaSApZB0PxPA) -### 架构篇 +### 业务逻辑篇 + +- [Echo 的注册功能是怎么做的](https://mp.weixin.qq.com/s/SC2FRPrVUbNw5ySHopOpHQ) ### 技术要点篇 +- 代更 + ### 常见面试题 +- 待更 + ## 📞 联系我 有什么问题也可以添加我的微信,记得备注来意:格式 (学校或公司 - 姓名或昵称 - 来意) @@ -479,7 +485,7 @@ double score = Math.log10(Math.max(w, 1)) ## 🙋 微信交流群 -下方扫码加入 Echo 微信交流群,实时跟进项目进度、分享您的想法、讨论您遇到的问题: +下方扫码加入 Echo 微信交流群,实时跟进项目进度,第一时间获取教程更新,分享您的想法,还能帮您解决遇到的问题。如果二维码过期可以上方扫码加我微信回复 “Echo 交流群”,我拉你进群: @@ -490,8 +496,10 @@ double score = Math.log10(Math.max(w, 1)) 另外,若发现 Bug 或好的想法可以积极与我联系或提 PR / issue,采纳后您将出现在下方列表中。感谢以下小伙伴对本项目做出的贡献,排名按照时间先后: - [freedom_dh](https://gitee.com/dh_free) +- [paulisusu](https://gitee.com/paulisusu) > 🔗 友情链接(若您想要出现在这里,可以上方扫描微信二维码联系我): > > - [CS-Wiki](https://gitee.com/veal98/CS-Wiki):致力打造完善的 Java 后端知识体系,不仅仅帮助各位小伙伴快速且系统的准备面试,更指引学习的方向 > - [Furion](https://gitee.com/dotnetchina/Furion):让 .NET 开发更简单,更通用,更流行 +> - [Free-Fs](https://gitee.com/dh_free/free-fs):Spring Boot 开源云文件管理系统,方便快捷的管理云存储的文件 diff --git a/docs/README.md b/docs/README.md index 0fc377cb..d5959295 100644 --- a/docs/README.md +++ b/docs/README.md @@ -425,7 +425,7 @@ double score = Math.log10(Math.max(w, 1)) -并推荐我的开源教程类项目 [『 CS-Wiki 』](https://gitee.com/veal98/CS-Wiki),Gitee 推荐项目,目前已 0.9k star: 致力打造完善的 Java 后端知识体系,不仅仅帮助各位小伙伴快速且系统的准备面试(秋招/社招),更指引学习的方向。 +并推荐我的开源教程类项目 [『 CS-Wiki 』](https://gitee.com/veal98/CS-Wiki),Gitee 推荐项目,目前已累积 1.5k star: 致力打造完善的 Java 后端知识体系,不仅仅帮助各位小伙伴快速且系统的准备面试(秋招/社招),更指引学习的方向。 ### 序章 @@ -439,12 +439,18 @@ double score = Math.log10(Math.max(w, 1)) - [Echo 在 Windows 环境下的部署](https://mp.weixin.qq.com/s/ZgYGqLB5_rfCXNrW9jqgtQ) - [Echo 在 Linux 服务器上的部署](https://mp.weixin.qq.com/s/q9X5sJv7mtPaSApZB0PxPA) -### 架构篇 +### 业务逻辑篇 + +- [Echo 的注册功能是怎么做的](https://mp.weixin.qq.com/s/SC2FRPrVUbNw5ySHopOpHQ) ### 技术要点篇 +- 代更 + ### 常见面试题 +- 待更 + ## 📞 联系我 有什么问题也可以添加我的微信,记得备注来意:格式 (学校或公司 - 姓名或昵称 - 来意) @@ -453,7 +459,7 @@ double score = Math.log10(Math.max(w, 1)) ## 🙋 微信交流群 -下方扫码加入 Echo 微信交流群,实时跟进项目进度、分享您的想法、讨论您遇到的问题: +下方扫码加入 Echo 微信交流群,实时跟进项目进度,第一时间获取教程更新,分享您的想法,还能帮您解决遇到的问题。如果二维码过期可以上方扫码加我微信回复 “Echo 交流群”,我拉你进群: @@ -464,8 +470,10 @@ double score = Math.log10(Math.max(w, 1)) 另外,若发现 Bug 或好的想法可以积极与我联系或提 PR / issue,采纳后您将出现在下方列表中。感谢以下小伙伴对本项目做出的贡献,排名按照时间先后: - [freedom_dh](https://gitee.com/dh_free) +- [paulisusu](https://gitee.com/paulisusu) > 🔗 友情链接(若您想要出现在这里,可以上方扫描微信二维码联系我): > > - [CS-Wiki](https://gitee.com/veal98/CS-Wiki):致力打造完善的 Java 后端知识体系,不仅仅帮助各位小伙伴快速且系统的准备面试,更指引学习的方向 -> - [Furion](https://gitee.com/dotnetchina/Furion):让 .NET 开发更简单,更通用,更流行 \ No newline at end of file +> - [Furion](https://gitee.com/dotnetchina/Furion):让 .NET 开发更简单,更通用,更流行 +> - [Free-Fs](https://gitee.com/dh_free/free-fs):Spring Boot 开源云文件管理系统,方便快捷的管理云存储的文件 \ No newline at end of file diff --git a/src/main/java/com/greate/community/config/SecurityConfig.java b/src/main/java/com/greate/community/config/SecurityConfig.java index 38686e8a..c17e83bf 100644 --- a/src/main/java/com/greate/community/config/SecurityConfig.java +++ b/src/main/java/com/greate/community/config/SecurityConfig.java @@ -68,6 +68,7 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter implements Comm .antMatchers( "/discuss/delete", + "/discuss/delete/", "/data/**" ) .hasAnyAuthority( diff --git a/src/main/java/com/greate/community/controller/LoginController.java b/src/main/java/com/greate/community/controller/LoginController.java index 46ca9f37..033400e3 100644 --- a/src/main/java/com/greate/community/controller/LoginController.java +++ b/src/main/java/com/greate/community/controller/LoginController.java @@ -94,7 +94,8 @@ public class LoginController implements CommunityConstant { * http://localhost:8080/echo/activation/用户id/激活码 */ @GetMapping("/activation/{userId}/{code}") - public String activation(Model model, @PathVariable("userId") int userId, @PathVariable("code") String code) { + public String activation(Model model, @PathVariable("userId") int userId, + @PathVariable("code") String code) { int result = userService.activation(userId, code); if (result == ACTIVATION_SUCCESS) { model.addAttribute("msg", "激活成功, 您的账号已经可以正常使用!"); @@ -115,18 +116,14 @@ public class LoginController implements CommunityConstant { /** * 生成验证码, 并存入 Redis * @param response - * @param session */ @GetMapping("/kaptcha") - public void getKaptcha(HttpServletResponse response, HttpSession session) { + public void getKaptcha(HttpServletResponse response) { // 生成验证码 String text = kaptchaProducer.createText(); // 生成随机字符 System.out.println("验证码:" + text); BufferedImage image = kaptchaProducer.createImage(text); // 生成图片 - // 将验证码存入 session - // session.setAttribute("kaptcha", text); - // 验证码的归属者 String kaptchaOwner = CommunityUtil.generateUUID(); Cookie cookie = new Cookie("kaptchaOwner", kaptchaOwner); @@ -154,7 +151,6 @@ public class LoginController implements CommunityConstant { * @param code 验证码 * @param rememberMe 是否记住我(点击记住我后,凭证的有效期延长) * @param model - // * @param session 从 session 中取出验证码 * @param kaptchaOwner 从 cookie 中取出的 kaptchaOwner * @param response * @return @@ -164,7 +160,7 @@ public class LoginController implements CommunityConstant { @RequestParam("password") String password, @RequestParam("code") String code, @RequestParam(value = "rememberMe", required = false) boolean rememberMe, - Model model, /*HttpSession session, */HttpServletResponse response, + Model model, HttpServletResponse response, @CookieValue("kaptchaOwner") String kaptchaOwner) { // 检查验证码 // String kaptcha = (String) session.getAttribute("kaptcha");