讲师回答 / 老猿
以前我也没用过lambdaQuery调用带过滤参数的allEq,不带过滤参数的那种挺优雅的。类似上面的需求,我做了一种折中实现方式,不太优雅。给你列出代码看看,有时间我再研究研究,如果有答案,我会答复你。 User user = new User(); user.setAge(25); user.setRealName("王"); Map<SFunction<User, ?>, Object> params = new HashMap<>(); ...
2019-06-23
讲师回答 / 老猿
你好! 你说的问题, Mybatis-Plus的作者也意识到了,所以在即将发布的3.1.2版本中,对这里进行了调整。在3.1.2中,全局配置中将新增三个配置: 1、insertStrategy,在insert 的时候的字段验证策略; 2、updateStrategy,在 update 的时候的字段验证策略; 3、selectStrategy,在 select 的时候的字段验证策略。 在即将发布的新版本中,通过这几个配置,就能解决你提到的这个问题。
2019-06-22
最新回答 / qq_樱吹雪_03688961
懂了,MP开启了驼峰转下划线,操作的sql语句,会依据属性名转换为下划线的列名称,如,会将userId转换为user_id 会将userIdS转换为user_id_s
2019-06-20
需要将`mapper`包放到`resources`文件下,否则xml不解析就会报`org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.mp.dao.UserMapper.selectAll`错误。同时需要修改`application.yml`中的`mapper-locations`路径,因为移动了:
```
mybatis-plus:
mapper-locations:
- /mapper/*.xml
```
```
mybatis-plus:
mapper-locations:
- /mapper/*.xml
```
2019-06-19
已采纳回答 / 老猿
同学呀,这个就需要你学习Lambda表达式了,他本质上是一个语法糖,箭头坐标是形式参数,箭头右边是方法实现,使用Lambda表达式编程方式的接口只能有一个抽象方法。这个讲下去很多,你可以系统的学习一下,网上有很多教程。
2019-06-18