用jOOQ用Java编写SQL
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
用jOOQ用Java编写SQL相关推荐
- jooq sql_用jOOQ用Java编写SQL
jooq sql jOOQ是"数据库优先"类型的安全SQL API,使您可以直观地用Java编写SQL,就像Java编译器本身支持SQL语言一样. 所有数据库模式,表,列,过程和其 ...
- java编写sql语句,java实现简单的给sql语句赋值的示例
代码本身很简单.拼接sql的时候?不好数,简单的用来赋值. /** * TODO 循环赋值,缺少的类型可随时添加 * @author Lucius * @param pt * @param list ...
- hive java udf_hive java编写udf函数
(一)创建JAVA 代码--例子 package hiveOpt; import org.apache.hadoop.hive.ql.exec.UDF; import org.apache.hadoo ...
- java中sql语句_java中sql语句的编写规则
java中sql语句的编写规则 发布时间:2020-06-26 15:11:11 来源:亿速云 阅读:143 作者:Leah 这期内容当中小编将会给大家带来有关java中sql语句的编写规则,文章内容 ...
- jooq sql_使用jOOQ和JavaFX将SQL数据转换为图表
jooq sql 最近,我们已经展示了Java 8和函数式编程将如何为使用jOOQ和Java 8 lambda和Streams进行SQL数据的函数数据转换为Java开发人员带来新的视角. 今天,我们将 ...
- 使用jOOQ和JavaFX将SQL数据转换为图表
最近,我们已经展示了Java 8和函数式编程将如何为使用jOOQ和Java 8 lambda和Streams进行SQL数据的函数数据转换为Java开发人员带来新的视角. 今天,我们将这一步骤更进一步, ...
- java执行sql文件_面试官问你MyBatis SQL是如何执行的?把这篇文章甩给他
初识 MyBatis MyBatis 是第一个支持自定义 SQL.存储过程和高级映射的类持久框架.MyBatis 消除了大部分 JDBC 的样板代码.手动设置参数以及检索结果.MyBatis 能够支持 ...
- java执行sql文件_面试官:MyBatis SQL是如何执行的?把这篇文章甩给他
初识 MyBatis MyBatis 是第一个支持自定义 SQL.存储过程和高级映射的类持久框架.MyBatis 消除了大部分 JDBC 的样板代码.手动设置参数以及检索结果.MyBatis 能够支持 ...
- mysql解释器_atitit.java解析sql语言解析器解释器的实现
atitit.java解析sql语言解析器解释器的实现 1. 解析sql的本质:实现一个4gl dsl编程语言的编译器 1 2. 解析sql的主要的流程,词法分析,而后进行语法分析,语义分析,构建sq ...
最新文章
- 网络设备Web登录检测工具device-phamer
- DOMINO的JDBC和ODBC连接方法
- apollo 配置中心_Apollo配置中心搭建笔记
- 解读Android LOG机制的实现
- 微信平台第三方服务器,浅谈微信第三方服务平台的发展前景
- Android 抽屉布局
- BinderHub 使用简介
- 阿里巴巴开发公约节选(日常编程较常用的一些)
- 由降低系统之间的接口维护和升级的成本想到的。。。
- mysql union
- 人家android博客地址
- [BZOJ4987] Tree
- 计算机语言处理程序有三种,程序设计语言有哪三种
- OpenStreetMap地图服务器安装
- ios开发中UIButton设置标题和图片不能同时显示问题解决
- 下班前几分钟,我彻底弄懂了并查集
- Maven学习(一)---Maven简介
- CTF基础知识-Web
- (转) 机器学习很有趣Part6:怎样使用深度学习进行语音识别
- ZZULIOJ:1011圆柱体表面积
热门文章
- 数组(ArrayList)底层怎样扩容
- 克鲁斯卡尔算法(公交站问题)
- win10打字突然变成繁体
- php处理j数组,PHP Bean 类处理 数组处理
- unity 3d shaderlab 开发实战详解_vue实战开发011:使用router-view嵌套路由详解
- B树、B+树、B*树谈到R 树
- fluent瞬态_Java中的瞬态关键字及其使用
- thymeleaf与jsp_PagingAndSortingRepository –如何与Thymeleaf一起使用
- java gc cms_Java垃圾收集器:G1GC何时将CMS强制退出?
- java调用命令行命令_Java命令行界面(第4部分):命令行