后端:SpringBoot+Mybatis+MySQL
时间: 2024-11-29 11:32:33 浏览: 0
后端开发中,SpringBoot与Mybatis和MySQL结合可以创建高效的数据访问层。以下是如何使用它们的一个简单概述:
1. **项目结构**[^1]:基于SpringBoot的项目通常会集成MyBatis Plus(对Mybatis进行了增强),它简化了持久化操作,如CRUD(Create, Read, Update, Delete)。此外,MySQL作为关系型数据库存储应用数据。
2. **配置数据库**[^2]:在`application.yml`中,你需要设置数据库连接信息,如驱动类名(`driverClassName`)、URL(`url`,这里使用的是MySQL的JDBC URL)、用户名和密码。另外,Mybatis的位置(`mapper-locations`)指示了映射器XML文件的位置。
具体步骤如下:
- 添加Spring Boot的starter依赖项,如`spring-boot-starter-data-jpa`(或仅`spring-boot-starter-data-mysql`)
- 配置`DataSource` bean来管理数据库连接
- 定义Mapper接口并编写SQL映射(在`Mapper.xml`文件中)
- 使用MyBatis Plus的Repository接口进行操作,无需手动编写SQL
例如,创建一个简单的User实体类(User.java)和对应的Mapper接口(UserMapper.java),并在Service层调用这些接口进行增删改查操作:
```java
// User.java
public class User {
private Long id;
private String name;
// getters and setters...
}
// UserMapper.java
@Mapper
public interface UserMapper {
@Insert("INSERT INTO user(name) VALUES(#{name})")
void insert(User user);
@Select("SELECT * FROM user WHERE id = #{id}")
User selectById(Long id);
}
```
在Controller层,通过@Autowired注入Repository,执行操作:
```java
@RestController
@RequestMapping("/api/users")
public class UserController {
@Autowired
private UserService userService;
@PostMapping
public ResponseEntity<?> createUser(@RequestBody User user) {
userService.insert(user);
return ResponseEntity.ok().build();
}
@GetMapping("/{id}")
public ResponseEntity<?> getUser(@PathVariable Long id) {
User foundUser = userService.selectById(id);
if (foundUser != null) {
return ResponseEntity.ok(foundUser);
} else {
return ResponseEntity.notFound().build();
}
}
}
```
这样就建立了一个基本的SpringBoot + Mybatis + MySQL后端服务架构。
阅读全文