У меня проблема с извлечением данных из redis в моем приложении для весенней загрузки Java
Я создал следующие классы
public interface ArticlesRepository extends CrudRepository<Articles, String> {
}
@RedisHash("Articles")
@JsonIgnoreProperties(ignoreUnknown = true)
public class Articles implements Serializable {
private static final long serialVersionUID = 1L;
private String id;
private long timestamp;
private ArticlesData articles;
}
@RedisHash("ArticlesData")
@JsonIgnoreProperties(ignoreUnknown = true)
public class ArticlesData implements Serializable {
private static final long serialVersionUID = 1L;
private String id;
private String continuation;
private ArrayList<ArticleInfo> articles;
}
@RedisHash("ArticleInfo")
@JsonIgnoreProperties(ignoreUnknown = true)
public class ArticleInfo implements Serializable {
private static final long serialVersionUID = 1L;
private String id;
private String title;
private String linkToArticle;
private long publishedDate;
}
Кажется, что все работает, как ожидалось, когда я сохраняю экземпляр Статей
Articles articles = new Articles(id, timestamp, articlesData);
articlesRepository.save(articles);
Однако, когда я пытаюсь извлечь этот объект из redis, происходит что-то странное
Articles articles = articlesRepository.findOne(redisArticleId);
Все поля в объекте (id и отметка времени) установлены правильно, за исключением ArticlesData, которая всегда возвращает ноль.
System.out.println(articles.getId()); ==> WAPCO:
System.out.println(articles.getTimestamp()); ==> 1530049920
System.out.println(articles.getArticles()); ==> null
У кого-нибудь есть идеи о том, что я могу делать не так?