logo

Spring Boot中使用MyBatis-Spring-Boot-Starter

作者:搬砖的石头2024.02.04 16:05浏览量:6

简介:本文将介绍如何在Spring Boot项目中使用MyBatis-Spring-Boot-Starter进行数据库操作。我们将涵盖如何添加依赖、配置数据源、创建Mapper接口和映射文件,以及如何执行基本的CRUD操作。

在Spring Boot中集成MyBatis框架通常是为了使用ORM(对象关系映射)功能,以简化数据库操作。MyBatis-Spring-Boot-Starter是一个方便的集成解决方案,可以让您快速地在Spring Boot项目中设置和使用MyBatis。

1. 添加依赖

首先,您需要在项目的pom.xml文件中添加MyBatis-Spring-Boot-Starter的依赖。请确保您的pom.xml文件中已经包含了Spring Boot的starter parent依赖,以便正确管理依赖版本。

  1. <dependency>
  2. <groupId>org.mybatis.spring.boot</groupId>
  3. <artifactId>mybatis-spring-boot-starter</artifactId>
  4. <version>2.2.0</version>
  5. </dependency>

2. 配置数据源

application.propertiesapplication.yml文件中配置数据源信息,例如数据库连接URL、用户名和密码等。

  1. spring.datasource.url=jdbc:mysql://localhost:3306/mydb
  2. spring.datasource.username=root
  3. spring.datasource.password=root
  4. spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver

3. 创建Mapper接口和映射文件

创建一个Mapper接口,用于定义与数据库表对应的操作方法。然后,创建一个对应的映射文件,用于定义SQL语句和参数绑定。
例如,创建一个名为UserMapper.java的接口:

  1. public interface UserMapper {
  2. List<User> getAllUsers();
  3. User getUserById(int id);
  4. void insertUser(User user);
  5. void updateUser(User user);
  6. void deleteUser(int id);
  7. }

然后,创建一个名为UserMapper.xml的映射文件,并放在resources/mapper目录下:

  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
  3. <mapper namespace="com.example.demo.mapper.UserMapper">
  4. <select id="getAllUsers" resultType="com.example.demo.model.User">
  5. SELECT * FROM user
  6. </select>
  7. <select id="getUserById" parameterType="int" resultType="com.example.demo.model.User">
  8. SELECT * FROM user WHERE id = #{id}
  9. </select>
  10. <insert id="insertUser" parameterType="com.example.demo.model.User">
  11. INSERT INTO user (name, age) VALUES (#{name}, #{age})
  12. </insert>
  13. <update id="updateUser" parameterType="com.example.demo.model.User">
  14. UPDATE user SET name = #{name}, age = #{age} WHERE id = #{id}
  15. </update>
  16. <delete id="deleteUser" parameterType="int">
  17. DELETE FROM user WHERE id = #{id}
  18. </delete>
  19. </mapper>

4. 执行CRUD操作

现在,您可以在Service或Controller中注入Mapper接口,并调用相应的方法执行CRUD操作。例如:
```java
@Service
public class UserServiceImpl implements UserService {
@Autowired
private UserMapper userMapper;\n @Override
public List getAllUsers() {
return userMapper.getAllUsers();
}\n @Override
public User getUserById(int id) {
return userMapper.getUserById(id);
}\n @Override
public void insertUser(User user) {
userMapper.insertUser(user);
}\n @Override
public void updateUser(User user) {
userMapper.

相关文章推荐

发表评论