解决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结尾的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
spring mvc+localResizeIMG实现HTML5端图片压缩上传
这篇文章主要为大家详细介绍了使用spring mvc+localResizeIMG实现HTML5端图片压缩上传,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2017-04-04
SpringBoot中mapper.xml文件存放的两种实现位置
这篇文章主要介绍了SpringBoot中mapper.xml文件存放的两种实现位置,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教2024-01-01
使用Prometheus监控Tomcat等java应用的状态
本文介绍了如何配置Tomcat监控,使用JMX Exporter和Prometheus进行监控,并通过Grafana展示监控数据2024-12-12


最新评论