jOOQ是“数据库优先”的类型安全的SQL API,使您可以直观地用Java编写SQL,就像Java编译器本身支持SQL语言一样。
所有数据库模式,表,列,过程和其他对象均作为Java对象提供,可以直接在jOOQ SQL API中使用。
让我们看看它是如何工作的……
例如,假设您的数据库包含此表:
CREATE TABLE CUSTOMER (ID INT, FIRST_NAME VARCHAR(50),LAST_NAME VARCHAR(50),AGE INT
);
当针对它运行jOOQ的代码生成器时,您将能够与数据库进行如下交互:
dsl.select(CUSTOMER.FIRST_NAME, CUSTOMER.LAST_NAME).from(CUSTOMER).where(CUSTOMER.AGE.gt(20)).and(CUSTOMER.LAST_NAME.like("S%")).fetch();
jOOQ的主要特点是:
- 首先数据库:您的数据库拥有您最重要的资产–您的数据。 您想控制您的SQL。
- Typesafe SQL:使用您的IDE可以用Java有效地编写SQL。
- 代码生成:您的Java编译器将及早发现错误。
- 活动记录:不要编写重复的CRUD,而只需存储已修改的记录即可。
但是jOOQ还附带了许多辅助功能:
- 多租户:在运行时配置架构和表名称,并实现行级安全性。
- 标准化:编写可在所有数据库上运行的SQL,而不会浪费时间在具体语法上。
- 查询生命周期:涉及SQL代码生成生命周期,用于日志记录,事务处理,ID生成,SQL转换等等。
- 存储过程:调用它们或将它们嵌入到SQL中是一种方法。 不要浪费时间使用JDBC。
好奇? 开始在jOOQ上免费学习JCG学院课程 !
翻译自: https://www.javacodegeeks.com/2014/10/write-sql-in-java-with-jooq.html