springdoc整合
前言SpringDoc是一个用来自动生成API文档的库。它是基于SpringBoot项目的,遵循OpenAPI3(一个组织规定的规范)规范。它是通过检查我们运行中的程序,推断出基于Spring配置、类结构和各种注解的API语义,从而自动生成JSON、YAML和HTML格式的接口文档。 而我们不得不提的就是Swagger。Swagger是一个公司的开源项目,将自己的API设计贡献给了OpenAPI并由其标准化。在SpringDoc之前我们还可以使用Springfox,和SpringDoc一样是一个用于生成API文档的库,2020年起不再更新。 官方文档链接:https://springdoc.org/#Introduction 使用插件使用【用于生成openapi.json】:https://springdoc.org/#plugins 官方demo文档:https://github.com/springdoc/springdoc-openapi-demos 访问主页:http://localhost:8080/swagger-ui.html 注解介绍@Tag1234567//...
Liquibase的使用
liquibase- 引自官网 LiquiBase是一个用于数据库重构和迁移的开源工具,通过日志文件的形式记录数据库的变更,然后执行日志文件中的修改,将数据库更新或回滚到一致的状态。 它的目标是提供一种数据库类型无关的解决方案,通过执行schema类型的文件来达到迁移。其有点主要有以下: 支持几乎所有主流的数据库,如MySQL, PostgreSQL, Oracle, Sql Server, DB2等; 支持多开发者的协作维护; 日志文件支持多种格式,如XML, YAML, JSON, SQL等; 支持多种运行方式,如命令行、Spring集成、Maven插件、Gradle插件等。 在多数据源项目中,sql显然不如yml.xml等自如 版本号由开发人员来维护,使用 author + id12345678910111213141516171819202122232425262728293031<dependencies> <dependency> <groupId>org.liquibase</groupId>...
SpringRestDocs结合单元测试的使用
简介通过将手写文档与Spring MVC...
单元测试介绍及使用
前言开发人员写的常常是“单元测试”,但其实可以细分成 单元测试 和 集成测试 两个。 划分的原因拿常见的 Spring IoC 举例。Spring 不同Bean之间相互依赖,例如某API业务逻辑中会依赖不同模块的 Service,Service 方法中又可能依赖不同的 Dao 层方法,甚至还会通过 RPC、HTTP 调用外部服务方法。这给我们写测试用例带来了难度,本来只想测试某个方法的功能,却要考虑一连串的依赖关系。 单元测试 单元测试:是指对软件中的最小可测试单元进行检查和验证。 通常任何软件都会划分为不同的模块和组件。单独测试一个组件时,我们叫做单元测试。单元测试用于验证相关的一小段代码是否正常工作。单元测试不是用于发现应用程序范围内的 bug,或者回归测试的 bug,而是分别检测每个代码片段。 单元测试不验证应用程序代码是否和外部依赖正常工作。它聚焦与单个组件并且 Mock 所有和它交互的依赖。例如,方法中调用发短信的服务,以及和数据库的交互,我们只需要 Mock 假执行即可,毕竟测试的焦点在当前方法上。 单元测试的特点: 不依赖任何模块。 基于代码的测试,不需要在...
