JPA 为何如此难用,是我姿势不对吗

2021-02-10 11:44:17 +08:00
 XiLemon

RT,明天就过年了,我还在写 JPA 的东西,我快吐了。。。

声明:因为是第一次用,不熟悉,另外,个人认为是本人不理解 JPA 的设计思想,所以用起来很不顺手。

槽点:

  1. 多个条件,组合查询,当有些条件没有传参的时候怎么处理
    • 代码层面处理:用 specification 来处理,写起来好啰嗦,过于麻烦
    • @Query 注解,写原生 SQL 也挺恶心的
  2. 指定 update 条件
    应该不支持吧,只能用 @Query 注解写原生的 SQL,一旦字段比较多,而且部分可能为空的情况,写起来也是噩梦
  3. 多表关联查询
    JPA 不推荐多表关联查询?用起来也不够方便。

我是在用 MyBatis 的思路来用 JPA,完全不对路子。MyBaits 很灵活,在使用 JPA 的时候,感觉到处都是限制和不便。比如要用乐观锁,JPA 虽然有 @Version 注解处理,但是只能在 save 的时候才能用到。

用 MyBatis 感觉是在呼吸自由的新鲜空气,用 JPA 感觉是在地下室。。。

那么用 JPA 的朋友,是真的不需要灵活性,从业务设计上就完全解决了这些情况么。

本帖带有强烈的个人主观印象,用词如有冒犯到 JPA 用户,请强势打脸,教我做人!

打工人,打工魂,打工人是人下人 o(╥﹏╥)o

提前祝大家新年快乐!

9125 次点击
所在节点    Java
61 条回复
dandankele
2023-02-03 08:41:09 +08:00
@cgpiao 那 java 应该用在啥地方好啊?

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

https://tanronggui.xyz/t/752786

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

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

© 2021 V2EX