SpringBoot整合第三方技术的详细步骤

作者:mm天天写bug 时间:2023-11-29 08:22:48 

SpringBoot整合第三方技术

一、整合Junit

新建一个SpringBoot项目

使用@SpringBootTest标签在test测试包内整合Junit

@SpringBootTest
class Springboot03JunitApplicationTests {

@Autowired
   private BookService bookService;
   @Test
   void contextLoads() {
       bookService.save();
   }
}
  • 名称:@SpringBootTest

  • 类型:测试类注解

  • 位置:测试类定义上方

  • 作用:设置Junnit加载的SpringBoot启动类

注意:整合的Junit测试类需要和Java包中的配置文件类放在同一目录下,否则需要指定配置java文件的class

@SpringBootTest(classes = Springboot03JunitApplication.class)
class Springboot03JunitApplicationTests {

@Autowired
   private BookService bookService;
   @Test
   void contextLoads() {
       bookService.save();
   }
}

SpringBoot整合第三方技术的详细步骤

二、整合Mybatis

创建新模块的时候选择需要的技术集

SpringBoot整合第三方技术的详细步骤

之后就可以看到mybatis相应的坐标已经导入完成

接着设置数据源

spring:
 datasource:
   driver-class-name: com.mysql.jdbc.Driver
   url: jdbc:mysql://localhost:3306/test
   username: root
   password: 123456

定义数据层接口与映射配置

public interface UserDao {
   @Select("select * from test.sys_role;")
   public List<Role> getAll();
}

测试类中注入dao接口,测试功能

@SpringBootTest
class Springboot04MybatisApplicationTests {
   @Autowired
   private UserDao userDao;
   @Test
   void contextLoads() {
       List<Role> roleList = userDao.getAll();
       System.out.println(roleList);
   }
}

注意:

  • 数据库SQL映射需要添加@Mapper被容器识别到

  • 数据库连接相关信息转换成配置

  • SpringBoot版本低于2.4.3(不含),Mysql驱动版本大于8.0时,需要在url连接串中配置时区,或在MySQL数据库端配置时区解决此问题

jdbc:mysql://localhost:3306/test?serverTimezone=UTC

三、整合Mybatis-Plus

Mybatis-Plus与Mybati 区别

  • 导入坐标不同

  • 数据层实现简化

注意:由于SpringBoot中未收录MyBatis-Plus的坐标版本,需要指定对应的Version

SpringBoot没有整合Mybatis-Plus,所以需要我们手动添加SpringBoot整合MyBatis-Plus的坐标,可以通过mvnrepository获取

<dependency>
           <groupId>com.baomidou</groupId>
           <artifactId>mybatis-plus-boot-starter</artifactId>
           <version>3.4.3</version>
       </dependency>

定义数据层接口与映射配置,继承BaseMapper

@Mapper
public interface UserDao extends BaseMapper<Role> {
}

在yml配置文件配置数据库前缀

SpringBoot整合第三方技术的详细步骤

#设置mp相关配置
mybatis-plus:
 global-config:
   db-config:
     table-prefix: sys_

测试

@SpringBootTest
class Springboot05MybatisPlusApplicationTests {
   @Autowired
   private UserDao userDao;
   @Test
   void contextLoads() {
       Role role = userDao.selectById(1);
       System.out.println(role);
   }
}

四、整合Druid

同样的,Druid也需要自己手工整合

Maven导入依赖

<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.2.6</version>
</dependency>

在yml配置文件指定数据源

spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/ssm_db?serverTimezone=UTC
username: root
password: root
type: com.alibaba.druid.pool.DruidDataSource

或者

spring:
datasource:
 druid:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/ssm_db?serverTimezone=UTC
username: root
password: root

五、总结

整合第三方技术的步骤:

  • 导入对应的starter

druid:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/ssm_db?serverTimezone=UTC
username: root
password: root

来源:https://blog.csdn.net/weixin_51146329/article/details/123483892

标签:SpringBoot,整合,第三方
0
投稿

猜你喜欢

  • SpringBoot使用validation做参数校验说明

    2022-04-24 09:18:03
  • Java超详细讲解三大特性之一的多态

    2022-03-17 02:11:45
  • 在Java的Struts中判断是否调用AJAX及用拦截 器对其优化

    2023-11-25 00:40:40
  • android实现双日期选择控件(可隐藏日,只显示年月)

    2023-05-09 12:59:10
  • mvc开启gzip压缩示例分享

    2022-05-03 08:34:29
  • springboot自动扫描添加的BeanDefinition源码实例详解

    2023-11-24 15:15:22
  • mybatis中批量插入的两种方式(高效插入)

    2023-09-16 22:21:07
  • Java系统的高并发解决方法详解

    2021-08-23 08:39:50
  • java实现归并排序算法

    2023-02-09 07:34:01
  • 分享C#中几个可用的类

    2023-08-10 10:47:17
  • Android Studio缓存文件夹配置教程

    2022-11-28 12:04:51
  • 从dubbo zookeeper注册地址提取出zookeeper地址的方法

    2023-04-29 18:51:16
  • Java创建ZIP压缩文件的方法

    2022-10-05 05:05:23
  • hadoop运行java程序(jar包)并运行时动态指定参数

    2023-07-27 11:02:10
  • Java数据结构之红黑树的真正理解

    2022-07-16 01:36:16
  • 使用idea解决maven依赖冲突的问题

    2021-10-16 12:32:51
  • springboot+chatgpt+chatUI Pro开发智能聊天工具的实践

    2023-10-30 05:38:03
  • 解决springboot配置logback-spring.xml不起作用问题

    2022-09-10 11:21:24
  • C#实现控制线程池最大数并发线程

    2023-02-23 14:50:43
  • 浅谈Java堆外内存之突破JVM枷锁

    2022-10-19 19:46:50
  • asp之家 软件编程 m.aspxhome.com