讲师回答 / 老猿
我讲MP入门篇的时候使用的是MP3.1.0。那个版本对删除是否成功的判断逻辑是用SqlHelper.delBool。而到3.1.2中使用SqlHelper.retBool说明判断的逻辑变了,它判断删除成功的逻辑已经变为返回的影响记录数不为null并且影响记录数得大于等于1,MP的作者对这块有调整。
2020-02-19
已采纳回答 / 老猿
如果你自定义的Mapper继承了BaseMapper,在BaseMapper中提供的方法你不需要加注解或在XML中写sql,直接用即可。你自定义的方法需要加注解或者在XML中写sql。
2020-02-19
已采纳回答 / 老猿
官方文档上解释nested是正常嵌套 不带 AND 或者 OR。但是我试验了一下,生成的语句是name LIKE ? AND (age < ? OR email IS NOT NULL)。感觉跟用and的效果是一样的呢。
2020-02-10
讲师回答 / 老猿
我试验了一下,使用selectMapsPage后确实是这样。你还有一个办法,你想要每页的记录是List泛型是Map的是吗?你可以使用selectPage方法,返回的对象是IPage类型的对象,你使用IPage接口的 default <R> IPage<R> convert(Function<? super T, ? extends R> mapper)这个方法转换一下。
2020-02-10
讲师回答 / 老猿
别的地方如果想用等于也是可以的,就是写法要不一样。在实体中加的这个condition。只是实体作为条件构造器的构造函数的参数的时候才会生效,其他地方你可以把name等于直接用条件构造器构造,通过构造函数创建条件构造器时不传实体。
2020-02-09
讲师回答 / 老猿
有点不太明白,你这个sql语句用原生的mybatis就可以实现,关键字你写错,是like,不是liker。还有like你模糊查询不用通配符吗?不用通配符那是精确匹配啊。where 后面的1=1不用写,原生的<where>标签就可以解决这个问题。 如果用MP的条件构造器实现,大概是这样,我没加那个1=1,应为没有必要:<...code...>
2020-02-08