一. jOOQ简介

1、jOOQ概述

jOOQ(Java Object Oriented Querying): 翻译成中文是 Java面向对象查询 的意思。

jOOQ是Data Geekery提供的基于Java的轻量级数据库访问库,通过特定的语法将类以及数据库模型翻译成对应的SQL语句实现实体与关系的映射,在数据库与类之间建立起一一对应关系,也可以让我们通过它的流式API构建出类型安全的SQL查询。

jOOQ是一个基于Java编写SQL的工具包,具有简单、轻量、函数式编程写SQL等独特优势,非常适合敏捷快速迭代开发。

jOOQ不管是商业版,还是开源版本都能跟Spring Boot一块使用。

2、jOOQ的特点:

继承了ORM框架的优点,简单操作,类型安全等。jOOQ将SQL建模为内部DSL,使用Java编译器编译SQL语法,元数据和数据类型。

jOOQ会根据数据库的元数据来生成对应的实体类,省略了原有开发中不断修改对应数据库的类名,属性名。

jOOQ允许运行时配置数据库模式,且支持行级别的安全。

支持联合查询,多表查询,存储过程等数据库高级操作。

二. Spring Boot中整合jOOQ

1、创建Web项目

我们按照之前的经验,创建一个web程序,并将之改造成Spring Boot项目,具体过程略。

2、添加依赖和插件

3、创建JooqConfig配置文件

在resource目录下,创建一个JooqConfig.xml配置文件,用来进行关联数据库,根据数据库进行逆向生成对应的Java代码。

4、mvn执行逆向工程

在lifecycle中执行compile命令,就可以自动执行逆向工程的命令了。

只要JooqConfig.xml配置文件没问题,并且依赖包都完整下载,就可以逆向工程执行成功。

逆向工程执行完毕后,我们就可以看到如下效果,发现自动生成了很多的Java代码,这些Java代码就是根据我们数据库中的表,生成的对应的Java代码。

对应的数据库表:

5、配置application.yml文件

主要是配置关联我们的数据库。

6、创建DataSource配置类

7、创建Service层代码

创建UserService接口,创建UserServiceImpl类

8、创建Controller测试接口

9、创建入口类

10、总的项目结构

11、测试接口

我们在浏览器中进行测试。

可以看到我们的接口功能已经实现了,感兴趣的朋友可以自己试验一下。

本文来自千锋教育,转载请注明出处。

SpringBoot2.x教程--整合使用jOOQ面向对象查询相关推荐

  1. 整合使用jOOQ面向对象查询

    一. jOOQ简介 1. jOOQ概述 jOOQ(Java Object Oriented Querying): 翻译成中文是 Java面向对象查询 的意思. jOOQ是Data Geekery提供的 ...

  2. 零基础快速入门SpringBoot2.0教程 (三)

    一.SpringBoot Starter讲解 简介:介绍什么是SpringBoot Starter和主要作用 1.官网地址:https://docs.spring.io/spring-boot/doc ...

  3. 零基础快速入门SpringBoot2.0教程 (二)

    一.SpringBoot2.x使用Dev-tool热部署简介:介绍什么是热部署,使用springboot结合dev-tool工具,快速加载启动应用官方地址:https://docs.spring.io ...

  4. java下拉框查询_[Java教程]jQuery实现联动下拉列表查询框

    [Java教程]jQuery实现联动下拉列表查询框 0 2015-12-07 18:00:04 厂商:请选择 品牌:请选择 型号:请选择 效果如下: 本文网址:http://www.shaoqun.c ...

  5. mysql教程详解之多表联合查询,MYSQL教程mysql多表联合查询返回一张表的内容实现代码...

    搜索热词 <MysqL教程MysqL多表联合查询返回一张表的内容实现代码>要点: 本文介绍了MysqL教程MysqL多表联合查询返回一张表的内容实现代码,希望对您有用.如果有疑问,可以联系 ...

  6. MongoDB 教程二: 添加, 删除,查询 shell命令

    视频:MongoDB 教程二: 添加, 删除,查询 shell命令 MongoDB Shell 常用操作命令 MonoDB   shell命令操作语法和JavaScript很类似,其实控制台底层的查询 ...

  7. Spring整合Mybatis之关联查询示例

    Spring整合Mybatis之关联查询示例 目录结构: Dept表: employee表: pojo包 Dept.java(实体类): package com.xmm.springboot_lab. ...

  8. 王者荣耀战区修改,安卓手机免ROOT教程王者荣耀战力查询

    今天给大家更新王者荣耀战区修改教程,安卓手机简单操作一学就会 如果有想了解地区战力的可以使用下方小程序查询 全国战区最低战力免费自助查询 星尘库 全国战区最低战力免费自助查询 小程序 本次教程,使用V ...

  9. Matlab AppDesigner编程教程第1章——面向对象编程

    Matlab AppDesigner编程教程第1章--面向对象编程 文章目录 Matlab AppDesigner编程教程第1章--面向对象编程 前言 一.什么是面向对象编程 二.使用步骤 1.新建类 ...

最新文章

  1. api1.7oracle,API 支持
  2. 扬帆起航 继续前行1 nginx+lua+template+cache
  3. 《算法竞赛进阶指南》打卡-基本算法-AcWing 91. 最短Hamilton路径:位运算、状态压缩dp、dp
  4. 小二,先来两桂花豆沙包!
  5. w8计算机配置要求,win8配置要求 详细介绍
  6. c语言程序题是如何判分的,C语言编程题判分系统的研究与实现
  7. cdh集群的重启过程
  8. mysql xtrabackup安装与原理
  9. Shell 的概述,操作命令
  10. ★★★【加快】页面的【加载速度】,先减少图片请求★
  11. 20170114 - Mac 向上一级文件夹快捷键
  12. PHP接口设置10分钟失效
  13. Win7安装IIS详解
  14. SSM框架整合(以黑马程序员2022最新SSM框架教程P59为例)
  15. 高质量外链的十大特性
  16. ue4 点击某一物体触发事件_UE4引擎——姜小白修炼记(三)
  17. Maven使用与学习
  18. linux服务器双网卡链路聚合,服务器多网卡绑定与交换机链路聚合对接探讨
  19. Bilibili视频投稿经验
  20. 同事逆袭面进阿里P7 年薪60W+,临别留下一张Android开发重点技术路线图

热门文章

  1. Ⅵ:zookeeper的Watcher事件监听机制
  2. 使用swagger编写开发接口文档
  3. 设计模式——装饰者(Decorator)模式DEMO——成绩汇报的装饰者模式实现
  4. BugKuCTF 杂项 啊哒
  5. java对象的包装_java中常见对象——基本包装类
  6. Ajax的使用四大步骤详解,五、使用Ajax的步骤
  7. 配置bitnami-redmine自带的Subversion
  8. Cookie和Session-学习笔记04【Session之验证码案例】
  9. 【CentOS Linux 7】实验5【Samba服务器管理】
  10. 某国有7个城市,它们互相之间没有公路相通,因此交通十分不便。为解决这一“行路难”的问题,政府决定修建公路,经过调研,如果把这7个城市之间的关系看成一个图,字母代表城市名称,数字代表修路的花费。【详解】