springboot+mybatis实现简单的单表增删改查
在本文中,我们将深入探讨如何使用SpringBoot框架与MyBatis ORM工具来实现对单一数据库表的简单增删改查(CRUD)操作。SpringBoot以其便捷的集成、自动配置和简化开发流程而受到广大开发者欢迎,而MyBatis则是一个轻量级的SQL映射框架,它允许开发者直接编写SQL语句,提供了更加灵活的数据访问方式。 我们需要确保项目中已经正确地引入了SpringBoot和MyBatis的相关依赖。在`pom.xml`文件中,添加以下依赖: ```xml <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>2.2.2</version> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <scope>runtime</scope> </dependency> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <optional>true</optional> </dependency> </dependencies> ``` 接下来,配置数据库连接。在`application.properties`文件中,添加如下配置: ```properties spring.datasource.url=jdbc:mysql://localhost:3306/your_database_name?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC spring.datasource.username=your_username spring.datasource.password=your_password spring.datasource.driver-class-name=com.mysql.jdbc.Driver mybatis.mapper-locations=classpath:mapper/*.xml ``` 然后,定义数据库实体类。例如,假设我们有一个`User`表,可以创建对应的`User`类: ```java import lombok.Data; @Data public class User { private Integer id; private String name; private String email; } ``` 接着,创建MyBatis的Mapper接口和XML配置文件。`UserMapper.java`: ```java import org.apache.ibatis.annotations.Select; import org.apache.ibatis.annotations.Update; import org.apache.ibatis.annotations.Delete; import org.apache.ibatis.annotations.Insert; import com.example.demo.entity.User; import java.util.List; public interface UserMapper { @Insert("INSERT INTO user(name, email) VALUES(#{name}, #{email})") void insert(User user); @Select("SELECT * FROM user") List<User> getAllUsers(); @Update("UPDATE user SET name=#{name}, email=#{email} WHERE id=#{id}") void updateUser(User user); @Delete("DELETE FROM user WHERE id=#{id}") void deleteUser(Integer id); } ``` 对应的`UserMapper.xml`文件: ```xml <mapper namespace="com.example.demo.mapper.UserMapper"> <!-- 其他SQL语句 --> </mapper> ``` 在Service层,创建`UserService`类并注入`UserMapper`: ```java import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.example.demo.entity.User; import com.example.demo.mapper.UserMapper; @Service public class UserService { @Autowired private UserMapper userMapper; public void addUser(User user) { userMapper.insert(user); } public List<User> getAllUsers() { return userMapper.getAllUsers(); } public void updateUser(User user) { userMapper.updateUser(user); } public void deleteUser(Integer id) { userMapper.deleteUser(id); } } ``` 在Controller层创建`UserController`,提供HTTP接口: ```java import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import com.example.demo.entity.User; import com.example.demo.service.UserService; import java.util.List; @RestController @RequestMapping("/users") public class UserController { @Autowired private UserService userService; @PostMapping public void addUser(@RequestBody User user) { userService.addUser(user); } @GetMapping public List<User> getAllUsers() { return userService.getAllUsers(); } @PutMapping public void updateUser(@RequestBody User user) { userService.updateUser(user); } @DeleteMapping("/{id}") public void deleteUser(@PathVariable Integer id) { userService.deleteUser(id); } } ``` 现在,你已经成功地在SpringBoot应用中集成了MyBatis,并实现了对`User`表的基本CRUD操作。通过运行项目,你可以测试这些接口,验证它们是否按预期工作。 总结一下,这个例子展示了如何在SpringBoot项目中使用MyBatis实现单表的增删改查功能。主要涉及的步骤包括:添加相关依赖、配置数据库连接、创建实体类、Mapper接口及XML文件、Service层处理业务逻辑、以及Controller层提供HTTP接口。这个过程有助于理解SpringBoot和MyBatis的整合使用,为实际项目开发打下基础。
- 1
- 粉丝: 2702
- 资源: 4
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
评论0