gpt4 book ai didi

spring-boot - Spring Data Redis Repository 支持不回读嵌入的复杂对象

转载 作者:行者123 更新时间:2023-12-04 03:12:46 25 4
gpt4 key购买 nike

我有一个 spring-boot 应用程序(1.4RC1,我知道它是 RC,但 Spring Data Redis 1.7.2 不是),我正在使用 spring-boot-starter-redis。

该应用程序使用 Spring 数据存储库 (CrudRepository),它应该使用 String 保存对象(使用 @RedisHash 注释) >Boolean 属性和一个自定义类属性,它也只有 StringsLongs 作为属性。

当我保存一个对象(通过存储库)时,一切都很顺利,我可以看到数据库中的所有属性,正如我所期望的那样。当我想从数据库中读取数据(通过存储库)时,我只从父对象中获取属性。自定义类属性为空。

我希望也能从数据库中加载属性。正如文档所述,您可以编写 custom converter , 但由于我不需要这样做,所以当我想写入数据时,我不应该也需要编写一个读取转换器。

我想知道是否需要注释自定义类属性,但我在文档中找不到任何内容。你能给我指出正确的方向吗?

类如下:

类示例:

@Data
@EqualsAndHashCode(exclude = {"isActive", "sampleCreated", "sampleConfiguration"})
@RedisHash
public class Sample {

@Id
private String sampleIdentifier;

private Boolean isActive;

private Date sampleCreated;

private SampleConfiguration sampleConfiguration;

public Sample(String sampleIdentifier, SampleConfiguration sampleConfiguration){
this.sampleIdentifier = sampleIdentifier;
this.sampleConfiguration = sampleConfiguration;
}

}

类示例配置:

@Data
public class SampleConfiguration {

private String surveyURL;

private Long blockingTime;

private String invitationTitle;

private String invitationText;

private String participateButtonText;

private String doNotParticipateButtonText;

private String optOutButtonText;

private Long frequencyCappingThreshold;

private Long optOutBlockingTime;

}

最佳答案

我按照 Christoph Strobl 的建议将 @NoArgsConstructor 添加到我的 Sample 类中。然后存储库正确读取 SampleConfiguration。谢谢,克里斯托夫!

关于spring-boot - Spring Data Redis Repository 支持不回读嵌入的复杂对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38595042/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com