密码加密 #2

Merged
hnu202326010210 merged 1 commits from develop into main 5 months ago

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.scapeSharing</groupId>
@ -20,6 +20,12 @@
<version>1.18.30</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>6.2.10</version>
</dependency>
</dependencies>
</project>

@ -4,24 +4,29 @@ import com.quizgenerator.common.Level;
import com.quizgenerator.entity.User;
import java.util.HashMap;
import java.util.Map;
import org.springframework.util.DigestUtils;
/** 由于数据较少,且不好提交数据库,所以选择写死在代码里面. */
public class UserDataBase {
private static final Map<String, User> userDatabase = new HashMap<>();
static {
// 原始密码统一为 "123",现在加密存储
String encodedPassword = "123";
encodedPassword = DigestUtils.md5DigestAsHex(encodedPassword.getBytes());
// 小学
userDatabase.put("张三1", new User("张三1", "123", Level.PRIMARY));
userDatabase.put("张三2", new User("张三2", "123", Level.PRIMARY));
userDatabase.put("张三3", new User("张三3", "123", Level.PRIMARY));
userDatabase.put("张三1", new User("张三1", encodedPassword, Level.PRIMARY));
userDatabase.put("张三2", new User("张三2", encodedPassword, Level.PRIMARY));
userDatabase.put("张三3", new User("张三3", encodedPassword, Level.PRIMARY));
// 初中
userDatabase.put("李四1", new User("李四1", "123", Level.JUNIOR_HIGH));
userDatabase.put("李四2", new User("李四2", "123", Level.JUNIOR_HIGH));
userDatabase.put("李四3", new User("李四3", "123", Level.JUNIOR_HIGH));
userDatabase.put("李四1", new User("李四1", encodedPassword, Level.JUNIOR_HIGH));
userDatabase.put("李四2", new User("李四2", encodedPassword, Level.JUNIOR_HIGH));
userDatabase.put("李四3", new User("李四3", encodedPassword, Level.JUNIOR_HIGH));
// 高中
userDatabase.put("王五1", new User("王五1", "123", Level.SENIOR_HIGH));
userDatabase.put("王五2", new User("王五2", "123", Level.SENIOR_HIGH));
userDatabase.put("王五3", new User("王五3", "123", Level.SENIOR_HIGH));
userDatabase.put("王五1", new User("王五1", encodedPassword, Level.SENIOR_HIGH));
userDatabase.put("王五2", new User("王五2", encodedPassword, Level.SENIOR_HIGH));
userDatabase.put("王五3", new User("王五3", encodedPassword, Level.SENIOR_HIGH));
}
/**

@ -2,6 +2,7 @@ package com.quizgenerator.service;
import com.quizgenerator.dao.UserDataBase;
import com.quizgenerator.entity.User;
import org.springframework.util.DigestUtils;
/** 用户服务. */
public class UserService {
@ -17,9 +18,9 @@ public class UserService {
// 1. 调用修改后的 findByUsername。如果用户不存在这里会得到 null
User user = UserDataBase.findByUsername(username);
// 2. 检查用户是否存在user != null并且密码是否匹配
// TODO 使用md5加密密码
if (user != null && user.getPassword().equals(password)) {
// 2. 检查用户密码是否匹配
password = DigestUtils.md5DigestAsHex(password.getBytes());
if (user.getPassword().equals(password)) {
// 登录成功,返回找到的 user 对象
return user;
} else {

Loading…
Cancel
Save