Spring boot集成mybatis和MySQL实现基础服务

2025-11-04 01:34:06

1、首先,需要准备好相关的数据库环境

如我准备的mysql数据库信息如下

1)创建数据库DB名:videoDB

mysql> create database videoDB;

2)数据库表: video_info

create table video_info(

id INT NOT NULL AUTO_INCREMENT,

fileName varchar(255) NOT NULL,

filePath varchar(255) ,

author varchar(128) , 

createDate datetime ,

PRIMARY KEY (id)

)ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;

Spring boot集成mybatis和MySQL实现基础服务

2、在Spring boot工程的配置文件application.properties中增加mysql的datasource配置

spring.datasource.url=jdbc:mysql://localhost:3306/videoDB

spring.datasource.username=root

spring.datasource.password=password

spring.datasource.driver-class-name=com.mysql.jdbc.Driver

Spring boot集成mybatis和MySQL实现基础服务

3、在工程中添加mybatis的库依赖mybatis-spring-boot-starter

mybatis-spring-boot-starter可以自动检测DataSource

-------------------------

    <dependency>

              <groupId>mysql</groupId>

              <artifactId>mysql-connector-java</artifactId>

          </dependency>

          <dependency>

            <groupId>org.springframework.boot</groupId>

            <artifactId>spring-boot-starter-jdbc</artifactId>

        </dependency>

        <dependency>

        <groupId>org.mybatis.spring.boot</groupId>

        <artifactId>mybatis-spring-boot-starter</artifactId>

        <version>1.3.1</version>

        </dependency>

Spring boot集成mybatis和MySQL实现基础服务

4、创建一个Video_info表的数据访问Mppper接口类:VideoInfoMapper.java

package image.dao;

import org.apache.ibatis.annotations.Mapper;

import org.apache.ibatis.annotations.Param;

import org.apache.ibatis.annotations.Select;

@Mapper

public interface VideoInfoMapper {

@Select("select * from Video_info where id=#{id}")

VideoInfo findById(@Param("id") int id);

}

Spring boot集成mybatis和MySQL实现基础服务

5、创建一个Service服务类:VideoService 

package image.dao;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.stereotype.Service;

@Service("videoService")

public class VideoService {

//自动绑定mapper

@Autowired

private VideoInfoMapper videoInfoMapper;

//查询数据

public VideoInfo getVideoInfo(int id)

{

return videoInfoMapper.findById(id);

}

}

Spring boot集成mybatis和MySQL实现基础服务

6、创建一个VideoInfo数据访问服务的RESTful Web Service服务控制器类:VideoInfoController 

package image;

import org.slf4j.Logger;

import org.slf4j.LoggerFactory;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.web.bind.annotation.PathVariable;

import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.web.bind.annotation.RestController;

import image.dao.VideoInfo;

import image.dao.VideoService;

@RestController

@RequestMapping("/video")

public class VideoInfoController {

final static Logger logger = LoggerFactory.getLogger(VideoInfoController.class);

@Autowired

private VideoService videoService;

@RequestMapping("/info/{id}")

public VideoInfo getVideoInfo(@PathVariable("id") int id)

{

return videoService.getVideoInfo(id);

}

}

7、启动Spring boot应用进行测试restful web serivce服务是否正常工作

restful api地址:{IP}:{端口}/video/info/{文件记录ID}

如:http://localhost:8080/video/info/1001

在浏览器中直接测试返回结果如下:

{"id":1001,"fileName":"top1-mm.mp4","filePath":"/img/top1-mm.mp4","fileSize":null,"createdDate":null,"author":"fantasy"}

Spring boot集成mybatis和MySQL实现基础服务

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