mybatis-generator Mapper Selective结尾 解决mybatis-generator生成Mapper文件没有Selective结尾的问题
码农无双 人气:0想了解解决mybatis-generator生成Mapper文件没有Selective结尾的问题的相关内容吗,码农无双在本文为您仔细讲解mybatis-generator Mapper Selective结尾的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:mybatis-generator,生成Mapper文件,Selective结尾,下面大家一起来学习吧。
一开始从网上找的generatorConfig.xml内容如下:
<!-- 配置生成器 --> <generatorConfiguration> <!--执行generator插件生成文件的命令: call mvn mybatis-generator:generate -e --> <!-- 引入配置文件 --> <properties resource="mybatis-generator/mybatisGeneratorInit.properties"/> <!-- 一个数据库一个context --> <context id="MysqlTables" targetRuntime="MyBatis3Simple"> <!-- 自动识别数据库关键字,默认false,如果设置为true,根据SqlReservedWords中定义的关键字列表; 一般保留默认值,遇到数据库关键字(Java关键字),使用columnOverride覆盖 --> <property name="autoDelimitKeywords" value="true" /> <!-- 生成的Java文件的编码 --> <property name="javaFileEncoding" value="utf-8" /> <!-- beginningDelimiter和endingDelimiter:指明数据库的用于标记数据库对象名的符号,比如ORACLE就是双引号,MYSQL默认是`反引号; --> <property name="beginningDelimiter" value="`" /> <property name="endingDelimiter" value="`" /> ... </context> ... </generatorConfiguration>
发现运行生成代码的maven插件后,Mapper.java和Mapper.xml中都没有Selective结尾的方法(insertSelective、updateByPrimaryKeySelective)。
后来发现是context标签的targetRuntime属性的原因,将其设置为MyBatis3即可。
补充知识:MyBatis Plus中 selectPage 方法。返回的total为空问题
我记得我在哪里看到。好像哪个版本之后是不需要加分页插件的。
import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; @Configuration public class MyBatisPlusConfig { @Bean public PaginationInterceptor paginationInterceptor() { PaginationInterceptor page = new PaginationInterceptor(); page.setDialectType("mysql"); return page; } }
加上这个类问题基本就解决了
如果没解决。看一下项目中有没有pagehelper的依赖。如果有的话去掉就好了。
以上这篇解决mybatis-generator生成Mapper文件没有Selective结尾的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
加载全部内容