redisTemplate注入が空
4112 ワード
springboot2.*redisを統合する場合、redisツールクラスのredisTemplateは常に空になります.問題コード復元: 1、ツールクラスを静的ツールクラスとして定義し、@Resource注入redisTemplate
2、制御層直接呼び出しツールクラスの静的方法ソリューション: 1、工具類をspring容器に注入する
2、ツール類beanを呼び出し先に注入する
これで問題は解決し,記録のみを行う.
1 public class RedisCacheUtil {
2 @Resource
3 private static RedisTemplate redisTemplate;
4
5 /**
6 *
7 * @param key
8 * @return
9 */
10 public static Object get(String key) {
11 return key == null ? null:redisTemplate.opsForValue().get(key); //redisTemplate null
12 }
13 }
2、制御層直接呼び出しツールクラスの静的方法
@RequestMapping("/getCache")
public Object getCache(String key){
return RedisCacheUtil.get(key);
}
@Component // spring
public class RedisCacheUtil {
@Resource
private RedisTemplate redisTemplate;
/**
*
* @param key
* @return
*/
public Object get(String key) {
return key == null ? null : redisTemplate.opsForValue().get(key);
}
}
2、ツール類beanを呼び出し先に注入する
@Resource
private RedisCacheUtil redisCacheUtil;
@RequestMapping("/getCache")
public Object getCache(String key){
return redisCacheUtil.get(key);
}
これで問題は解決し,記録のみを行う.