首页 > 其他分享 >3. SpringBoot 整合第三方技术

3. SpringBoot 整合第三方技术

时间:2024-09-03 17:41:37浏览次数:12  
标签:SpringBoot spring boot mybatis 整合 MyBatis 第三方 starter

image

1. 整合Junit

一般来说是不需要进行处理的 ,因为在创建SpringBoot 工程时 ,会自动整合junit​的

要说怎么配置的话?也可以写一下相关的配置:以下就是SpringBoot 整合 Junit 相关步骤

  1. 导入相关依赖

    <dependency>
    	<groupId>org.springframework.boot</groupId>
    	<artifactId>spring-boot-starter-test</artifactId>
    	<scope>test</scope>
    </dependency>
    
  2. @SpringBootTest​注解 , 也可以使用 classes​ 属性指定引导类的字节码对象。如 @SpringBootTest(classes = Springboot07TestApplication.class)

    image

  3. 测试结果显示:

    image

2. 整合MyBatis

整合步骤如下:

  1. 创建SpringBoot 工程的时候 ,勾选SQL 下的 MyBatis Framework​ 和 MySQl Dirver​ 依赖
  2. application.yml​ 文件中写入数据库连接信息
  3. 编写代码并进行测试

相关依赖如下:这里复制所有依赖的原因是因为我在整合的时候 ,因为依赖的原因报错了

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<parent>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-parent</artifactId>
		<version>2.7.18</version>
		<relativePath/> <!-- lookup parent from repository -->
	</parent>
	<groupId>com.north</groupId>
	<artifactId>springboot-008-mybatis</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<name>springboot-008-mybatis</name>
	<description>springboot-008-mybatis</description>
	<properties>
		<java.version>17</java.version>
	</properties>
	<dependencies>
		<dependency>
			<groupId>org.mybatis.spring.boot</groupId>
			<artifactId>mybatis-spring-boot-starter</artifactId>
			<version>2.3.2</version>
		</dependency>

		<dependency>
			<groupId>com.mysql</groupId>
			<artifactId>mysql-connector-j</artifactId>
			<scope>runtime</scope>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.mybatis.spring.boot</groupId>
			<artifactId>mybatis-spring-boot-starter-test</artifactId>
			<version>3.0.3</version>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-tx</artifactId>
			<version>6.0.13</version>
		</dependency>
		<dependency>
			<groupId>org.projectlombok</groupId>
			<artifactId>lombok</artifactId>
			<version>1.18.28</version>
			<scope>compile</scope>
		</dependency>
	</dependencies>

	<build>
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
			</plugin>
		</plugins>
	</build>

</project>

application.yml​文件中编写数据库连接信息

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

编写接口​进行数据测试 (这里写的时候 ,我居然还把SQL语句给写错了)

/**
 * @Author North
 * @Date 2024/5/5
 */
@Mapper
public interface BookDao {
    @Select("select * from tbl_book where id = #{id}")
    Book getById(Integer id);
}

测试类​中进行测试

@SpringBootTest
class Springboot008MybatisApplicationTests {

	@Autowired
	private BookDao bookDao;

	@Test
	public void testSelectById() {
		Book book = bookDao.getById(2);
		System.out.println(book);
	}
}

测试结果如下:

image

3. 整合MyBatis-Plus

这里说一下MyBatis-Plus 与 MyBatis 的区别

  • 导入坐标不同
  • 数据层实现简化

  • 整合MyBatis-Plus依赖的步骤如下

    • 创建SpringBoot 工程的时候 ,勾选SQL 下的 MySQl Dirver​ 依赖 ,因为MyBatis-Plus是国人开发的并没有在官方中有所显示
    • 手工添加MyBatis-Plus对应的starter
    • 数据层接口使用BaseMapper​简化开发

手工添加MyBatis-Plus对应的starter

        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-spring-boot3-starter</artifactId>
            <version>3.5.5</version>
        </dependency>

application.yml​文件中编写数据库连接信息

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

mybatis-plus:
  global-config:
    db-config:
      table-prefix: tbl_

数据层接口使用BaseMapper​简化开发

/**
 * @Author North
 * @Date 2024/5/5
 */
@Mapper
public interface BookMapper extends BaseMapper<Book> {
}

测试代码如下:

@SpringBootTest
class Springboot010TestApplicationTests {

    @Autowired
    private BookMapper bookMapper;

    @Test
    void testSelectById() {
        System.out.println(bookMapper.selectById(1));
    }
}

测试结果如下:

image

4. 整合Druid

  • 整合Druid的步骤

    • 整合Druid​需要导入Druid对应的starter
    • 根据Druid提供的配置方式进行配置
  • 整合第三方技术通用方式

    • 导入对应的starter
    • 根据提供的配置格式 ,配置非默认值对应的配置项

