chuck1sn
(Chuck1sn)
1
无意间在 B 站看到的视频
在操作数据库方面,Java 的生态圈基本就是下面三种类型
- 以 Hibernate 的为代表的 ORM
- 以拼接模板字符串为代表的 Mybatis
- 以 Query DSL 为代表的 Jooq
Mybatis 过于古早,与 2024 年的 Java 和 Kotlin 格格不入。而且使用 xml 拼接字符串的安全性太低,没有人想把可以在编译时暴露的错误,留到运行时再暴露。
Hibernate 太过于复杂,你本来只想要一个 ORM 框架结果他给了你一个生态让你学习,最要命的是还包括复杂的缓存系统。要知道做软件就两件难事,一是命名,二是缓存。
Jooq 相当于一种折中,它提供了一些 ORM 的功能,同时又让你可以拼接类型安全的 SQL。非常不严谨的比喻的话,可以理解为类型安全的 Mybatis。
其实我本人十分喜欢 ORM,但是鉴于上面的各种原因,以至于我在做 MJGA 脚手架的时候,选择了 Jooq 这个折中的方案。
https://linux.do/t/topic/195717/
现在好了,我会认真评估 Jimmer 这个框架的可行性,考虑将其集成到 MJGA 脚手架的下一个模板中。
最后,希望国人的 IT 基建能够越来越多,工程质量能够越来越强。
附加信息
俄文原始链接:Jimmer ORM: An Alternative to JPA | Talk at Joker 2024
项目地址:GitHub - babyfish-ct/jimmer: A revolutionary ORM framework for both java and kotlin.
57 个赞
cng
5
Hibernate不是比Mybatis 更古早,以前的SSH中H不就是Hibernate吗?现在Mybatis 应该还很多吧
1 个赞
拳打Mybatis,脚踢Hibernate,连Jdbc都干爆了。。。让老夫缓一缓。。
1 个赞
chuck1sn
(Chuck1sn)
7
之前也对国产的一些库持保留态度,但是俄联储视频都拍了说明还是得到了认可。准备研究一下。
1 个赞
chuck1sn
(Chuck1sn)
8
基本只有国内在用。海外的话如果说 java这个领域清一色 Hibernate 生态。
然后少部分 Jooq
chuck1sn
(Chuck1sn)
12
哈哈,这下作者可不敢弃坑了。不然克格勃上门来催更就麻烦了。
2 个赞
chuck1sn
(Chuck1sn)
18
欢迎体验 Jimmer 虽然我其实也还没有用过。哈哈
chuck1sn
(Chuck1sn)
20
orm 肯定比用 xml 拼接 sql 用起来舒服多了…… 