javaer 们, JPA 和 mybatis,喜欢用哪一个

2020-09-25 12:24:45 +08:00
 tsingke

mybatis 新出了 https://github.com/mybatis/mybatis-dynamic-sql 简单查询用起来很爽。

11616 次点击
所在节点    程序员
92 条回复
zlllllei
2020-09-25 16:45:54 +08:00
@Yechs 用 mybatis plus,增加属性很方便呀,简单对象,只用改实体。至于其他需要手写 sql 的地方,你用其他方式也肯定要改 sql 语句的。
sagaxu
2020-09-25 16:51:23 +08:00
@BBCCBB XML 拼 SQL 体验太差了,相比写代码而言

没有少写代码,SQL 还是那个长度
没有提高性能,增加了解释 XML 的开销
代码和逻辑分离,不利于读旧代码
降低了灵活性,某些场景下还很麻烦

现在 mybatis 有点几年前 ssh 那味儿
Cbdy
2020-09-25 16:52:41 +08:00
为什么不直接写 SQL ?
yuxing1171
2020-09-25 16:58:54 +08:00
这没有喜欢不喜欢吧,看项目实际情况决定,没有哪个更好,只有更合适。
20150517
2020-09-25 17:22:24 +08:00
jooq
TelltoLies
2020-09-25 17:27:11 +08:00
手写 sql 不香么?
zhaoyuting
2020-09-25 17:39:24 +08:00
同以上 JdbcTemplate
orm
2020-09-25 17:55:11 +08:00
JPA
zhady009
2020-09-25 18:15:05 +08:00
@sagaxu 一般的条件 IDEA 插件自动生成 只有很特殊的才要写
hankli
2020-09-25 18:41:03 +08:00
能用 JPA 为啥要用 mybatis
sagaxu
2020-09-25 18:44:06 +08:00
@zhady009 idea 插件能自动生成的,JPA 根据接口的方法签名自动合成 SQL 了
BBCCBB
2020-09-25 18:47:10 +08:00
@sagaxu 但写代码拼 sql 更麻烦呀. 像 mybatis 的 where, set 等标签能解决里面一个条件都不成立却多了一个 where, set 语句这种问题. 拼代码有点麻烦.
像 mybatis-plus 这种解决了大部分场景, 剩下的就是用 xml 或者注解写 sql 搞定.
sagaxu
2020-09-25 18:58:02 +08:00
@BBCCBB 代码手拼也可以封装几个 helper 方法啊,有了 lambda 之后封装简便了很多
lxk11153
2020-09-25 19:09:56 +08:00
@FanError #36 ActiveRecord 是啥?
lau52y
2020-09-25 21:14:43 +08:00
@gowk 😄+1
FanError
2020-09-25 21:40:15 +08:00
@lxk11153 https://javalite.io/activejdbc N 年前 ROR 里的概念
echo1937
2020-09-25 21:45:47 +08:00
喜欢 JPA > mybatis > mybatis-plus
rockyou12
2020-09-25 22:30:23 +08:00
JPA 加 QueryDSL
hhyyd
2020-09-25 22:40:30 +08:00
jpa+querydsl
yema50
2020-09-26 00:44:41 +08:00
@NeverNot 貌似 jpa 也可以直接写 sql 啊 ,@Query 里写联表查询

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

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

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

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

© 2021 V2EX