一种基于 Java17、SpringBoot3 和 JOOQ 的现代 Java 技术栈

2024-01-10 20:02:24 +08:00
 chuck1in

祝愿凡是进到这个帖子的坛友,在新的一年都身体健康、万事如意、平安吉祥、事业顺利~

我是一个基于 Jdk17 、SpringBoot3 和 Jooq 打造的现代化技术栈,今天已上线支持在线选配 mysqlredis 的功能。

JOOQ 是一个 CRUD 库,它用起来有点像 C# 的 LINQ

一份代码、一个配置、一种理念

我能为你带来

我的性格

我的样子

5303 次点击
所在节点    Java
16 条回复
wenhuibrave
2024-01-10 21:55:03 +08:00
数据库作为一等公民?? 第一次听说这个说法,在网上没有搜到资料,我孤陋寡闻。可以介绍下吗?
eote
2024-01-11 00:43:53 +08:00
jooq 不是收费的吗,你这是啥协议啊
siweipancc
2024-01-11 01:13:06 +08:00
你好,我需要部署到 oracle 数据库,可以 handle 这个需求吗。
netabare
2024-01-11 07:49:29 +08:00
jooq 是闭源的,这有很大的风险吧
bthulu
2024-01-11 08:22:08 +08:00
@siweipancc 可以的, 交保护费就行
clgon
2024-01-11 08:58:06 +08:00
cenbiq
2024-01-11 10:09:07 +08:00
每次看到其他语言的一些 ORM ,都不由的会感叹一下 C#的 ORM 有多么棒...
bv
2024-01-11 10:16:49 +08:00
问下 jooq 需要根据表结构生成代码,在那一块儿?怎么生成的?
chuck1in
2024-01-11 14:09:35 +08:00
@wenhuibrave 这个是 JOOQ 这个框架的理念,来源是这里: https://www.jooq.org/#a=usp-database-first

@siweipancc 你好,我查阅了一下相关信息,恐怕用开源版本的 JOOQ 操作 oracle 不是最佳实践,最好就像 bthulu 提到的使用收费版本。关于这一点有两个信息可供参考。1. https://github.com/jOOQ/jOOQ/issues/8218
2. https://www.jooq.org/download/#databases

@netabare
@eote
就像 clgon 提到的有开源版本,但是要注意开源版本并不是支持所有的数据库方言。

@bv
脚手架已经完成了 jooq generator 的集成配置(在 build.gradle.kts ),只需在本机上执行 generateJooq 这个 gradle 的插件就可以了。注意执行的时候确保 gradle 进程能够使用到环境变量文件(.env)中定义的各种属性。如果你是通过 docker 启动项目的话,这一切都是自动的。
netabare
2024-01-11 18:06:05 +08:00
看来记错了,有开源版本的话还是蛮好的。纯 Java 的话这个语法比别家的 ORM 或 dbutils 舒服多了。
Cyanhall
2024-01-11 20:47:10 +08:00
支持 JOOQ ,在自己的项目选型里面也用到了它;不过比较麻烦的是不支持根据 entity 自动生成建表 sql, 统一的分页查询处理写起来有点累赘,还没找到更好的解决办法。
chuck1in
2024-01-27 12:06:58 +08:00
今天将主页上和 github 中的代码进行了同步,包括 release https://github.com/ccmjga/mjga-scaffold/releases 也更新到了和主页上一致的版本,谢谢大家的支持。
ychost
2024-02-16 17:33:05 +08:00
@wenhuibrave DBFirst 、CodeFirst 这是 .NET 以前流行的最佳实践
chuck1in
2024-02-16 17:57:57 +08:00
@ychost .net 这套东西不管是框架也好,还是理念也好,甚至是用来编码的 IDE 也好,一直都是走的非常前面。
ForMrFang
2024-02-18 15:44:40 +08:00
单就 crud 方面来说,跟 mybatis flex 有点像的样子.
chuck1in
2024-02-18 16:55:08 +08:00
@ForMrFang 我看了一下这个框架,里面有些 api (比如链式调用)使用起来,看起来确实和这个 jooq 确实有点像。不过 jooq 历史挺长了,10 多年了,估计底层设计区别还是很大。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://ex.noerr.eu.org/t/1007609

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX