当前位置:   article > 正文

使用Spring Boot和MyBatis连接MySQL数据库的方法_springboot mybatis mysql

springboot mybatis mysql

在Java开发中,Spring Boot和MyBatis是两个常用的框架,结合使用可以方便地连接和操作MySQL数据库。本文将详细介绍如何在Spring Boot项目中使用MyBatis框架连接MySQL数据库,并通过一个抖音视频数据存取操作的示例展示完整的增删改功能代码。

一、环境准备

  1. Java开发环境:确保已安装JDK和IntelliJ IDEA。
  2. Spring Boot项目:创建一个新的Spring Boot项目。
  3. Maven:用于管理项目依赖。

二、添加依赖

pom.xml文件中添加Spring Boot和MyBatis相关依赖:

 
  1. <dependency>
  2. <groupId>org.springframework.boot</groupId>
  3. <artifactId>spring-boot-starter-web</artifactId>
  4. </dependency>
  5. <dependency>
  6. <groupId>org.mybatis.spring.boot</groupId>
  7. <artifactId>mybatis-spring-boot-starter</artifactId>
  8. <version>2.2.0</version>
  9. </dependency>
  10. <dependency>
  11. <groupId>mysql</groupId>
  12. <artifactId>mysql-connector-java</artifactId>
  13. <version>8.0.28</version>
  14. </dependency>

三、配置数据库信息

application.properties文件中配置MySQL数据库连接信息:

  1. spring.datasource.url=jdbc:mysql://localhost:3306/mydatabase
  2. spring.datasource.username=root
  3. spring.datasource.password=your_password
  4. spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
  5. spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL5Dialect

四、创建实体类和Mapper接口

1. 实体类

  1. package com.example.demo.model;
  2. public class Video {
  3. private Long id;
  4. private String title;
  5. private String url;
  6. // 省略getter和setter方法
  7. }

2. Mapper接口

  1. package com.example.demo.mapper;
  2. import com.example.demo.model.Video;
  3. import org.apache.ibatis.annotations.*;
  4. import java.util.List;
  5. @Mapper
  6. public interface VideoMapper {
  7. @Select("SELECT * FROM videos")
  8. List<Video> findAll();
  9. @Select("SELECT * FROM videos WHERE id = #{id}")
  10. Video findById(Long id);
  11. @Insert("INSERT INTO videos(title, url) VALUES(#{title}, #{url})")
  12. void insert(Video video);
  13. @Update("UPDATE videos SET title = #{title}, url = #{url} WHERE id = #{id}")
  14. void update(Video video);
  15. @Delete("DELETE FROM videos WHERE id = #{id}")
  16. void delete(Long id);
  17. }

五、编写Service层和Controller层

1. Service层

  1. package com.example.demo.service;
  2. import com.example.demo.mapper.VideoMapper;
  3. import com.example.demo.model.Video;
  4. import org.springframework.beans.factory.annotation.Autowired;
  5. import org.springframework.stereotype.Service;
  6. import java.util.List;
  7. @Service
  8. public class VideoService {
  9. @Autowired
  10. private VideoMapper videoMapper;
  11. public List<Video> getAllVideos() {
  12. return videoMapper.findAll();
  13. }
  14. public Video getVideoById(Long id) {
  15. return videoMapper.findById(id);
  16. }
  17. public void addVideo(Video video) {
  18. videoMapper.insert(video);
  19. }
  20. public void updateVideo(Video video) {
  21. videoMapper.update(video);
  22. }
  23. public void deleteVideo(Long id) {
  24. videoMapper.delete(id);
  25. }
  26. }

2. Controller层

  1. package com.example.demo.controller;
  2. import com.example.demo.model.Video;
  3. import com.example.demo.service.VideoService;
  4. import org.springframework.beans.factory.annotation.Autowired;
  5. import org.springframework.web.bind.annotation.*;
  6. import java.util.List;
  7. @RestController
  8. @RequestMapping("/videos")
  9. public class VideoController {
  10. @Autowired
  11. private VideoService videoService;
  12. @GetMapping("/")
  13. public List<Video> getAllVideos() {
  14. return videoService.getAllVideos();
  15. }
  16. @GetMapping("/{id}")
  17. public Video getVideoById(@PathVariable Long id) {
  18. return videoService.getVideoById(id);
  19. }
  20. @PostMapping("/")
  21. public void addVideo(@RequestBody Video video) {
  22. videoService.addVideo(video);
  23. }
  24. @PutMapping("/")
  25. public void updateVideo(@RequestBody Video video) {
  26. videoService.updateVideo(video);
  27. }
  28. @DeleteMapping("/{id}")
  29. public void deleteVideo(@PathVariable Long id) {
  30. videoService.deleteVideo(id);
  31. }
  32. }

六、测试运行

启动Spring Boot应用,可以使用Postman或浏览器访问API接口进行增删改查操作,例如:

七、总结

通过本文的介绍了如何在Spring Boot项目中集成MyBatis框架,并实现了对MySQL数据库的增删改查操作。这种组合可以使开发更加高效和便捷,适用于各种类型的Java应用开发。希望本文对大家有所帮助,祝愿大家在Java开发中取得更多的成就!

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/2023面试高手/article/detail/498150
推荐阅读
相关标签
  

闽ICP备14008679号