springboot orm 选型

2023-12-09 11:51:47 +08:00
 fxjson

请教下大家 java 下操作数据库的 orm 用 jpa 多还是 mybatis,感觉 jpa 不太灵活,另外如果用 mybatis 多,不知道大家 xml 中写 resultmap 字段映射吗,还是直接 sql 中用 as 字段别名为 java 字段名,关联查询 xml 中写 collection 标签还是一条 sql 查询出结果,java 代码去组装数据,个人不太喜欢 resultmap 这样的标签,不知道实际商业项目大家怎么用

2290 次点击
所在节点    程序员
24 条回复
404E
2023-12-09 12:00:42 +08:00
公司项目,小厂自己用的管理后台
有很多数据都是计算得出的,sql 里面直接 as vo 的字段名字
不过也有用 mp 查询出来然后在 java 里计算的
jackytang520
2023-12-09 12:09:09 +08:00
其实国内还是 mybatis 多些, mybatis 一般会搭配 mybatis plus 吧, 只有挺复杂的查询才会写 xml, 一般不用写吧. jpa 应该就是以前的 hibernate, 自己用过感觉驾驭起来有些难度
ZZ74
2023-12-09 12:09:57 +08:00
看你项目,业务简单,查询简单 jpa
业务复杂就 mybatis
silentsky
2023-12-09 12:24:37 +08:00
mybatis 虽然开始费劲了点 可是好维护 当你遇到一个问题时很容易就定位到具体位置
fxjson
2023-12-09 13:21:00 +08:00
@silentsky 请教下你们是 resultmap 映射字段还是 sql 语句中 as bean 字段名
guyeu
2023-12-09 13:40:02 +08:00
准备在新项目里上 eclipsestore 了,不折腾数据库写业务都会快一些
xuanbg
2023-12-09 14:02:12 +08:00
mybatis ,写注解不写 xml
looo
2023-12-09 14:11:40 +08:00
可以使用 QueryDSL 啊
yooomu
2023-12-09 15:09:48 +08:00
mybatis 配合 mybatis plus 使用,简单单表查询就不写 xml 了,联表复杂查询就写 xml 了。resultmap 自己项目都是能不写就不写,让框架自动映射字段。公司项目还是尽量每个字段都写全,方便调试和协作,现在都有 IDE 插件生成这些东西,也算不上多麻烦
unregister
2023-12-09 15:13:11 +08:00
内心总觉的 mybaits 土 ,不是很面向国际,大家不要喷我哈。特别是 mybatis plus 标志挺丑的
fxjson
2023-12-09 15:34:05 +08:00
@unregister 您工作用什么方案
lifespy
2023-12-09 16:46:19 +08:00
mybatis plus 用下来确实是体验最好的,兼顾了灵活性和方便
iv8d
2023-12-09 16:49:58 +08:00
mybatis plus 就是灵活,方便定位,入门容易
unregister
2023-12-09 17:00:37 +08:00
@fxjson 我用的比 mybatis 更古早,更麻烦。pl/sql
unregister
2023-12-09 17:05:59 +08:00
我的工作经验不是很丰富,但是就业务代码来说吧,很多人喜欢把业务放在 sql 中实现,有一个人特别夸张,有一定工作经验,完全放 sql ,我觉得写代码里不是更好吗?万一以后重构不是完蛋吗。我觉得查询就简简单单查询就可以了。
yechentide
2023-12-09 18:06:20 +08:00
喜欢手写 SQL ,我选择 DOMA2
linmt
2023-12-09 19:51:20 +08:00
@looo 我也在用这个,但是好像已经不维护了,仓库最后一次提交以经是一年前了,release 也是两年前的了,有啥替代的吗
lvdream
2023-12-09 20:09:50 +08:00
小公司,小项目,迭代少就 jpa ,省事

迭代多的就 mybatis
zigaai
2023-12-09 21:50:41 +08:00
jooq 逃~
alex8
2023-12-09 22:56:06 +08:00
Jpa+JdbcClient

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

https://www.v2ex.com/t/998913

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

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

© 2021 V2EX