3 ms·
Jooq has become my favorite ORM with how bare metal it is. I have it set up in gitlab pipelines to auto build my schema into an ORM. Just kick build on a sql ch
by soulnothing 8y ago
Jooq has become my favorite ORM with how bare metal it is. I have it set up in gitlab pipelines to auto build my schema into an ORM. Just kick build on a sql change, and then inherit the new package.
I saw an ancillary remark about prod connections, being bad. I generally agree. I usually build mine off of my staging environment. Assuming a staging database schema, was promoted to production. Then I have a sister build job, that kicks off my jooq build, trigger on the promotion task.
The biggest thing is the professional license for several databases. But it's not that bad really.
It also goes to one of my thoughts as well. The data model is crucial to the application. This is like the foundation for your home. I always try and hammer in talk about the data model first. Where did it come from, where next, and finally where do you want it to go.
- willtim 8y agoIf JOOQ is anything like LINQ-to-SQL (and it certainly looks inspired by it), then it isn't an ORM. It's a typed query language with a one-to-one mapping to SQL database tables/views. This gives us the low-level control of SQL, but with the ability to build our own abstractions and compositions using the host language. ORM's are frameworks (bad), JOOQ is a library (good).
- soulnothing 8y agoYou're exactly right it's very reminiscent of LINQ. It's pretty much raw sql exposed as methods. I just say ORM, because saying near bare metal sql. Bothers a lot of developers.
- willtim 8y agoNote the above is not totally correct, LINQ-to-SQL can be used as an ORM if required (i.e. is not restricted to one-to-one mappings from tables to classes).