基于ApiBoot的前后分离演示脚手架诞生了~

知识改变命运,撸码使我快乐,2020继续游走在开源界<br/>
点赞再看,养成习惯<br/>
给我来个Star吧,ApiBoot Admin源码仓库:https://gitee.com/minbox-projects/api-boot-admin

前言

ApiBoot发布到目前为止已经9个月的时光了,在这段时间内有过热泪迎面、有过沮丧、也有过无从下手的感觉,坚持开源是我作为程序员的愿景,尽我所能,继续坚持!!!

这两天公众号并未推文,其实我在做一件很有意义的事情,基于最新版本的ApiBoot编写了一款前后端分离的脚手架,因为不是专业的前端出身,所以采用了目前市面上社区比较活跃的集成框架vue-element-admin,由目前就职于字节跳动 花裤衩 开源的一款基于Vue的管理平台脚手架。

存在之道

由于学习ApiBoot的小伙伴越来越多,也不能很全面的回复大家的所要了解的问题,我总结了下大多数还是因为文章中所讲解的是拆分后的使用方式,如果真正整合到自己的项目中可能就不会了,真的有这么难吗?

这个并不是我希望看到的事情,因为ApiBoot本身秉承着快速集成第三方框架、开箱即用、提供开发效率的宗旨,如果太困难就完全失去了意义。

针对这个问题,我创建了一个名为api-boot-admin的开源项目,用了几个日夜的时间,将ApiBoot内的各个常用组件进行整合,项目采用前后端分离的方式进行构建,从使用的根本来解决问题。

源码

界面一览

登录界面

演示模块

使用环境

由于前端采用的是vue-element-admin集成解决方案,所以本地如果想要使用需要有如下的环境支持:

  • NodeJs 10.18.0+
  • Npm 6.13.4+

接口架构组成

ApiBoot Admin所使用的接口都是由admin-services这个子模块进行提供,导入IDEA开发工具可直接使用XxxApplication方式运行。

admin-services是一个完善的基础接口服务项目,内部包含了在构建接口服务项目时大多数场景能用到的配置、公共类、枚举、统一请求、统一响应、数据验证等。

  • [x] SpringBoot Profiles(多环境激活)
  • [x] ControllerAdvice(统一控制器异常捕捉通知)
  • [x] MapStruct(实体实例转换)
  • [x] ApiBoot Security(组件化快速集成Spring Security)
  • [x] ApiBoot OAuth2(组件化快速集成OAuth2)
  • [x] ApiBoot MyBatis Enhance(基于MyBatis的增强ORM)
  • [x] ApiBoot MyBatis Enhance Codegen(自动生成实体的Maven Plugin)
  • [x] ApiBoot MyBatis Pageable(自动化分页组件,提供给ElementUI内Table使用)
  • [x] ApiBoot Logging(分布式链路日志)
  • [x] ApiBoot Swagger(自动生成接口文档)
  • [x] 接口Api基础类
  • [x] 业务Service基础类

日志服务

ApiBoot Admin内名为admin-log-server的子模块项目,该项目主要是用于接收admin-services所产生的链路请求日志,然后进行保存到数据库中,内部通过ApiBoot Logging Admin实现。

只需要添加@EnableLoggingAdmin一个注解在启动类上就可以实现链路日志的接收以及自动化保存,是不是简单的令人发指?

通过添加spring-boot-starter-security来保证日志上报的安全性,上报时通过配置Basic User基础认证实现。

接口文档

ApiBoot Admin内部通过集成ApiBoot Swagger来实现接口文档的自动生成,在接口Api类内的方法上简单的配置Swagger2所提供的注解就可以实现文档的自动生成,支持在线调试,还支持设置OAuth2所生成的请求令牌调试接口。

作者个人 博客
使用开源框架 ApiBoot 助你成为Api接口服务架构师
Image placeholder
HelloBoy
未设置
  91人点赞

没有讨论,发表一下自己的看法吧

推荐文章
从ResNet的诞生讲起:美公司在北京的AI研究所出了成果,中美究竟谁受益更多?

大数据文摘出品来源:macropolo编译:狗小白、Aileen中美之间摩擦不断,如今,AI竞争也成为了其中重要的组成部分。让我们假设这样一个场景:美国AI公司设立在中国的实验室取得了一些突破,谁从中

全局安装react脚手架在哪装?

全局安装react脚手架在哪装?全局安装react脚手架在任何目录下都可以,因为和当前所在目录没有关系。一、全局安装react脚手架npminstall-gcreate-react-app -g参数表

vue项目开发必须要搭脚手架么?

vue是一个渐进式的前端框架,渐进式也就意味着你可以在使用过程中,引入自己需要的一系列外部资源。这也就意味着,你可以自己搭建自己的框架,如果不用vue-cli,你可以自己搭建开发框架,需要vuex、需

vue脚手架是什么?

vue-cli是什么vue-cli是有Vue提供的一个官方cli,专门为单页面应用快速搭建繁杂的脚手架。它是用于自动生成vue.js+webpack的项目模板,是为现代前端工作流提供了batterie

vue引入swiper vue使用swiper vue脚手架使用swiper /引入js文件/引入css文件

vue引入swipervue使用swipervue脚手架使用swiper/引入js文件/引入css文件欢迎加入前端交流群来获取视频资料以及前端学习资料:749539640转载文章请注明出处! 如果只是

SpringBoot个人应用开发框架(SpringBoot版本2.1)+IDEA

