From e7931c8b930d417c3b60a290376714ace7d52027 Mon Sep 17 00:00:00 2001 From: bruce Date: Thu, 13 Feb 2025 15:15:13 +0800 Subject: [PATCH] =?UTF-8?q?v0.1.4=20=E4=BC=98=E5=8C=96=E7=99=BB=E5=BD=95?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=EF=BC=8C=E6=B7=BB=E5=8A=A0=E5=AF=86=E7=A0=81?= =?UTF-8?q?=E5=8A=A0=E5=AF=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bruce/sams/controller/AuthController.java | 2 -- .../sams/filters/GlobalExceptionHandler.java | 2 -- .../sams/service/impl/AuthServiceImpl.java | 3 +- .../com/bruce/sams/utils/PasswordUtil.java | 30 +++++++++++++++++++ .../com/bruce/sams/SamsApplicationTests.java | 2 ++ 5 files changed, 34 insertions(+), 5 deletions(-) create mode 100644 src/main/java/com/bruce/sams/utils/PasswordUtil.java diff --git a/src/main/java/com/bruce/sams/controller/AuthController.java b/src/main/java/com/bruce/sams/controller/AuthController.java index e5786030..76934deb 100644 --- a/src/main/java/com/bruce/sams/controller/AuthController.java +++ b/src/main/java/com/bruce/sams/controller/AuthController.java @@ -24,10 +24,8 @@ public class AuthController { */ @PostMapping("/login") public AjaxResult login(@RequestBody LoginRequest loginRequest) { - System.out.println(loginRequest); // 认证成功,返回 JWT 令牌 String token = authService.authenticate(loginRequest); - System.out.println(AjaxResult.success("登录成功", token).toString()); return AjaxResult.success("登录成功", token); } } diff --git a/src/main/java/com/bruce/sams/filters/GlobalExceptionHandler.java b/src/main/java/com/bruce/sams/filters/GlobalExceptionHandler.java index b91d24f2..a3117d67 100644 --- a/src/main/java/com/bruce/sams/filters/GlobalExceptionHandler.java +++ b/src/main/java/com/bruce/sams/filters/GlobalExceptionHandler.java @@ -16,7 +16,6 @@ public class GlobalExceptionHandler { */ @ExceptionHandler(CustomException.class) public AjaxResult handleCustomException(CustomException e) { - System.out.println(AjaxResult.error(e.getCode(), e.getMessage())); return AjaxResult.error(e.getCode(), e.getMessage()); } @@ -25,7 +24,6 @@ public class GlobalExceptionHandler { */ @ExceptionHandler(Exception.class) public AjaxResult handleException(Exception e) { - System.out.println(AjaxResult.error(500, "服务器内部错误:" + e.getMessage())); return AjaxResult.error(500, "服务器内部错误:" + e.getMessage()); } } diff --git a/src/main/java/com/bruce/sams/service/impl/AuthServiceImpl.java b/src/main/java/com/bruce/sams/service/impl/AuthServiceImpl.java index d5b4c879..9f2babc8 100644 --- a/src/main/java/com/bruce/sams/service/impl/AuthServiceImpl.java +++ b/src/main/java/com/bruce/sams/service/impl/AuthServiceImpl.java @@ -7,6 +7,7 @@ import com.bruce.sams.exception.UserNotFoundException; import com.bruce.sams.mapper.SysRoleMapper; import com.bruce.sams.mapper.SysUserMapper; import com.bruce.sams.domain.sys.User; +import com.bruce.sams.utils.PasswordUtil; import com.bruce.sams.utils.TokenUtil; import com.bruce.sams.service.AuthService; import org.springframework.beans.factory.annotation.Autowired; @@ -48,7 +49,7 @@ public class AuthServiceImpl implements AuthService { } // 检查密码是否匹配 - if (!user.getPassword().equals(loginRequest.getPassword())) { + if (!PasswordUtil.matches(loginRequest.getPassword(), user.getPassword())) { throw new PasswordIncorrectException(); } diff --git a/src/main/java/com/bruce/sams/utils/PasswordUtil.java b/src/main/java/com/bruce/sams/utils/PasswordUtil.java new file mode 100644 index 00000000..5005255c --- /dev/null +++ b/src/main/java/com/bruce/sams/utils/PasswordUtil.java @@ -0,0 +1,30 @@ +package com.bruce.sams.utils; + +import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; + +/** + * 密码加密工具类 + */ +public class PasswordUtil { + private static final BCryptPasswordEncoder encoder = new BCryptPasswordEncoder(); + + /** + * 加密 + * @param rawPassword 原始密码 + * @return 加密后的密码 + */ + public static String encode(String rawPassword) { + return encoder.encode(rawPassword); + } + + /** + * 验证密码是否匹配 + * + * @param rawPassword 待匹配密码 + * @param encodedPassword 加密密码 + * @return 是否匹配 + */ + public static boolean matches(String rawPassword, String encodedPassword) { + return encoder.matches(rawPassword, encodedPassword); + } +} diff --git a/src/test/java/com/bruce/sams/SamsApplicationTests.java b/src/test/java/com/bruce/sams/SamsApplicationTests.java index 2a3da01b..ca022015 100644 --- a/src/test/java/com/bruce/sams/SamsApplicationTests.java +++ b/src/test/java/com/bruce/sams/SamsApplicationTests.java @@ -1,5 +1,6 @@ package com.bruce.sams; +import com.bruce.sams.utils.PasswordUtil; import org.junit.jupiter.api.Test; import org.springframework.boot.test.context.SpringBootTest; @@ -8,6 +9,7 @@ class SamsApplicationTests { @Test void contextLoads() { + System.out.println(PasswordUtil.encode("password123")); } }