Springboot集成Mybatis、H2
Spring Boot 整合 MyBatis 和 H2 数据库,你需要做的是:
- 在
pom.xml
中添加依赖:
<!-- Spring Boot Starter -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<!-- MyBatis Starter -->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.1.4</version>
</dependency>
<!-- H2 Database -->
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<scope>runtime</scope>
</dependency>
- 在
application.properties
或application.yml
中配置数据源和 MyBatis:
# 数据源配置
spring.datasource.url=jdbc:h2:mem:testdb
spring.datasource.driverClassName=org.h2.Driver
spring.datasource.username=sa
spring.datasource.password=
# MyBatis 配置
mybatis.mapper-locations=classpath:mapper/*.xml
mybatis.type-aliases-package=com.example.package.model
- 创建实体类和映射的Mapper接口:
// 实体类
public class User {
private Long id;
private String name;
// 省略 getter 和 setter
}
// Mapper 接口
@Mapper
public interface UserMapper {
@Select("SELECT * FROM users WHERE id = #{id}")
User getUserById(@Param("id") Long id);
// 其他方法...
}
- 在
application
类或者配置类中配置 MyBatis 的 SqlSessionFactory 和 TransactionManager:
@Configuration
public class MyBatisConfig {
@Bean
public SqlSessionFactory sqlSessionFactory(DataSource dataSource) throws Exception {
SqlSessionFactoryBean sqlSessionFactoryBean = new SqlSessionFactoryBean();
sqlSessionFactoryBean.setDataSource(dataSource);
return sqlSessionFactoryBean.getObject();
}
@Bean
public PlatformTransactionManager transactionManager(DataSource dataSource) {
return new DataSourceTransactionManager(dataSource);
}
}
- 使用 MyBatis 的功能进行数据库操作:
@Service
public class UserService {
@Autowired
private UserMapper userMapper;
public User getUserById(Long id) {
return userMapper.getUserById(id);
}
}
以上是整合 Spring Boot, MyBatis 和 H2 数据库的基本步骤和代码示例。根据具体需求,你可能需要进行更多配置或编写额外的代码。
评论已关闭