redis
响应。但是我得到的响应量很小。 我能够在下方执行
Spring Boot
命令:redis-cli
在HMGET
中给我以下响应:
HMGET students "andrew"
现在,我在redis-cli
我创建了
1) "andrew;wilson;abcSchool;900"
班,
Spring Boot
班和@configuration
班
配置类:
@Component
组件类:
@RestController
Controller类:
@Configuration
public class RedisConfig {
@Bean
public RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory redisConnectionFactory) {
RedisTemplate<String, Object> template = new RedisTemplate<>();
template.setConnectionFactory(redisConnectionFactory);
template.setKeySerializer(new StringRedisSerializer());
template.setValueSerializer(new StringRedisSerializer());
return template;
}
}
我期望的响应与@Component
public class RedisDemo {
@Autowired
private RedisTemplate<String, Object> redisTemplate;
public List<Object> getHashFields(String hashKey, String... fields) {
return redisTemplate.opsForHash().multiGet(
hashKey,
List.of(fields)
);
}
}
@Autowired
private RedisDemo redisDemo;
@GetMapping("/test/{key}/{field}")
public List<Object> getHashFields(@PathVariable(name = "key")String key ,@PathVariable(name = "field")String field) {
return redisDemo.getHashFields(key, field);
}
但是我得到了
redis-cli
为了获得有效的响应,我应该更改什么。我关注
春季启动redis-template调用raw命令,例如hmget
我甚至试图给出原始的HMGet命令,如该问题所示。但是我无法得到正确的响应。
I假设,因为您使用
它注入了配置默认的重新标志 spring提供“以字符串为重点的便利类”在代码下方的try(例如,替换使用springredistempalte,然后用字符串替换对象)
1) "andrew;wilson;abcSchool;900"
[
null
]
JdkSerializationRedisSerializer