1 fkdog 2021-09-24 15:40:24 +08:00 就真的套娃了, jdbc 套 mybatis, mybatis 套 mybatis-plus, mybatis-plus 又套 mybatis-plus-join... 在框架上二次封装还不如自己重新弄一个. |
2 fkdog 2021-09-24 15:45:19 +08:00 ![]() 另外补充一下, 之所以市面上的框架没有复杂查询 api 是因为大家发现试图用 java 来实现 sql 的 dsl 效果往往不尽人意, 要么就是 api 过于臃肿要么就是缺乏灵活性,弄到最后还不如直接传一条 sql 进去简单明了... |
![]() | 3 huifer 2021-09-24 15:51:53 +08:00 sql 很难?要这么用不如 hibernate 吧 |
![]() | 4 sonyxperia 2021-09-24 16:04:26 +08:00 没必要,真的没必要 |
5 MrGoooo OP |
8 levon 2021-09-24 16:49:21 +08:00 非常不错 |
9 qwer666df 2021-09-24 16:50:51 +08:00 我选择手写 sql |
![]() | 10 G2bN4dbX9J3ncp0r 2021-09-24 16:51:21 +08:00 @MrGoooo xml 垃圾,都什么年代了 |
11 MrGoooo OP @lidashuang 大哥用的啥? |
![]() | 12 wolfie 2021-09-24 16:58:33 +08:00 @lidashuang #10 那你倒是说一个能替代 xml 的? |
13 MrGoooo OP @qwer666df 确实,一般公司都是最多选择到 mybatis,选择 mybatis-plus 的都很少了,更别说我这小小的 demo 级项目了,不过在小公司或者自己偷懒用用也还行,最好还是写 sql. |
14 fkdog 2021-09-24 17:06:15 +08:00 @wolfie mybatis 的 XML 本质是 XMLLanguageDriver. mybatis 和他的 xml 文件映射在接口上做了解耦, 通过 mybatis LanguageDriver 你可以自行扩展, 配合 springEL 表达式完全可以简化掉 mybatis 的 xml <if test="xxx!=null">这样的判断. 至于为什么没什么人去扩展这个,存粹是因为即使扩展了也没什么更明显的优势, 使用 springEL 或者自定义 dsl 结构省不了多少代码, 查询条件复杂了反而还没有<if test="xxx!=null">看着舒服. |
17 Leviathann 2021-09-24 17:47:25 +08:00 via iPhone 别的无所谓,xml 必须死。 |
![]() | 18 K1W1 2021-09-24 18:08:39 +08:00 via Android 不错,楼主加油 |
![]() | 19 Kaiv2 2021-09-24 18:09:55 +08:00 select count(1); 类似这种查询支持吗? |
21 MrGoooo OP |
22 jorneyr 2021-09-24 18:20:42 +08:00 我继续写 SQL,您随意 |
![]() | 24 QGLNepal 2021-09-27 11:36:10 +08:00 jOOQ 了解下 |
![]() | 25 skyworker 2022-05-15 14:48:39 +08:00 一直用 laravel 的 ORM, 最近被迫要用 java 这些"看起来很好用的 XXX", 简直恶心吐了 |