【发布时间】:2019-05-05 05:56:20
【问题描述】:
我在我的 spring data redis 项目中使用了一个 CRUDRepository 来在我的 redis 集群中保留一个 redis 哈希。我已经编写了rest api来持久化并获取数据的值。这工作正常。
但是,我用 RedisHash 注释的实体被保存为一个集合 / 并且我无法使用 redis cli 查看值的内部。
如何在 redis cli 中查看集合数据类型(不弹出)
我查看了 redis 命令页面 https://redis.io/commands#set 我只得到可以弹出值的操作。我只需要偷看
编辑: 为了让事情更清楚,我正在使用 spring crudrepo 将用户实体保存到 redis 数据存储中。用户实体被保存为一组数据类型。
当我查询回用户详细信息时,我可以看到用户的全部详细信息
{ 用户名:“索马克”, userSurName: "达塔", 年龄:23, 邮编:“ah56h” }
我本质上想使用 redis cli 做同样的事情......但我得到的只是 127.0.0.1:6379> 会员用户 1)“索马克” 我如何查看 somak 对象的内部。
@RestController
@RequestMapping("/immem/core/user")
public class UserController {
@Autowired
private UserRepository userRepository;
@RequestMapping(path = "/save", method = RequestMethod.GET, produces = "application/json")
@ResponseStatus(HttpStatus.OK)
public void saveUserDetails() {
User user = new User();
user.setAge(23);
user.setUserName("somak");
user.setUserSurName("dattta");
user.setZipCode("ah56h");
userRepository.save(user);
}
@RequestMapping(path="/get/{username}", method = RequestMethod.GET, produces = "application/json")
public User getUserDetails(@PathVariable("username") String userName) {
return userRepository.findById(userName).get();
}
}
@Repository
public interface UserRepository extends CrudRepository<User, String>{
}
@RedisHash("user")
public class User {
private @Id String userName;
private @Indexed String userSurName;
private @Indexed int age;
private String zipCode;
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getUserSurName() {
return userSurName;
}
public void setUserSurName(String userSurName) {
this.userSurName = userSurName;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getZipCode() {
return zipCode;
}
public void setZipCode(String zipCode) {
this.zipCode = zipCode;
}
}
【问题讨论】:
标签: spring spring-boot redis spring-data-redis