微流延迟加载/关系

时间:2019-12-19 06:21:45

标签: java microstream

遵循此代码https://github.com/microstream-one/demo-readmecorp/tree/master/core/src/main/java/com/jetstreamdb/demo/readmecorp 我可以看到一本书只有一位作者,这意味着一位作者可以拥有多本书=一对多的关系

试图制作一本书有很多作者,我在BookShop中尝试这样做。 (我想这会很多)

更改

private final Author author;

private final Lazy<List<Author>> author;

在构造函数中,我更改为

this.author = Lazy.Reference(author);

和方法author()到

public Collection<Author> author()
    {
        return this.author.get();
    }

我还注释了ReadMeCorpData中的方法以进行快速测试,然后出现此错误:

Exception in thread "main" java.lang.ExceptionInInitializerError
    at com.jetstreamdb.demo.readmecorp.Main.main(Main.java:30)
Caused by: java.lang.RuntimeException: Incompatible types: com.jetstreamdb.demo.readmecorp.Author -> one.microstream.persistence.lazy.Lazy

所以我的问题是我怎样才能使一本书拥有很多作者,可能是我的思想在微流中已经过时,那么在哪里或如何获得想法以微流中的正确方式对数据建模?

(我试图让Author实现Lazy并且错误消失了,但是由于我还没有找到实现Lazy的示例代码,所以我不知道这样做是否可行)