问题:
Invalid bound statement (not found): com.htlc.assetswap.mapper.WalletMapper.insert,并且select * 进行查询时带下划线的字段未成功映射。
排查:
1.检查WalletMapper接口,确保继承自BaseMapper
2.启用驼峰命名法映射。application.yml
mybatis-plus:
configuration:
map-underscore-to-camel-case: true
3.确保 MyBatis-Plus 配置正确加载,确保 @MapperScan 注解正确配置
@SpringBootApplication
@MapperScan("com.htlc.assetswap.mapper")
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
4.检查 MyBatis 版本是否兼容,Spring Boot 2.7.x 对应 MyBatis-Plus 3.5.x。此时发现只引入了mybatis依赖,而未引入mybatis-plus依赖。
解决:
最后一步步排查,是因为忘记引入mybatis-plus依赖
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.5.1</version>
</dependency>