栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

SpringBoot整合第三方技术

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

SpringBoot整合第三方技术

SpringBoot整合第三方技术 1、SpringBoot整合JUnit

创建新的工程

创建如图所示的文件
编写BookDao文件

package com.example.impl;

public interface BookDao {
    public void save();
}

写BookDaoImpl文件

package com.example.impl;

import org.springframework.stereotype.Repository;

@Repository
public class BookDaoImpl implements BookDao {

    @Override
    public void save() {
        System.out.println("test....");
    }
}

编写SpringBootJunitApplicationTests文件

package com.example.springboot_junit;

import com.example.impl.BookDao;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;

@SpringBootTest
class SpringBootJunitApplicationTests {
	//1.注入你要测试的对象
	@Autowired
	private BookDao bookDao;

	@Test
	void contextLoads() {
		//2.执行要测试的对象对用的方法
		bookDao.save();
	}

}

点击Test的运行

classes属性

现在直接运行SpringBootJunitApplicationTests文件而不是test,会报错
但把SpringBootJunitApplicationTests改为example包下,在运行即可成功
原因是与启动类SpringBootJunitApplication导入相同的包

但我不想改变包的位置来运行文件,怎么办?
答:修改注解属性即可,或者添加注解@ContextConfiguration

package com.example;

import com.example.impl.BookDao;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;

@SpringBootTest(classes = SpringBootJunitApplication.class)
//@ContextConfiguration(classes = SpringBootJunitApplication.class)
class SpringBootJunitApplicationTests {
	//1.注入你要测试的对象
	@Autowired
	private BookDao bookDao;

	@Test
	void contextLoads() {
		//2.执行要测试的对象对用的方法
		bookDao.save();
	}

}
2、SpringBoot整合Mybatis

创建新文件

去mybatis_Plus数据库下创建表

CREATE TABLE `tbl_book`  (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `type` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
  `name` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
  `description` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 13 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
 

插入数据

INSERT INTO `tbl_book` VALUES (1, '计算机理论', 'Spring实战 第5版', 'Spring入门经典教程,深入理解Spring原理技术内幕');
INSERT INTO `tbl_book` VALUES (2, '计算机理论', 'Spring 5核心原理与30个类手写实战', '十年沉淀之作,手写Spring精华思想');
INSERT INTO `tbl_book` VALUES (3, '计算机理论', 'Spring 5设计模式', '全方位解析面向Web应用的轻量级框架,带你成为Spring MVC开发高手');
INSERT INTO `tbl_book` VALUES (4, '计算机理论', 'Spring MVC+MyBatis开发从入门到项目实战', '源码级剖析Spring框架,适合已掌握Java基础的读者');
INSERT INTO `tbl_book` VALUES (5, '计算机理论', '轻量级Java Web企业应用实战', '源码级剖析Spring框架,适合已掌握Java基础的读者');
INSERT INTO `tbl_book` VALUES (6, '计算机理论', 'Java核心技术卷I基础知识(原书第11版)', 'Core Java第11版,Jolt大奖获奖作品,针对Java SE9、10、11全面更新');
INSERT INTO `tbl_book` VALUES (7, '计算机理论', '深入理解Java虚拟机', '5个维度全面剖析JVM,大厂面试知识点全覆盖');
INSERT INTO `tbl_book` VALUES (8, '计算机理论', 'Java编程思想(第4版)', 'Java学习必读经典,殿堂级著作!赢得了全球程序员的广泛赞誉');
INSERT INTO `tbl_book` VALUES (9, '计算机理论', '零基础学Java(全彩版)', '零基础自学编程的入门图书,由浅入深,详解Java语言的编程思想和核心技术');
INSERT INTO `tbl_book` VALUES (10, '市场营销', '直播就该这么做:主播高效沟通实战指南', '李子染、李佳琦、薇娅成长为网红的秘密都在书中');
INSERT INTO `tbl_book` VALUES (11, '市场营销', '直播销讲实战—本通', '和秋叶—起学系列网络营销书籍');
INSERT INTO `tbl_book` VALUES (12, '市场营销', '直播带货:淘宝、天猫直播从新手到高手', '—本教你如何玩转直播的书,10堂课轻松实现带货月入3W+');

配置yml文件

spring:
  #配置数据源的信息
  datasource:
    #配置数据源的类型
    type:
    #配置数据库的各个信息
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://localhost:3306/mybatis_plus?useSSL=false&useUnicode=true&characterEncoding=utf-8&serverTimezone=GMT%2B8
    username: root
    password: '011012'

创建实体类doamain.Book

package com.example.dao;

import com.example.domain.Book;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;

@Mapper
public interface BookDao {
    @Select("select * from tbl_book where id=#{id}")
    public Book getById(Integer id);

}


测试

package com.example.dao;

import com.example.domain.Book;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;

@Mapper
public interface BookDao {
    @Select("select * from tbl_book where id=#{id}")
    public Book getById(Integer id);

}

3、SpringBoot整合Mybatis-Plus

方式一:创建项目时使用阿里云

Java版本改为8

方法二、导入Mybatis_Plus的依赖
创建步骤SpringBoot整合Mybatis一样
然后导入相关依赖即可

测试

把Spring_Plus模块的cv过来,在运行即可,修改下面两个文件

package com.example.Dao;

import com.baomidou.mybatisplus.core.mapper.baseMapper;
import com.example.domain.Book;
import org.apache.ibatis.annotations.Mapper;

@Mapper
public interface BookDao extends baseMapper {
}

package com.example;

import com.example.Dao.BookDao;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;

@SpringBootTest
class SpringBootMybatisPlusApplicationTests {

    @Autowired
    private BookDao bookDao;

    @Test
    void contextLoads() {
        System.out.println(bookDao.selectById(2));
    }

}

后发现报错了

说表不存在,我们需要显示指定表名(表名是tbl_book而不是book)
有很多方法去修改
比如实体类(Book)添加注解@TableName(“tbl_book”)
或者yml文件请求忽略前缀tbl_

SpringBoot整合Druid

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/777625.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号