宋悦 пре 8 година
родитељ
комит
55bd640b72

+ 4 - 0
core-api/pom.xml

@@ -49,6 +49,10 @@
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-web</artifactId>
         </dependency>
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-data-redis</artifactId>
+        </dependency>
         <dependency>
             <groupId>io.springfox</groupId>
             <artifactId>springfox-swagger2</artifactId>

+ 7 - 4
core-api/src/main/java/cn/com/qmth/examcloud/service/core/service/UserService.java

@@ -15,12 +15,12 @@ import org.springframework.data.domain.Example;
 import org.springframework.data.domain.ExampleMatcher;
 import org.springframework.data.domain.Page;
 import org.springframework.data.domain.Pageable;
+import org.springframework.data.redis.core.RedisTemplate;
 import org.springframework.stereotype.Service;
 
 import cn.com.qmth.examcloud.common.uac.AccessCtrlUtil;
 import cn.com.qmth.examcloud.common.uac.entity.AccessUser;
 import cn.com.qmth.examcloud.common.uac.enums.RoleMeta;
-import cn.com.qmth.examcloud.common.util.RedisUtil;
 import cn.com.qmth.examcloud.service.core.dto.UserInfo;
 import cn.com.qmth.examcloud.service.core.entity.Org;
 import cn.com.qmth.examcloud.service.core.entity.Student;
@@ -58,6 +58,9 @@ public class UserService {
     @Autowired
     UserLoginRepo userLoginRepo;
 
+    @Autowired
+    RedisTemplate redisTemplate;
+
     public Page<User> findAll(User userCriteria, Pageable pageable){
         ExampleMatcher exampleMatcher = ExampleMatcher.matching()
                 .withMatcher("name", contains())
@@ -149,7 +152,7 @@ public class UserService {
         //判断是否已登录,若已登录则强制已登录用户退出
         UserLogin userLogin= userLoginRepo.findFirstByUserId(user.getId());
         if(userLogin != null){
-            RedisUtil.deleteByte(userLogin.getToken());
+            redisTemplate.delete(userLogin.getToken());
             userLoginRepo.deleteByUserId(userLogin.getUserId());
         }
     }
@@ -186,7 +189,7 @@ public class UserService {
         accessUser.setRoles(rolesMap);
         accessUser.setToken(token);
         accessUser.setStudentId(studentId);
-        RedisUtil.setByte(token,accessUser);
+        redisTemplate.opsForValue().set(token,accessUser);
     }
 
     /**
@@ -238,7 +241,7 @@ public class UserService {
      * @param accessUser
      */
 	public void logout(AccessUser accessUser) {
-		RedisUtil.deleteByte(accessUser.getToken());
+		redisTemplate.delete(accessUser.getToken());
         userLoginRepo.deleteByUserId(accessUser.getUserId());
 	}
 

+ 6 - 1
core-main/src/main/java/cn/com/qmth/examcloud/service/core/AccessControlConfig.java

@@ -1,8 +1,10 @@
 package cn.com.qmth.examcloud.service.core;
 
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
 import org.springframework.context.annotation.Profile;
+import org.springframework.data.redis.core.RedisTemplate;
 import org.springframework.web.servlet.config.annotation.CorsRegistry;
 import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
 import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
@@ -17,9 +19,12 @@ import cn.com.qmth.examcloud.common.uac.AccessCtrlInterceptor;
 //@Profile("prod")
 public class AccessControlConfig extends WebMvcConfigurerAdapter {
 
+	@Autowired
+	RedisTemplate redisTemplate;
+
 	@Bean
 	public AccessCtrlInterceptor getInterceptor() {
-		return new AccessCtrlInterceptor();
+		return new AccessCtrlInterceptor(redisTemplate);
 	}
 
     @Override

+ 3 - 1
core-main/src/main/resources/application-dev.properties

@@ -1,3 +1,5 @@
 spring.datasource.url=jdbc:mysql://localhost:3306/exam_cloud_test?useUnicode=true&characterEncoding=UTF-8
 spring.datasource.username=root
-spring.datasource.password=root
+spring.datasource.password=root
+spring.redis.host=127.0.0.1
+spring.redis.port=6379

+ 3 - 1
core-main/src/main/resources/application-prac.properties

@@ -1,3 +1,5 @@
 spring.datasource.url=jdbc:mysql://qmthmysql.mysql.rds.aliyuncs.com:3306/exam_cloud_sydx?useUnicode=true&characterEncoding=UTF-8
 spring.datasource.username=exam_cloud
-spring.datasource.password=examcloud123!@#
+spring.datasource.password=examcloud123!@#
+spring.redis.host=127.0.0.1
+spring.redis.port=6379

+ 3 - 1
core-main/src/main/resources/application-prod.properties

@@ -1,3 +1,5 @@
 spring.datasource.url=jdbc:mysql://qmthmysql.mysql.rds.aliyuncs.com:3306/exam_cloud?useUnicode=true&characterEncoding=UTF-8
 spring.datasource.username=exam_cloud
-spring.datasource.password=examcloud123!@#
+spring.datasource.password=examcloud123!@#
+spring.redis.host=127.0.0.1
+spring.redis.port=6379

+ 2 - 0
core-main/src/main/resources/application-test.properties

@@ -1,3 +1,5 @@
 spring.datasource.url=jdbc:mysql://192.168.1.74:3306/exam_cloud_yun?useUnicode=true&characterEncoding=UTF-8
 spring.datasource.username=root
 spring.datasource.password=root
+spring.redis.host=127.0.0.1
+spring.redis.port=6379