欢迎大家来提意见:
gitee.com/mr_zhaojin/mybatis-plus-join

不知道大家有没有遇到过拼接 SQL 时容易字段名写错的情况,mybatis-plus 用 lamda 表达式可以避免这种错误,不需要在写字段名了,错误出现的情况也少了。

就真的套娃了,
jdbc 套 mybatis,
mybatis 套 mybatis-plus,
mybatis-plus 又套 mybatis-plus-join...

在框架上二次封装还不如自己重新弄一个.

另外补充一下,
之所以市面上的框架没有复杂查询 api 是因为大家发现试图用 java 来实现 sql 的 dsl 效果往往不尽人意, 要么就是 api 过于臃肿要么就是缺乏灵活性,弄到最后还不如直接传一条 sql 进去简单明了...

sql 很难?要这么用不如 hibernate 吧

没必要,真的没必要

我的本意只是减少书写 sql 时容易导致字段错误,以及避免维护 xml 文件
不难,但是烦
各去所需吧

xml 形式的 sql 不比代码写出来的简单明了

的确 xml 对于动态条件判断的 sql 来说也不是简单明了.
但是不是所有框架的设计都以简单明了为目的.

非常不错

我选择手写 sql

xml 垃圾,都什么年代了

大哥用的啥?

#10
那你倒是说一个能替代 xml 的?

确实,一般公司都是最多选择到 mybatis,选择 mybatis-plus 的都很少了,更别说我这小小的 demo 级项目了,不过在小公司或者自己偷懒用用也还行,最好还是写 sql.

mybatis 的 XML 本质是 XMLLanguageDriver. mybatis 和他的 xml 文件映射在接口上做了解耦, 通过 mybatis LanguageDriver 你可以自行扩展, 配合 springEL 表达式完全可以简化掉 mybatis 的 xml 这样的判断.

至于为什么没什么人去扩展这个,存粹是因为即使扩展了也没什么更明显的优势, 使用 springEL 或者自定义 dsl 结构省不了多少代码, 查询条件复杂了反而还没有看着舒服.

学习了,刚看了一下 LanguageDriver,感觉好像意义不大,有 xml 就够了

#6 Java 社区去 XML 已经基本完成了,也就只有类似 mybatis 还是重依赖 XML

别的无所谓,xml 必须死。

不错,楼主加油

select count(1);

类似这种查询支持吗?

#16 啥社区

#19 可以支持,不就是 select count(1) from dual 吗?创建一个实体类叫 Dual,然后 ("dual")就行了

我继续写 SQL,您随意

java 17 来了,多行字符串功能利好 jdbc template,直接手写 sql 了