Redis Object Mapping and Repositories
Learn about object mapping and repositories through the Spring Data Redis framework.
Object mapping and repositories in Spring Data Redis provide a smooth integration between Java objects and Redis data structures, leveraging serialization and deserialization capabilities. Spring Data Redis repositories simplify data access by providing high-level abstractions for common Redis operations, such as CRUD operations and querying.
POJOs
We’ll cover the same example of the Book
and Author
POJOs referencing the Redis hashes book
and author
and convert them into entity classes.
Create a Book
entity
We’ll create the Book
POJO class in the com.smartdiscover.model
package to map it to the book
Redis hash.
Press + to interact
package com.smartdiscover.model;import lombok.Data;import org.springframework.data.redis.core.RedisHash;import java.io.Serializable;import java.util.List;import java.util.stream.Collectors;@Data@RedisHash("book")public class Book implements Serializable {private String id;private String name;private String summary;private List<Author> authors;@Overridepublic String toString() {return "Book{" +"id=" + id +", name='" + name + '\'' +", summary='" + summary + '\'' +((null != authors) ? ", authors=" + authors.stream().map(i -> i.getFullName()).collect(Collectors.toList()) + '\'' : "") +'}';}}
Here’s an explanation for the code:
-
...