После этого кода https://github.com/microstream-one/demo-readmecorp/tree/master/core/src/main/java/com/jetstreamdb/demo/readmecorp Я вижу, что у одной книги только один Автор, это означает, что у одного автора может быть много книг = отношение один ко многим

Попытка сделать книгу имеет много авторов, я пытался сделать это, как в книжном магазине. (Наверное, будет много)

Изменение

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, я не знаю, нормально ли это делать)

1
ace 19 Дек 2019 в 09:21

1 ответ

Лучший ответ

Вы можете использовать другой пример с ленивым

https://github.com/microstream-one/example-android-recyclerview/blob/master/app/src/main/java/one/microstream/android/data/CustomerRepository.java

1
Zdenek Jonas 9 Янв 2020 в 15:30