springboot配置mybatisplus的xml映射地址
时间: 2023-04-04 07:00:45 浏览: 128
可以在application.yml中配置mybatis-plus.mapper-locations属性来指定xml映射地址,例如:
mybatis-plus:
mapper-locations: classpath:/mapper/*.xml
这样就会扫描classpath下的mapper目录下的所有xml文件作为mybatis的映射文件。
相关问题
springboot整合mybatisplus不加载xml文件
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映射了。记得根据你的实际需求调整上述配置。
springboot 集成mybatisplus
Spring Boot 集成 MyBatis Plus 的步骤如下:
1. 添加 MyBatis Plus 依赖
在 pom.xml 文件中添加 MyBatis Plus 依赖:
```xml
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.4.3.1</version>
</dependency>
```
2. 配置 MyBatis Plus
在 application.yml 文件中添加 MyBatis Plus 的配置:
```yaml
mybatis-plus:
# mapper映射文件的位置
mapper-locations: classpath*:mapper/**/*.xml
# 实体类包名
typeAliasesPackage: com.example.demo.entity
# 配置逻辑删除
global-config:
db-config:
logic-delete-value: 1
logic-not-delete-value: 0
```
3. 创建实体类
创建实体类,并使用 MyBatis Plus 提供的注解来映射数据库表和字段:
```java
@Data
@TableName("user")
public class User {
@TableId(type = IdType.AUTO)
private Long id;
private String username;
private String password;
private String email;
private Integer age;
@TableLogic
private Integer deleted;
}
```
4. 创建 Mapper 接口
创建 Mapper 接口,并继承 MybatisPlus 的 BaseMapper 接口,泛型为实体类:
```java
public interface UserMapper extends BaseMapper<User> {
}
```
5. 使用 Mapper
在需要使用 Mapper 的地方,注入 Mapper 并调用其方法即可:
```java
@Service
public class UserServiceImpl implements UserService {
@Autowired
private UserMapper userMapper;
@Override
public List<User> list() {
return userMapper.selectList(null);
}
@Override
public User getById(Long id) {
return userMapper.selectById(id);
}
@Override
public void save(User user) {
userMapper.insert(user);
}
@Override
public void update(User user) {
userMapper.updateById(user);
}
@Override
public void delete(Long id) {
userMapper.deleteById(id);
}
}
```
以上就是 Spring Boot 集成 MyBatis Plus 的步骤,通过 MyBatis Plus 可以简化代码,提高开发效率。
阅读全文