spring cloud mybatisplus 整合mybatis
时间: 2023-09-09 16:14:11 浏览: 57
Spring Cloud是一个基于Spring Boot的开发工具包,用于构建微服务应用程序。而Mybatis Plus是Mybatis的增强工具包,提供了许多实用的功能,如分页、自动生成代码等。下面是Spring Cloud和Mybatis Plus整合的步骤:
1. 添加依赖
在pom.xml文件中添加以下依赖:
```xml
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.4.2</version>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-generator</artifactId>
<version>3.4.2</version>
</dependency>
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.1.4</version>
</dependency>
```
2. 配置数据源
在application.yml文件中配置数据源:
```yaml
spring:
datasource:
url: jdbc:mysql://localhost:3306/test?useSSL=false&useUnicode=true&characterEncoding=utf-8&serverTimezone=UTC
username: root
password: root
driver-class-name: com.mysql.cj.jdbc.Driver
```
3. 配置Mybatis Plus
在application.yml文件中添加以下配置:
```yaml
mybatis-plus:
configuration:
map-underscore-to-camel-case: true
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
mapper-locations: classpath:/mapper/*Mapper.xml
```
其中,map-underscore-to-camel-case为下划线转驼峰,log-impl为Mybatis日志输出到控制台,mapper-locations为Mapper文件所在路径。
4. 创建实体类和Mapper
创建实体类和Mapper,如下所示:
```java
@Data
public class User {
private Long id;
private String name;
private Integer age;
}
```
```java
@Mapper
public interface UserMapper extends BaseMapper<User> {
}
```
其中,@Mapper注解表示该类为Mapper接口,BaseMapper为Mybatis Plus提供的基础Mapper接口。
5. 创建Service和ServiceImpl
创建Service和ServiceImpl,如下所示:
```java
public interface UserService {
User getById(Long id);
boolean save(User user);
boolean updateById(User user);
boolean removeById(Long id);
List<User> list();
}
```
```java
@Service
public class UserServiceImpl implements UserService {
@Autowired
private UserMapper userMapper;
@Override
public User getById(Long id) {
return userMapper.selectById(id);
}
@Override
public boolean save(User user) {
return userMapper.insert(user) > 0;
}
@Override
public boolean updateById(User user) {
return userMapper.updateById(user) > 0;
}
@Override
public boolean removeById(Long id) {
return userMapper.deleteById(id) > 0;
}
@Override
public List<User> list() {
return userMapper.selectList(null);
}
}
```
其中,@Service注解表示该类为Service实现类,@Autowired注解表示自动注入UserMapper。实现类中直接调用UserMapper的方法实现对数据库的操作。
6. 测试
在测试类中测试Service的方法,如下所示:
```java
@SpringBootTest(classes = Application.class)
class UserServiceTest {
@Autowired
private UserService userService;
@Test
void test() {
User user = new User();
user.setName("test");
user.setAge(18);
userService.save(user);
List<User> userList = userService.list();
System.out.println(userList);
user.setAge(20);
userService.updateById(user);
User user2 = userService.getById(user.getId());
System.out.println(user2);
userService.removeById(user.getId());
userList = userService.list();
System.out.println(userList);
}
}
```
运行测试类,查看控制台输出,即可验证整合是否成功。
以上就是Spring Cloud和Mybatis Plus整合的步骤,希望能对你有所帮助。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)