当前位置: 首页 > wzjs >正文

一个网站做无限关键词关键词是指什么

一个网站做无限关键词,关键词是指什么,电子印章制作生成免费,贵州住房与城乡建设厅网站简介 本篇文章将以整合JUnit、MyBatis、MyBatis-Plus、Druid的几个例子来总结SpringBoot项目整合第三方技术的技巧,经过学习本篇文章之后,让你能够在使用SpringBoot整合第三方技术的时候能够更加得心应手。文章内容若存在错误或需改进的地方,…

简介

        本篇文章将以整合JUnit、MyBatis、MyBatis-Plus、Druid的几个例子来总结SpringBoot项目整合第三方技术的技巧,经过学习本篇文章之后,让你能够在使用SpringBoot整合第三方技术的时候能够更加得心应手。文章内容若存在错误或需改进的地方,欢迎大家指正!若对操作有任何疑问欢迎留言!非常感谢!

目录

插入知识点:纯净SpringBoot项目所具有的依赖

一、SpringBoot整合JUnit

1、引入依赖

2、使用Spring测试类

3、示例

4、注意事项及排除问题

二、SpringBoot整合MyBatis

1、导入依赖坐标

2、配置相关信息

3、示例

4、问题排查

三、SpringBoot整合MyBatis-Plus

1、导入依赖坐标

2、配置相关信息

3、示例

4、注意事项及排除问题

1、提示找不到junit、SpringBootTest等

2、发生异常:SQLSyntaxErrorException: Table 'demo.student' doesn't exist

四、SpringBoot整合Druid

1、导入坐标依赖

2、配置相关信息

3、示例

五、SpringBoot整合第三方技术总结


插入知识点:纯净SpringBoot项目所具有的依赖

        在创建SpringBoot项目的时候,若不勾选任何依赖,那么SpringBoot项目将默认导入springboot的启步依赖spring-boot-starter和Spring测试起步依赖spring-boot-starter-test。

一、SpringBoot整合JUnit

1、引入依赖

        在创建SpringBoot项目的时候,项目会自动引入Spring测试起步依赖spring-boot-starter-test,而在这个依赖中就已经引入了JUnit的依赖,所以在项目中可以直接使用。

2、使用Spring测试类

        在项目创建之后,可以看到有一个test目录和一个与引导类类名相似的类,这个是项目创建的时候自动创建的一个Spring的测试类,点击在这个类可以看到被@SpringBootTest注解所修饰,有了这个注解,在启动这个类里面的测试方法的时候同时也会启动Spring容器,那么在这个类里面就可以使用有关Spring的一切东西。

3、示例

        可以看到我在applicattion.yaml文件中自定义配置了端口号,然后在测试类中注入了管理属性源的Environment对象,然后通过getProperty方法成功获取到了配置文件中的配置。

4、注意事项及排除问题

        也许会遇到下面这种情况,这种情况是因为test下的包名和类路径java下的包名不一致导致的,也可能是包名一致,但是测试类与Java类不在同一层目录下,而导致测试类找不到配置类或配置文件。原因是测试类会从当前所在包及其父包中寻找@SpringBootConfiguration注解,也会去Java包中的同样的路径下寻找,若没找到就会报下面的错误,可以看到@SpringBootApplication注解中就包含@SpringBootConfiguration注解。

解决办法

        通过报错信息可以看到让使用@ContextConfiguration or @SpringBootTest(classes=...)来解决,那么也就是使用这个方法解决的,第一种可以在测试类的上面添加@ContextConfiguration(classes = 启动类类名.class),第二种是直接在@SpringBootTest注解中指定classes属性值为启动类的字节码对象。若测试类所在类路径与启动类完全一致,那么就可以省略classes属性。最常用的是第二种办法,一般不会使用@ContextConfiguration。

二、SpringBoot整合MyBatis

        因为MyBatis是持久层框架用于操作数据库,所以前提是需要导入数据库的驱动坐标,并连接数据库。下面也会有操作步骤。

1、导入依赖坐标

        在pom种导入mybatis的起步依赖,可以是在创建项目的时候直接勾选导入,也可以在项目中的pom文件中手动导入。并导入数据库驱动依赖坐标。

2、配置相关信息

        在配置文件中配置相关技术所需的信息,这里需要配置相关的数据源,也就连接MySQL。

3、示例

(1)创建表对应的实体类


(2)创建Mapper接口

        注意这里的Mapper接口需要使用@Mapper注解声明。这里还根据MyBatis写了一个根据ID查询数据的方法,等会就将使用这个方法进行测试。


(3)测试

在测试类中注入StudentMapper,然后调用getById接口,查看数据是否正常返回。

4、问题排查

书写过程中可能会报SQLException,然后提示说The server time zone is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the 'serverTiemzone' configuration property) ... ...。这种情况,这是因为SpringBoot版本太低或者是MySQL驱动版本太低,导致出现了时区问题,那么只需要修改配置文件中的数据库连接信息即可,在url配置的后面加上

?serverTimezone=Asia/Shanghai 即可。

若提示com.mysql.jdbc.Driver驱动类过时,那么就使用com.mysql.cj.jdbc.Driver即可。

三、SpringBoot整合MyBatis-Plus

前提

MyBatis-Plus是在MyBatis上做的增强,仍然是持久层框架用于操作数据库,所以前提是需要导入数据库的驱动坐标,并连接数据库。下面也会有操作步骤。

1、导入依赖坐标

创建项目的时候,在添加依赖时可以搜索MyBatis-Plus,发现并没有,也就代表当前SpringBoot版本并没有收录MyBatis-Plus。解决办法是直接创建一个纯净的SpringBoot工程,然后去Maven坐标库中查找MyBatis-Plus的坐标,复制粘贴导入即可。

