Spring Boot-整合MyBatis
Spring Boot整合MyBatis主要涉及以下步骤:
- 添加依赖:在
pom.xml
中添加Spring Boot Starter和MyBatis的依赖。
<dependencies>
<!-- Spring Boot Starter -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- MyBatis -->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.1.4</version>
</dependency>
<!-- 数据库驱动,例如MySQL -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
</dependencies>
- 配置数据库信息:在
application.properties
或application.yml
中配置数据库连接信息。
spring.datasource.url=jdbc:mysql://localhost:3306/your_database?useSSL=false&serverTimezone=UTC
spring.datasource.username=root
spring.datasource.password=yourpassword
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
- 创建Mapper接口和XML映射文件:
// UserMapper.java
public interface UserMapper {
User selectUserById(int id);
}
<!-- UserMapper.xml -->
<mapper namespace="com.example.mapper.UserMapper">
<select id="selectUserById" resultType="com.example.domain.User">
SELECT * FROM users WHERE id = #{id}
</select>
</mapper>
- 配置Mapper扫描路径:在
application.properties
中添加Mapper路径。
mybatis.mapper-locations=classpath:mapper/*.xml
mybatis.type-aliases-package=com.example.domain
- 使用Mapper:在Service中注入Mapper并使用。
// UserService.java
@Service
public class UserService {
@Autowired
private UserMapper userMapper;
public User getUserById(int id) {
return userMapper.selectUserById(id);
}
}
- 配置MyBatis的SQL会话工厂:通常MyBatis Spring Boot Starter会自动配置,但如果需要自定义,可以创建配置类。
// MyBatisConfig.java
@Configuration
public class MyBatisConfig {
@Bean
public SqlSessionFactory sqlSessionFactory(DataSource dataSource) throws Exception {
SqlSessionFactoryBean sqlSessionFactoryBean = new SqlSessionFactoryBean();
sqlSessionFactoryBean.setDataSource(dataSource);
return sqlSessionFactoryBean.getObject();
}
}
以上步骤提供了整合MyBatis的基本框架,具体细节(如数据库连接池配置、事务管理等)可以根据项目需求进行相应的配置。
评论已关闭