SpringBoot——SpringBoot整合Mybatis

以你之姓@ 2021-10-18 14:30 732阅读 0赞

1.首先需要在pom.xml文件中添加依赖。

需要添加的依赖如下:

  1. <dependency>
  2. <groupId>org.mybatis.spring.boot</groupId>
  3. <artifactId>mybatis-spring-boot-starter</artifactId>
  4. <version>1.3.2</version>
  5. </dependency>
  6. <dependency>
  7. <groupId>mysql</groupId>
  8. <artifactId>mysql-connector-java</artifactId>
  9. <scope>runtime</scope>
  10. </dependency>

2.配置application.properties文件

代码如下:

  1. #配置数据源
  2. spring.datasource.driver-class-name=com.mysql.jdbc.Driver
  3. spring.datasource.url=jdbc:mysql://192.168.1.121:3306/world?useUnicode=true&characterEncoding=utf8&useSSL=false
  4. spring.datasource.username=root
  5. spring.datasource.password=root
  6. #Mybatis配置
  7. #设置mapper文件的位置
  8. mybatis.mapperLocations=classpath:mapper/*.xml

到此为止mybatis的整合就完成了,下面我们来写一下代码测试一下。

3.创建实体类

  1. package com.youyou.address.entity;
  2. import lombok.Data;
  3. /**
  4. * 数据库实体,联系人
  5. */
  6. @Data
  7. public class ContacterEO {
  8. /**
  9. * 主键
  10. */
  11. private String id;
  12. /**
  13. * 姓名
  14. */
  15. private String name;
  16. /**
  17. * 性别(0,女;1,男)
  18. */
  19. private String sex;
  20. /**
  21. * 年龄
  22. */
  23. private Integer age ;
  24. /**
  25. * 电话
  26. */
  27. private String phone;
  28. /**
  29. * 地址
  30. */
  31. private String location;
  32. /**
  33. * 删除(0,未删除;1,删除)
  34. */
  35. private String dflag ;
  36. }

注意:如果不能识别@Data注解,则需要手动添加getter和setter方法。

4.创建dao接口

  1. package com.youyou.address.dao;
  2. import com.youyou.address.entity.ContacterEO;
  3. import java.util.List;
  4. public interface ContacterDao {
  5. void insertOne(ContacterEO contacterEO);
  6. /**
  7. * 查询所有
  8. * @return
  9. */
  10. List<ContacterEO> findAll();
  11. }

5.编写对应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.youyou.address.dao.ContacterDao" >
  4. <select id="insertOne" parameterType="com.youyou.address.entity.ContacterEO" >
  5. INSERT INTO ts_contacter VALUES(#{id} , #{name} , #{sex} , #{age} , #{phone} , #{location} , #{dflag})
  6. </select>
  7. <select id="findAll" resultType="com.youyou.address.entity.ContacterEO">
  8. select * from ts_contacter
  9. </select>
  10. </mapper>

6.编写service类

  1. package com.youyou.address.service;
  2. import com.youyou.address.dao.ContacterDao;
  3. import com.youyou.address.entity.ContacterEO;
  4. import org.springframework.beans.factory.annotation.Autowired;
  5. import org.springframework.stereotype.Service;
  6. import org.springframework.transaction.annotation.Transactional;
  7. import java.util.List;
  8. @Service
  9. @Transactional
  10. public class ContacterService {
  11. @Autowired
  12. private ContacterDao dao;
  13. public void insertOne(ContacterEO contacterEO){
  14. dao.insertOne(contacterEO);
  15. }
  16. public List<ContacterEO> findAll(){
  17. return dao.findAll();
  18. }
  19. }

7.编写controller类

  1. package com.youyou.address.controller;
  2. import com.youyou.address.entity.ContacterEO;
  3. import com.youyou.address.service.ContacterService;
  4. import io.swagger.annotations.Api;
  5. import io.swagger.annotations.ApiOperation;
  6. import org.springframework.beans.factory.annotation.Autowired;
  7. import org.springframework.web.bind.annotation.GetMapping;
  8. import org.springframework.web.bind.annotation.RequestMapping;
  9. import org.springframework.web.bind.annotation.RestController;
  10. import java.util.List;
  11. @Api(description = "联系人接口")
  12. @RestController
  13. @RequestMapping(value = "/contacter")
  14. public class ContacterController {
  15. @Autowired
  16. private ContacterService service;
  17. @ApiOperation(value = "新增")
  18. @GetMapping("/add")
  19. public ContacterEO add(ContacterEO contacterEO){
  20. System.out.println("添加一个联系人");
  21. service.insertOne(contacterEO);
  22. return contacterEO;
  23. }
  24. @ApiOperation(value = "查询所有")
  25. @GetMapping("/findAll")
  26. public List<ContacterEO> findAll(){
  27. return service.findAll();
  28. }
  29. }

运行结果

数据库中数据

70

运行结果

70 1

发表评论

表情:
评论列表 (有 0 条评论,732人围观)

还没有评论,来说两句吧...

相关阅读