2、配置相关信息

在配置文件中配置相关技术所需的信息,这里需要配置相关的数据源,也就连接MySQL。

3、示例

(1)创建表对应的实体类


(2)创建Mapper接口并继承BaseMapper指定泛型为实体类

        注意这里的Mapper接口需要使用@Mapper注解声明且需要继承BaseMapper指定泛型为实体类。


(3)测试

        在测试类中注入StudentMapper,然后调用继承的selectById接口,查看数据是否正常返回。

4、注意事项及排除问题

1、提示找不到junit、SpringBootTest等

现象

        我在程序运行的时候发现程序运行不了,一直提示程序包org.junit.jupiter.api不存在、程序包org.springframework.boot.test.context不存在、找不到SpringBootTest、找不到com.xbb.SpringbootDemo5ApplicationTests。

原因

        发现是我的porject的包设置错了,点击file-Projrect Structure... -Modules可以看到,我是把src包一不小心设置成了Sources,于是就出现了上面的问题。

解决办法

        那么只需要将包的类型设置成默认的即可。

2、发生异常:SQLSyntaxErrorException: Table 'demo.student' doesn't exist

现象

        运行之后出现下面的异常信息,然后运行失败。

原因

        MyBatis会将实体类的类名与表名做映射,如果没有任何配置的话,就会默认类名与表名相同,如果类名和表名不同,就会出现上面找不到表的错误。

解决办法

        下面提供两种解决办法,可以按需使用。

        第一种:在实体类上面添加@TableName("实际对应表名")注解并指定属性为表名。

        第二种:若是因为表名有特殊前缀,那么还可以通过配置文件配置的方式,统一配置前缀即可。但是,类名必须与表名除去前缀之后的部分保持一致,可以忽略大小写。例如表名为user_student,可以设置前缀为user_,那么类名就必须为Student,忽略大小写。

四、SpringBoot整合Druid

前言

        Druid 是阿里巴巴开源的高性能数据库连接池工具,具备监控功能、SQL 注入防御能力,性能优于传统连接池,支持多种数据库,并通过 Filter-Chain 插件机制提供扩展性。Spring Boot 2.x 默认采用 HikariCP,它以轻量级、高性能、自动优化和简单可靠著称。两者对比,HikariCP 性能更优,Druid 监控和安全功能更强;Druid 扩展性高但配置复杂,HikariCP 更简单易用;Druid 在中国市场流行,HikariCP 在国际上更受关注。

1、导入坐标依赖

                创建项目的时候,在添加依赖时可以搜索druid,发现并没有,也就代表当前SpringBoot版本并没有收录druid。解决办法是直接创建一个纯净的SpringBoot工程,然后去Maven坐标库中查找druid的坐标,复制粘贴导入即可。

2、配置相关信息

(1)第一种配置:在原有的spring.datasource配置的基础上指定type属性

(2)第二种配置:使用druid专属的spring配置(推荐)

3、示例

这里连接数据源的工具还是使用的是MyBatis-Plus,然后下面是示例:

(1)创建表对应的实体类

(2)创建Mapper接口并继承BaseMapper指定泛型为实体类

        注意这里的Mapper接口需要使用@Mapper注解声明且需要继承BaseMapper指定泛型为实体类。


(3)测试

        在测试类中注入StudentMapper,然后调用继承的selectById接口,查看数据是否正常返回。

五、SpringBoot整合第三方技术总结

经过上述示例之后,我们可以看到SpringBoot整合第三方技术无非就是两步:

  • 第一步:导入技术相关依赖
    • 若该技术被Spring已收录,那么只需要指定groupId和artifactId即可,版本由Spring管理
    • 若该技术没有被Spring收录,那么就去Maven坐标库中查询相关坐标,然后导入即可
  • 第二部:配置技术需要的配置
    • 推荐:在配置文件中使用当前技术的专属配置进行配置

通过以上两步即可实现SpringBoot整合第三方技术,那么剩下的就是根据技术的特性进行使用了。

http://www.dtcms.com/wzjs/289245.html

相关文章:

  • 丹东建设网站必应站长平台
  • 做网站的服务器杭州网络推广
  • 合肥网站建设培训aso优化违法吗
  • 石家庄建设厅网站百度推广一级代理商名单
  • 合肥网站优化价格百度经验官方网站登录入口
  • 怎么做网站弹出公告域名访问网站怎么进入
  • 徐州专业做网站的网络推广比较经典和常用的方法有
  • 怎么把服务器做网站太原seo
  • 给网站做排名优化学什么好处每日舆情信息报送
  • 简单网站建设推荐在线看crm系统
  • .net 网站开发实例搜索优化seo
  • 宜兴市建设局官方网站营销软文800字范文
  • 免费网站设计什么价格百度收录网站多久
  • 做网站泊头快速排名怎么做
  • wordpress怎么做网站软文代写发布
  • 网站服务器天付安卓优化大师app下载安装
  • wordpress 公式编辑器北京网站建设东轩seo
  • 福州营销型网站建设价格网站百度收录要多久
  • 跨境电商独立站建站服务广州搜发网络科技有限公司
  • lamp安装wordpress南宁百度seo排名价格
  • 佛山 做网站公司网络营销策略存在的问题
  • 广州有哪些网站建设如何自己做一个网址
  • 手机分销网站建设百度官方版下载
  • 网站建设人员工作要求西安建站推广
  • 做的网站加载太慢怎么办百度seo优化收费标准
  • 公司网站后台打不开杭州百度快照优化排名
  • 学生做的网站能攻击可以免费推广的网站
  • 网站开发需要什么软件app优化排名
  • 做外贸主页网站用什么的空间好点广州搜索排名优化
  • 做企业免费网站哪个好些seo专员