Size: a a a

2019 August 06

VP

Vladimir Petrakovich in Kotlin JVM
Boris Vanin
Так, а теперь собственно о бизнес-логике и апдейтах, транзакциях и тл
А что с ними?
источник

AE

Alexandr Emelyanov in Kotlin JVM
Vladimir Petrakovich
Ну вот взять типичный ORM и вот эти вот проблемы с lazy/eager - то, что на графе объектов работает просто, в SQL делается совсем не так
Что не так?
источник

BV

Boris Vanin in Kotlin JVM
Vladimir Petrakovich
А что с ними?
Это бизнес-логика, а не выборка данных, вот что
источник

VP

Vladimir Petrakovich in Kotlin JVM
Boris Vanin
Это бизнес-логика, а не выборка данных, вот что
Ну ок. Я не понимаю, что именно рассказать? Как обновлять сущности в БД внутри транзакции без ORM?
источник

АО

Алексей Овсянников in Kotlin JVM
Quantum Harmonizer
я стопицот раз втыкался в этот спор, но так и не осознал, почему строка в таблице — не объект
Можно начать холивар на тему того, что объект - это штука с поведением🌚
источник

AE

Alexandr Emelyanov in Kotlin JVM
Алексей Овсянников
Можно начать холивар на тему того, что объект - это штука с поведением🌚
Давайте без st. Egor
источник

QH

Quantum Harmonizer in Kotlin JVM
Алексей Овсянников
Можно начать холивар на тему того, что объект - это штука с поведением🌚
да, нет проблем, поведение объекта — ходить в базку
источник

BV

Boris Vanin in Kotlin JVM
Vladimir Petrakovich
Ну ок. Я не понимаю, что именно рассказать? Как обновлять сущности в БД внутри транзакции без ORM?
Ну да, вот надо что-то создать, что-то обновить, где-то транзакцию начать, где-то что-то из кэша взять и тд, как ты это все делаешь? Какие решения используешь? Может сам что-то написал?
источник

АО

Алексей Овсянников in Kotlin JVM
Quantum Harmonizer
да, нет проблем, поведение объекта — ходить в базку
Походы в базу - это уже не орм:)
источник

AE

Alexandr Emelyanov in Kotlin JVM
Boris Vanin
Ну да, вот надо что-то создать, что-то обновить, где-то транзакцию начать, где-то что-то из кэша взять и тд, как ты это все делаешь? Какие решения используешь? Может сам что-то написал?
Они без кеша живут, инфа сотка
источник

VP

Vladimir Petrakovich in Kotlin JVM
Boris Vanin
Ну да, вот надо что-то создать, что-то обновить, где-то транзакцию начать, где-то что-то из кэша взять и тд, как ты это все делаешь? Какие решения используешь? Может сам что-то написал?
Последний раз, когда я работал с РСУБД, я просто взял jOOQ, накидал запросов на необходимые операции и оно просто работало. А, ну ещё поверх была обёртка для кэширования результатов.
источник

AE

Alexandr Emelyanov in Kotlin JVM
Без сессионного
источник

BV

Boris Vanin in Kotlin JVM
Boris Vanin
Ну да, вот надо что-то создать, что-то обновить, где-то транзакцию начать, где-то что-то из кэша взять и тд, как ты это все делаешь? Какие решения используешь? Может сам что-то написал?
Да и просто мапинг на объекты при выборке
источник

AE

Alexandr Emelyanov in Kotlin JVM
Vladimir Petrakovich
Последний раз, когда я работал с РСУБД, я просто взял jOOQ, накидал запросов на необходимые операции и оно просто работало. А, ну ещё поверх была обёртка для кэширования результатов.
Для плоских данных - да
источник

VP

Vladimir Petrakovich in Kotlin JVM
Boris Vanin
Да и просто мапинг на объекты при выборке
А это же с ORM вообще не связано. Я делал ручками.
источник

VP

Vladimir Petrakovich in Kotlin JVM
Alexandr Emelyanov
Для плоских данных - да
Что есть плоские данные?
источник

AE

Alexandr Emelyanov in Kotlin JVM
Одна вложенность ещё ок. Когда важность 3+ с back reference - ваши жует не помогут
источник

AE

Alexandr Emelyanov in Kotlin JVM
Или сами напишите хибер
источник

VP

Vladimir Petrakovich in Kotlin JVM
Alexandr Emelyanov
Одна вложенность ещё ок. Когда важность 3+ с back reference - ваши жует не помогут
Что-то мне подсказывает, что работа с такими штуками через хибер тоже будет либо сложной, либо дико неэффективной
источник

AE

Alexandr Emelyanov in Kotlin JVM
Вот выйдет jpa 3 с async, там заживём
источник