前言: 此笔记为本人首个SpringBoot项目框架学习实践记录,期间参考了许多大神的笔记和心得。 参考文档如下: 项目git地址: 一、创建SpringBoot工程 1.1创建父POM工程结

再见 Spring Boot 1.X ,Spring Boot 2.X 走向舞台中心

2019年8月6日,Spring官方在其博客宣布,SpringBoot1.x停止维护,SpringBoot1.x生命周期正式结束。其实早在2018年7月30号,Spring官方就已经在博客进行过预告,

Ant Design Vue 中a-upload组件通过axios实现文件列表上传与更新回显的前后端处理方案

前言在企业应用的快速开发中,我们需要尽快的完成一些功能。如果您使用了AntDesignVue,在进行表单的文件上传相关功能开发的时候,您肯定迫不及待地需要找到一篇包治百病的文章,正是如此,才有了该文的

vue基于vant的uploader上传图片

小白第一次使用有赞的vant组件库,这里记录一下个人在项目上的一些使用,方便以后查阅. {{item.goods_title}} {{item.sku_param_value}} 愉

为什么要前后端分离?有什么优缺点

作者:Cherry300来源:jianshu.com/p/c86cee16b418一、前戏前后端分离已成为互联网项目开发的业界标准使用方式,通过nginx+tomcat的方式(也可以中间加一个node

微课程 | 第十三课《全局序列视频演示》

 https://v.youku.com/v_show/id...上一期我们介绍了全局序列的原理,接下来我们通过视频来演示一下全局序列功能。我们来看一下这两种全局序列是怎么工作的。时间戳算法首先是sn

第三方支付 : 概述、起源 | PayPal 和支付宝 的诞生的故事

说起第三方支付,好像大家都知道,天天不是用支付宝和微信吗?支付宝和微信支付确实是行业内非常具有代表的第三方支付公司,但现在他们已经不完全是一家第三方支付公司,都可以称为金融集团。其实第三方支付,远远不

SpringBoot 整合 Dubbo

1.整合dubbo 有的人或许会说已经有spring-cloud了,你整合dubbo干什么,其实没啥意图,主要就是想整合一下,毕竟dubbo在国内使用的还是很多的,你会一点点总不至于让你显得那么尴尬。

Python可视化 | Seaborn5分钟入门(三)——boxplot和violinplot

微信公众号:「Python读财」如有问题或建议,请公众号留言Seaborn是基于matplotlib的Python可视化库。它提供了一个高级界面来绘制有吸引力的统计图形。Seaborn其实是在matp

Python可视化 | Seaborn5分钟入门(二)——barplot&countplot&pointplot

微信公众号:「Python读财」如有问题或建议,请公众号留言Seaborn是基于matplotlib的Python可视化库。它提供了一个高级界面来绘制有吸引力的统计图形。Seaborn其实是在matp

学习IT的实用工具和网站推荐

对于一些学习IT的初学者来说,掌握一些实用的软件工具和学习网站是十分有必要的。本文要为大家推荐一些学习IT的相关的资源,像是鸠摩搜书和脚本之家等电子书搜索网站,还有冰点文库和文件搜索工具等实用工具以及

程序员:我终于知道post和get的区别

IT界知名的程序员曾说:对于那些月薪三万以下,自称IT工程师的码农们,其实我们从来没有把他们归为我们IT工程师的队伍。他们虽然总是以IT工程师自居,但只是他们一厢情愿罢了。此话一出,不知激起了多少(码

美团BERT的探索和实践

他山之石,可以攻玉。美团点评NLP团队一直紧跟业界前沿技术,开展了基于美团点评业务数据的预训练研究工作,训练了更适配美团点评业务场景的MT-BERT模型,通过微调将MT-BERT落地到多个业务场景中,

Fortinet的云安全观:上云≠安全 云安全市场或迎“又一春”!

近年来网络攻击事件频繁发生,企业对于网络安全的关注度已经到达前所未有的高度,如何保证业务的正常运转是每个企业最为关注的问题之一。而随着越来越多的企业将业务扩展到云端,云上安全问题也成为企业必谈的话题!

从reddit的一亿美元商业逆袭,看移动与PC产品的时代天堑

提起有“互联网头版”之称的reddit,你会联想到什么?想到这一网站上层出不穷的搞笑梗或meme图?还是程序员们经常制造出的各种有趣小发明?说起来在这个体量巨大、包容性极强、时刻制造着互联网新热点的论

为什么说IPA智能流程自动化是企业IT的下一波浪潮?

提到IPA,可能很多人会立刻想到RPA。RPA,即机器人流程自动化,是企业IT过去两年最热门的技术之一。仅在2018年,就有三家公司拿到了总额超过十亿美金的风投,包括AnywhereAutomatio

30分钟让你掌握Git的黑魔法

本文转载自云效公众号在GitRevNews#48期的LightReading中有一篇文章写的不错,不仅干货满满而且还附带了操作视频。其中的内容不仅覆盖了很多git使用上的基础知识,也从使用角度上解答了

tomcat的重启

点击下方截图可插入当前视频播放画面,了解更多Mackdown语法可以点击上方?图标jsp运行不需要重启tomcat而servlet需要

如何改变react的行内样式

如何改变react的行内样式在react中,可以这样来设置行内样式:render(){ conststyles={color:"red",fontSize:"16px"}; return( ); }

vue和react的区别是什么?

vue和react的区别1、监听数据变化的实现原理不同Vue通过getter/setter以及一些函数的劫持,能精确知道数据变化。React默认是通过比较引用的方式(diff)进行的,如果不优化可能导