Spring Cloud微服务项目集成MyBatis
在Spring Cloud微服务项目中集成MyBatis,你需要做以下几个步骤:
- 添加MyBatis和数据库驱动的依赖到项目的
pom.xml
文件中。 - 配置数据源和MyBatis的SQL会话工厂。
- 创建MyBatis的Mapper接口和对应的XML映射文件。
- 在Spring Boot启动类上添加@MapperScan注解,扫描Mapper接口。
以下是一个简化的例子:
pom.xml
依赖配置:
<dependencies>
<!-- Spring Boot相关依赖 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- Spring Cloud相关依赖 -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
<!-- MyBatis依赖 -->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.1.3</version>
</dependency>
<!-- 数据库驱动,例如MySQL -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.19</version>
</dependency>
</dependencies>
application.properties
配置文件:
spring.datasource.url=jdbc:mysql://localhost:3306/mydb
spring.datasource.username=root
spring.datasource.password=secret
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
mybatis.mapper-locations=classpath:mapper/*.xml
Mapper接口:
@Mapper
public interface UserMapper {
User selectUserById(int id);
}
Mapper XML映射文件:
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.example.mapper.UserMapper">
<select id="selectUserById" parameterType="int" resultType="com.example.domain.User">
SELECT * FROM users WHERE id = #{id}
</select>
</mapper>
Spring Boot启动类:
@SpringBootApplication
@MapperScan("com.example.mapper")
public class MyApp {
public static void main(String[] args) {
SpringApplication.run(MyApp.class, args);
}
}
确保你的项目结构中有mapper
目录,并且包含上述的UserMapper
接口和对应的XML映射文件。这样,你就成功地在Spring Cloud微服务项目中集成了MyBatis。
评论已关闭