请问各位喜欢用 JOOQ Hibernate Mybatis 其中哪个框架

2018-02-08 20:12:46 +08:00
 bxb100

能说一下喜欢的原因是最好的..谢谢各位大佬

13069 次点击
所在节点    Java
23 条回复
jorneyr
2018-02-08 20:22:40 +08:00
MyBatis: SQL 就应该有 SQL 的样子,DBA 能够优化 SQL,业务里非常多的多表联合查询
hujianxin
2018-02-08 21:00:54 +08:00
MyBatis:而且喜欢使用 xml 而不是注解的方式,我喜欢小而美的东西。

1. mybatis 原理简单而清晰,使用起来不会存在盲点
2. mybatis 使用简单,通过 xml+sql 语句的方式,既没有向原始 sql 那样繁琐,也不会过度封装,做到了我心目中比较好的中和
yuankui
2018-02-08 21:01:05 +08:00
spring-data-jpa

业务代码为何要关心那么多的 SQL?增删改查大多大同小异,不需要那么多重复的 sql
如果需要优化, 也有优化 sql 的口子.
ke1e
2018-02-08 21:35:00 +08:00
jpa
crazyq
2018-02-08 21:38:44 +08:00
Spring-data-jpa.
kingcos
2018-02-08 21:39:32 +08:00
以前用 MyBatis,后来就 JPA
kingcos
2018-02-08 21:39:48 +08:00
@kingcos 现在都快忘了😂…
jimrok
2018-02-08 23:00:23 +08:00
用自己撸的
woscaizi
2018-02-08 23:21:22 +08:00
现在用 springboot 比较多,所以在用 spring-data-jpa,它也可以很好的支持原生 sql。
wdlth
2018-02-08 23:35:04 +08:00
DBA 自己写视图,普通的 CRUD 就是 JPA+querydsl
autulin
2018-02-08 23:45:31 +08:00
现在用 jpa 爽的飞起(主要是在插入的时候),但是在查询的时候也怀念 MyBatis 的手动 XML 写 mapping,主要这样可以一次只查询部分字段,可以做到比较精简。一直想在 jpa 中找到类似的但更加优雅的方法,但是始终没有找到,目前暂时的方法就是使用构造函数取部分字段,这样最后其它字段都是 null,加上 JsonIgnore 注解,最后可以起到屏蔽的效果。

不知各位有没有跟我一样的需求
letitbesqzr
2018-02-09 09:01:04 +08:00
在企业级应用动则上千张表的情况下,不用 hibernate 这样的框架,关联关系都得把你写哭。
hibernate 这种框架,那一查询带出一堆关联,在互联网项目中用起来那速度简直是灾难。。

所以没有什么喜不喜欢的,看什么适合某个项目而已。
flyindance
2018-02-09 09:17:36 +08:00
mysql 创建视图性能消耗严重吗?
letitbesqzr
2018-02-09 09:23:53 +08:00
@autulin #11 期待 jpa 的下一个版本规范,现在对于级联查询的 EntityGraph 太难用了。。hibernate 对 jpa 的实现 又不能支持 hibernate 的 fetch 机制
nita22
2018-02-09 10:49:14 +08:00
还是比较喜欢自己写 SQL,所以还是比较偏好 MyBatis。反正简单的可以用 Generator 直接生成,复杂的就自己写 SQL 语句
mrsatangel
2018-02-09 12:01:43 +08:00
我很好奇,大家是怎么解决 DDL 变更之后 MyBatis 的 xml 的更新问题的?比如数据库里面增加了一个字段,那么 xml 里面也要相应增加一个字段,resultMap 也要增加一个字段。问题是 xml 文件里面可能有多个 resultMap,不同的语句的 resultMap 也不一样,一不小心就会对不上。简单一点的 xml 可以先删掉再用 MyBatisGenerator 重新生成一遍,如果 xml 里面有自己写的复杂的 resultMap 呢?
xuqd
2018-02-11 10:19:10 +08:00
@mrsatangel mybatis + mybatis generator
xuqd
2018-02-11 10:20:51 +08:00
@mrsatangel 不好意思没看清。。。。
carakan
2018-02-22 14:51:07 +08:00
@autulin 只查询部分字段可以引入 QueryDSL 呀,我是强迫证,看到每次查询那些多余的字段,我就开始查资料搞。。。一开始发现 Specification。。。但是还是不够灵活。。后来发现 QueryDsl。。。这才完美了。。。每次查询自己想要的字段。。

PS:有人用过 JOOQ 么
听说 JOOQ 不像 Hibernate 过度包装,也不像 mybatis 一样不符合 OO 思想。。。
PoetAndPoem
2019-02-14 18:51:59 +08:00
@yuankui 优化 sql 具体指的是?

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

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

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

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

© 2021 V2EX