Има ли начин да генерирате jOOQ класове от чист Java код? Ако не, коя би била най-близката алтернатива? В идеалния случай бих искал да направя това в изграждане на gradle.
Намерих този отговор, който препраща към тази публикация в блог. Същността на този пост е следната:
- Започнете с JPA модел
- Конвертирайте го в DDL скрипт (.sql файл, пълен с
CREATE
изрази) - Създайте нов HSQLDB файл и го напълнете с таблици, като изпълните този DDL скрипт върху него. Запазете получената DB на диск.
- Заредете тази DB от диска и стартирайте генериране на код на jOOQ върху нея
- използвайте получените генерирани класове jOOQ.
Има три неща, които ме притесняват в този подход:
- Тази публикация в блога прави всичко в Maven (& Ant). Бих искал да използвам Gradle, но мога да заобиколя това.
- Трябва да започна с JPA. Бих предпочел да започна с чиста jOOQ дефиниция на моята схема. JOOQ има ли DSL/API дефиниция на схема?
- Междинните стъпки (DDL скрипт и създаване на HSQLDB) не са необходими като краен продукт. Вместо това те са необходими само за преобразуване на JPA модела в нещо, което jOOQ разбира като вход. Трябва да има по-подреден (само за Java) начин, дори ако jOOQ няма собствен API за дефиниране на схема. има ли такъв