导入Druid相关的依赖

		<!-- https://mvnrepository.com/artifact/com.alibaba/druid-spring-boot-starter -->
		<dependency>
			<groupId>com.alibaba</groupId>
			<artifactId>druid-spring-boot-starter</artifactId>
			<version>1.2.6</version>
		</dependency>

配置yml文件 : 这里注意下 druid 的位置

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

其余的步骤和整合MyBatis步骤想同

结果演示:

image

标签:SpringBoot,spring,boot,mybatis,整合,MyBatis,第三方,starter
From: https://www.cnblogs.com/LunaNorth/p/18395035

相关文章

  • 【开题报告】基于Springboot+vue家庭儿童玩具共享系统(程序+源码+论文) 计算机毕业设计
    本系统(程序+源码)带文档lw万字以上文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景随着家庭对儿童早期教育的重视及生活水平的提高,儿童玩具市场需求日益增长,但同时也带来了资源浪费与存储空间不足的问题。许多家庭在购买大量玩具后,发......
  • 1. SpringBoot 入门
    1.SpringBoot简介SpringBoot是由Pivotal团队提供的全新框架,可以帮助我们开发基于Spring的、独立的、生产级的应用程序。​其中SpringBoot的官网是:SpringBootReferenceDocumentationSpringBoot的主要目标是:为所有Spring开发提供更快的入门体验开箱即用,提供了自动配......
  • 计算机毕业设计 | SpringBoot+vue的医院门诊预约挂号系统(附源码)
    1,绪论1.1项目背景预约挂号,挂专家号更是“一号难求”,这是当前许多大型医院的普遍现象。预约挂号是各地近年来开展的一项便民就医服务,旨在缩短看病流程,节约患者时间。这种预约挂号大多通过医疗机构提供的电话或者网络进行,基本上是免费或者只收取很少的手续费。由于预约挂号......
  • Stable Diffusion教程,直接一键安装使用!(附SD整合包)
    ▼今天给大家分享的是**开源免费StableDiffusion教程无需魔法一键安装使用!**下载包里面有安装教程,大家如果有需要自行下载就可以了。StableDiffusion是基于LatentDiffusionModel(LDM)的,LDM是一款顶尖的文转图合成技术。在了解LDM的工作原理之前,让我们先看看什么是......
  • java+springboot权限的设计(用户、角色、权限)和前端如何渲染用户所对应的权限菜单
    记得当时在学校的时候,觉得这个实现起来真的超级困难,想想就头大,毫无头绪,即便那时候去查资料看了很多大佬写的文章,看的时候感觉恍然大悟,直拍大腿,但是当我想要动手自己去做的时候,又不知道从哪开始切入,于是一直没有动手去做,直到最近在实习的时候,给了我这个任务,当我带着恐惧去自......
  • idea java开发 如何引入 一个 第三方 文件夹SDK源码,是SDK源码 不是 jar包
    在IntelliJIDEA中引入第三方文件夹作为SDK源码,而不是以jar包的形式,可以通过以下步骤来实现:打开项目:启动IntelliJIDEA,并打开你的项目。打开项目结构设置:点击菜单栏中的File->ProjectStructure...或使用快捷键Ctrl+Alt+Shift+S打开项目结构设置窗口。添加......
  • Vue3+SpringBoot前端项目实战智慧实验室管理平台
    Vue3+SpringBoot前端项目实战:‌智慧实验室管理平台在当今数字化快速发展的时代,‌智慧实验室管理平台成为提升科研效率、‌优化资源配置的重要工具。‌本文将介绍如何使用Vue3和SpringBoot构建一个功能全面的智慧实验室管理平台,‌涵盖平台的设计思路、‌技术选型、‌核心功......
  • SpringBoot项目常用配置文件MybatisPlusConfig、RedisConfig、RedissonConfig、Swagge
    MybatisPlusConfig:@Configuration@MapperScan("com.yupi.usercenter.mapper")publicclassMybatisPlusConfig{@BeanpublicMybatisPlusInterceptormybatisPlusInterceptor(){MybatisPlusInterceptorinterceptor=newMybatisPlusInterc......
  • 基于Node.js+vue基于Springboot的某大学运动会管理系统(开题+程序+论文) 计算机毕业设
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容研究背景随着信息技术的飞速发展,高校管理工作逐渐向数字化、智能化转型。传统的运动会管理模式往往依赖于纸质表格和人工操作,存在信息更新不及时、数据处理繁琐、易......
  • Hive整合MySQL
     目录Hive整合MySQL 安装MySQL1)上传MySQL安装包以及MySQL驱动jar包2)解压MySQL安装包3)卸载系统自带的mariadb4)安装MySQL依赖5)安装mysql-client6)安装mysql-server7)启动MySQL8)查看MySQL密码配置MySQL1)用刚刚查到的密码进入MySQL(如果报错,给密码加单引号)2)设置复杂密......