Comments 7
Интересная статья. Спасибо!
У меня пара вопросов образовалась.
1) Ваш код содержит слишком много кода по сравнению с JPA и Hibernate. Собственно вопрос: а есть ли преимущества у Exposed перед JPA и Hibernate?
2) читать из таблицы все, а потом фильтровать - это точно the worst practises. Есть ли возможность фильтровать запросом в Exposed ?
Спасибо)
1) Из явных плюсов Exposed - это то, что он написан на Kotlin, а значит хорошо дружит с его фичами.
2) Есть, как раз про это глава «Оптимизация фасадом». Изначально использовалось чтение всего из таблицы методом all
, потому что без дополнительных настроек это единственный вариант поиска с фильтром по внешним сущностям в Exposed DAO.
1) да. припоминаю возню с плигинами для генерации дефолтных конструкторов
2) в смысле? А запрос нельзя сделать? Criteria какая-нибуть
2) да ..... вы правы. Смотрю на https://www.baeldung.com/kotlin/exposed-persistence#3-filtering-with-where-expressions .....все на лямбдах .... эти лямбды должы же в SQL потом попадать. ..... а как у Exposed с производительностью? кэширование есть?
Ждем следующую статью с битвой Exposed против Hibernate (@^◡^)
Решение проблемы N+1 при работе с Kotlin Exposed