ApiBoot 2.1.5.RELEASE 发布,接口服务落地解决方案

简介

ApiBoot是接口服务的落地解决方案,提供了一系列开箱即用的组件,通过封装来简化主流第三方框架的集成,从而提高开发者开发效率、学习成本、降低入门门槛,真正的实现开箱即用!!!

对SpringBoot简单了解的开发者就可以编写安全稳定的接口服务,可为移动端、网页端等多个端点提供丰富的安全接口。

ApiBoot依赖于SpringBoot,可以使用ApiBoot构建独立的Java应用程序。

2.1.5.RELEASE更新日志

  1. 新增ApiBoot Alibaba Oss西南成都地域
  2. 修复ApiBoot Logging与Seata提供的openfeign拦截器冲突问题
  3. 修复ApiBoot Enhance Codegen生成实体时,不创建codegen.setting.json文件抛出异常问题
  4. 升级SpringBoot为2.1.9.RELEASE
  5. 修改ApiBoot DataSource Switch多线程切换为Deque方式
  6. 修改框架源码描述
  7. 修复ReadMe公众号不显示问题
  8. 修复Banner输出版本错误问题

文档 & 源码

ApiBoot 官网文档:http://apiboot.minbox.io

源码地址:https://gitee.com/minbox-projects/api-boot

安装 & 入门

组件的使用请查看官方参考文档,开始使用请访问第一个ApiBoot应用程序

如果你是使用Maven来构建项目,你需要添加ApiBoot的版本依赖到你的pom.xml文件内,如下所示:


 
  1. <dependencyManagement>
  2. <dependencies>
  3. <!--ApiBoot版本依赖-->
  4. <dependency>
  5. <groupId>org.minbox.framework</groupId>
  6. <artifactId>api-boot-dependencies</artifactId>
  7. <version>${lastVersion}</version>
  8. <scope>import</scope>
  9. <type>pom</type>
  10. </dependency>
  11. </dependencies>
  12. </dependencyManagement>

注意:lastVersion需要替换为最新的ApiBoot版本,请访问版本依赖 - 2.获取最新的ApiBoot依赖查看。

目前已整合的组件

ApiBoot内部提供了多个组件,下面简单的介绍组件的用途:

链路日志组件

内部通过集成整合minbox-logging开源框架,提供零侵入式分布式链路日志分析框架的使用,可应用到SpringCloud微服务应用内,提供Admin端点进行采集日志、分析日志、日志告警通知、服务性能分析等。通过Admin Ui可查看实时链路日志信息、在线业务服务列表。

安全组件

内部通过整合SpringSecurity + OAuth2两大常用资源安全、认证授权框架来保证接口服务的安全性,内存方式只需要添加几行配置就可以完成整合,ApiBoot针对SpringSecurity提供了两种查询用户的方式:memory(内存)、jdbc(数据库)。而针对OAuth2则提供了三种方式存储生成后的Token以及Client信息:memory、jdbc、redis等。

可以直接配置使用JWT格式化OAuth2生成的Token.

接口文档组件

通过集成 Swagger2来完成文档的侵入式生成,侵入式文档后期会被替代, ApiBootSecurityOauth已默认排除 swagger2相关的资源路径(如果自定义集成了OAuth2或者SpringSecurity需要手动排除Swagger资源路径)。

ORM组件(数据库持久化组件)

ApiBoot通过封装Mybatis提供了一款吸取JPA、Mybatis、QueryDSL等主流ORM框架的优点整合框架mybatis-enhance,内部提供了常用CRUD方法,无需编写一行SQL就可以完成对数据的持久化操作,提供方法命名规则查询、动态查询等新特性。

代码生成组件

ApiBoot为mybatis-enhance提供了专门定制代码生成插件,可为数据库表对应生成数据实体生成、动态查询实体,mybatis-enhance-codegen是一款Maven Plugin,配置数据库链接信息后可根据配置过滤指定的表、全部表、指定前缀的表进行生成。

多数据源组件

ApiBoot针对多数据源切换的场景提供了自动化切换的方式,内部提供了两种数据源类型的配置实现,分别是:Druid、HikariCP,通过在类、方法上配置注解的方式切面自动切换为配置数据源,如未配置则使用默认的数据源。

自动分页组件

ApiBoot针对Mybatis持久化框架的使用者提供了自动化分页的插件mybatis-pageable,这是一款基于Mybatis Plugin实现的插件,根据传递的分页参数可以自动查询出分页信息,如:总页数、每页条数、当前页码、是否存在上一页、下一页等。

支持主流的12种数据库。

限流组件

ApiBoot针对单应用、分布式集群应用分别提供了一种限流的方式,针对单应用提供了Google的令牌桶方式限流,而针对服务集群环境提供了Redis Lua方式。

限流配置秒级QPS访问量。

阿里云OSS组件

集成阿里云OSS提供的SDK来完成文件的上传、下载等方法实现,开箱即用。

阿里云短信组件

集成阿里云提供的SMS服务,简单配置即可完成短信发送,覆盖全球的短信服务,友好、高效、智能的互联化通讯能力,帮助企业迅速搭建客户触达通道。

阿里云邮件组件

集成阿里云提供的Mail服务,简单配置后,通过ApiBoot提供的封装类几行代码就可以完成邮件发送。

示例

ApiBoot提供了每一个组件的使用示例,在源码api-boot-samples目录下根据组件名归类。

使用指南

请访问作者博客恒宇少年De成长之路获取ApiBoot、MinBox开源组织内开源框架的最新的使用指南。

猜你喜欢

转载自www.oschina.net/news/111128/apiboot-2-1-5-released