- 添加MySQL和MyBatis依赖
- 配置数据源
- 配置MyBatis
- 编写mapper接口
- 编写数据访问代码
- 编写业务逻辑代码
- 编写控制器代码
1:在pom.xml文件中添加MySQL和MyBatis依赖:
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.23</version>
</dependency>
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.1.4</version>
</dependency>
2:在application.properties或application.yml文件中配置MySQL数据源:
spring.datasource.url=jdbc:mysql://localhost:3306/mydb
spring.datasource.username=root
spring.datasource.password=123456
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
3:在配置类中添加@MapperScan注解,指定MyBatis扫描的mapper接口包路径:
@Configuration
@MapperScan("com.example.demo.mapper")
public class MyBatisConfig {
}
4:定义mapper接口:
@Mapper
public interface UserMapper {
List<User> getAllUsers();
User getUserById(Long id);
void saveUser(User user);
void deleteUserById(Long id);
}
5:在mapper接口中定义数据访问方法,使用@Select、@Insert、@Update和@Delete等注解实现数据访问操作:
@Mapper
public interface UserMapper {
@Select("SELECT * FROM user")
List<User> getAllUsers();
@Select("SELECT * FROM user WHERE id = #{id}")
User getUserById(Long id);
@Insert("INSERT INTO user(name, age) VALUES(#{name}, #{age})")
void saveUser(User user);
@Delete("DELETE FROM user WHERE id = #{id}")
void deleteUserById(Long id);
}
6:编写业务逻辑类,注入mapper接口:
@Service
public class UserService {
@Autowired
private UserMapper userMapper;
public List<User> getAllUsers() {
return userMapper.getAllUsers();
}
public User getUserById(Long id) {
return userMapper.getUserById(id);
}
public void saveUser(User user) {
userMapper.saveUser(user);
}
public void deleteUserById(Long id) {
userMapper.deleteUserById(id);
}
}
7:编写控制器类,注入业务逻辑类:
@RestController
@RequestMapping("/users")
public class UserController {
@Autowired
private UserService userService;
@GetMapping("")
public List<User> getAllUsers() {
return userService.getAllUsers();
}
@GetMapping("/{id}")
public User getUserById(@PathVariable Long id) {
return userService.getUserById(id);
}
@PostMapping("")
public void saveUser(@RequestBody User user) {
userService.saveUser(user);
}
@DeleteMapping("/{id}")
public void deleteUserById(@PathVariable Long id) {
userService.deleteUserById(id);
}
}
以上就是使用Spring Boot连接MySQL数据库并使用MyBatis访问数据的基本步骤。