springboot整合mybatisplus不加载xml文件
时间: 2024-08-01 22:00:57 浏览: 56
SSM+MP+BOOT.pdf
Spring Boot整合MyBatisPlus时,如果不加载XML配置文件,通常是由于默认配置下MyBatisPlus选择了自动扫描注解的方式管理数据源和Repository。如果你希望手动指定XML配置文件,可以采取以下步骤:
1. **移除默认配置**:从你的pom.xml或build.gradle文件中删除Spring Data JPA或MyBatis Plus的自动注入依赖,例如:
```xml
<!-- If using Maven -->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</exclusion>
</exclusions>
</dependency>
<!-- If using Gradle -->
implementation("com.baomidou:mybatis-plus-boot-starter") {
exclude group: 'org.springframework.boot', module: 'spring-boot-starter-data-jpa'
}
```
2. **添加MyBatis XML配置文件**:创建或修改src/main/resources下的mybatis-config.xml或mybatis/*.xml文件,加入你的SQL映射内容。
3. **配置数据源和MapperScannerConfigurer**:你需要明确地配置数据源,并使用`@Configuration`的`@MapperScan`注解指示Spring扫描XML中的Mapper接口。例如:
```java
@Configuration
public class MybatisConfig {
@Value("${sqlSessionFactoryBeanName}")
private String sqlSessionFactoryBeanName;
@Bean
public SqlSessionFactory sqlSessionFactory() throws Exception {
SqlSessionFactoryBuilder builder = new SqlSessionFactoryBuilder();
return builder.build(MybatisConfig.class.getClassLoader(), "mybatis-config.xml");
}
@Bean(name = sqlSessionFactoryBeanName)
public SqlSessionTemplate sqlSessionTemplate(SqlSessionFactory sqlSessionFactory) {
return new SqlSessionTemplate(sqlSessionFactory);
}
@MapperScan("com.example.yourpackage.mapper") // 替换为你的Mapper所在的包名
public static class MapperScannerConfigurer extends BaseSqlSessionFactoryConfigurer {
}
}
```
4. **重启应用**:确保配置更改后,重启你的Spring Boot应用程序。
现在你应该能通过XML文件运行你的MyBatisPlus映射了。记得根据你的实际需求调整上述配置。
阅读全文