赞
踩
问题环境:SpringBoot 连接redis 集群
1.启动引导类:
- package com.zengjx;
-
- import org.springframework.boot.SpringApplication;
- import org.springframework.boot.autoconfigure.SpringBootApplication;
-
- /**
- * @ClassName HelloController
- * @Description TODO
- * @Author zengjx
- * @Company zengjx
- * @Date 2019/12/6 14:38
- * @Version V1.0
- */
- @SpringBootApplication
- public class RedisDemoApplication {
-
-
- public static void main(String[] args) {
- SpringApplication.run(RedisDemoApplication.class);
-
- }
- }
2.配置文件:appliction.yml
- spring:
- datasource:
- driver-class-name: com.mysql.jdbc.Driver
- url: jdbc:mysql://192.168.211.132:3306/changgou_user?useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC
- username: root
- password: 123456
- application:
- name: redis-demo
- #redis配置
- redis:
- cluster:
- nodes:
- - 192.168.211.132:7001
- - 192.168.211.132:7002
- - 192.168.211.132:7003
- - 192.168.211.132:7004
- - 192.168.211.132:7005
- - 192.168.211.132:7006
- server:
- ssl:
- enabled: false
- port: 9008
- mybatis:
- configuration:
- map-underscore-to-camel-case: true
3. 测试类
- import org.junit.Test;
- import org.junit.runner.RunWith;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.boot.test.context.SpringBootTest;
- import org.springframework.data.redis.core.RedisTemplate;
- import org.springframework.test.context.junit4.SpringRunner;
-
- import javax.annotation.Resource;
-
- /**
- * @ClassName HelloController
- * @Description TODO
- * @Author zengjx
- * @Company zengjx
- * @Date 2019/12/6 14:39
- * @Version V1.0
- */
- @SpringBootTest(classes = RedisDemoApplicationTests.class)
- @RunWith(SpringRunner.class)
- public class RedisDemoApplicationTests {
-
- @Autowired
- // @Resource
- RedisTemplate<String, Object> redisTemplate;
- @Test
- public void contextLoads() {
- redisTemplate.boundValueOps("name").set("zengjx");
- System.out.println(redisTemplate.boundValueOps("name").get());
- }
-
-
- }
4. 运行测试类出现问题
- Description:
-
- Field redisTemplate in RedisDemoApplicationTests required a bean of type 'org.springframework.data.redis.core.RedisTemplate' that could not be found.
-
- The injection point has the following annotations:
- - @org.springframework.beans.factory.annotation.Autowired(required=true)
-
-
- Action:
-
- Consider defining a bean of type 'org.springframework.data.redis.core.RedisTemplate' in your configuration.
-
- 2019-12-06 15:04:41.880 ERROR 25024 --- [ main] o.s.test.context.TestContextManager : Caught exception while allowing TestExecutionListener [org.springframework.test.context.web.ServletTestExecutionListener@52719fb6] to prepare test instance [RedisDemoApplicationTests@1c807b1d]
-
- java.lang.IllegalStateException: Failed to load ApplicationContext
5.网上的一些解决方法
https://blog.csdn.net/weixin_33913332/article/details/92395338
https://blog.csdn.net/zhaoheng314/article/details/81564166
6.解决方法
原因是aplication.yml redis 密码要改成 root
问题1;测试类没有在一个包里面
问题2:@SpringBootTest(启动类.class)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。