一种web后端开发框架及其构建方法技术

技术编号:26342030 阅读:11 留言:0更新日期:2020-11-13 20:29
本发明专利技术公开了一种web后端开发框架,包括基础功能模块,用于集成web后端开发技术,以common包为基础,构建web后端开发的基础功能模块,便于开发其它功能模块;组件功能模块,用于以组件的方式提供额外的、可定制化的功能,功能完成以后都以单独的子模块的形式存在,便于开发人员在开发中引入使用;微服务功能模块,用于在基础功能模块的基础上,以app‑core模块为核心,扩展其它微服务子模块。本发明专利技术还提供一种web后端开发框架的构建方法。通过本方案能够解决现有开发框架中的技术集成问题,提高了开发效率,灵活性和可扩展性高,可以灵活的集成第三方框架,也可以对现有的功能通过组件的方式进行扩展,跨平台性能好,支持跨平台部署。

【技术实现步骤摘要】
一种web后端开发框架及其构建方法
本专利技术涉及计算机
,尤其涉及一种web后端开发框架及其构建方法。
技术介绍
软件框架,通常指的是为了实现某个业界标准或完成特定基本任务的软件组件规范,也指为了实现某个软件组件规范时,提供规范所要求之基础功能的软件产品。框架的功能类似于基础设施,与具体的软件应用无关,但是提供并实现最为基础的软件架构和体系。软件开发者通常依据特定的框架实现更为复杂的商业运用和业务逻辑。这样的软件应用可以在支持同一种框架的软件系统中运行。现有的web后端开发框架的基础技术集成不够全面,开发的灵活性和可扩展性较差,跨平台性能不够友好。
技术实现思路
本专利技术的目的在于克服现有技术的不足,提供一种web后端开发框架及其构建方法。本专利技术的目的是通过以下技术方案来实现的:一种web后端开发框架,包括基础功能模块,用于集成web后端开发技术,以common包为基础,构建web后端开发的基础功能模块,便于开发其它功能模块;组件功能模块,用于以组件的方式提供额外的、可定制化的功能,功能完成以后都以单独的子模块的形式存在,便于开发人员在开发中引入使用;微服务功能模块,用于在基础功能模块的基础上,以app-core模块为核心,扩展其它微服务子模块。具体的,所述基础功能模块具体包括动态数据源模块、Druid连接池模块、缓存模块、日志管理模块、异步处理模块、全局异常处理模块、ID生成器模块、自动审计模块、分页插件模块和慢查询追踪模块。具体的,所述组件功能模块中的组件包括接口配置组件、文件上传组件、工作流组件、定时任务组件和系统管理组件。具体的,所述微服务功能模块中的功能包括注册中心、网关、配置中心、限流、统一认证、分布式事务和统一监控。具体的,所述common包具体包括common-api、common-core、common-jpa、common-mybatis、common-security-core、common-security-client和common-security-server。具体的,所述动态数据源模块的内部提供一个map,以map的key存储实际连接数据库的别名,以vlaue存储实际数据源。具体的,所述异步处理模块包括有界线程池和异步注解;所述有界线程池用于在项目启动时,根据操作系统的CPU核心数自动选择最优的线程数;所述异步注解用于标注异步处理过程中的操作。具体的,所述全局异常处理模块中包括统一异常类KeepException,用于在开发接口的过程中,自动捕获rest层抛出的异常。具体的,所述ID生成器模块以雪花算法作为模块的ID生成策略,模块生成的ID包括首位无效符、时间戳差值、机器编码和序列号。一种web后端开发框架的构建方法,方法包括以下步骤:S1,设计框架的基础功能模块架构,根据基础功能模块架构选定基础功能进行开发,并封装形成框架的基础构件库;S2,设计组件功能模块架构,根据组件功能模块架构开发组件功能并进行封装,形成框架的组件库;S3,设计微服务功能模块架构,以app-core模块为核心扩展开发部署框架的微服务功能,同时封装形成框架的微服务功能库;S4,根据基础构件库、组件库和微服务功能库,整合形成web后端开发框架。本专利技术的有益效果:1、易用性:框架功能划分明确,所有功能都提供相应的API或配置文档,并且尽可能的简化配置。在使用上也符合开发人员的编程习惯,能够让开发人员快速的上手。各个技术在集成到框架的时候已经解决了集成问题,开发人员无需考虑,只需要使用即可;2、开发效率性:常用的功能和技术都做了二次封装,大大提高了开发效率;3、全面性:功能涵盖90%以上的互联网热门技术,开发人员不需要自己来集成相关技术了,只需要找到自己需要的技术使用即可;4、灵活性:开发人员可以对需要的技术进行自由选择,只需要在工程中做相应的maven引入即可;5、可扩展性:框架使用maven进行模块管理,使用spring进行基础构建的开发。可以灵活的集成第三方框架,也可以对现有的功能通过组件的方式进行扩展;6、跨平台性:采用JAVA开发,部署支持跨平台。附图说明图1是本专利技术的开发框架的功能架构图。图2是本专利技术的基础功能模块架构图。图3是本专利技术的组件功能模块架构图。图4是本专利技术的微服务功能模块架构图。图5是本专利技术的web后端开发框架的构建方法流程图。具体实施方式为了对本专利技术的技术特征、目的和效果有更加清楚的理解,现对照附图说明本专利技术的具体实施方式。本实施例中,如图1所示,一种web后端开发框架,其功能架构包括基础功能模块、组件功能模块和微服务功能模块。基础功能模块用于集成web后端开发技术,以common包为基础,构建web后端开发的基础功能模块,便于开发其它功能模块。组件功能模块用于以组件的方式提供额外的、可定制化的功能,功能完成以后都以单独的子模块的形式存在,便于开发人员在开发中引入使用。微服务功能模块用于在基础功能模块的基础上,以app-core模块为核心,扩展其它微服务子模块。本实施例中,基础功能模块的架构设计如图2所示,基础功能模块一共分为7个包:common-api、common-core、common-jpa、common-mybatis、common-security-core、common-security-client和common-security-server。common-api和common-core是基础部分,其中common-api中定义了一些基础的DTO、枚举、常量、异常信息等。common-core依赖于common-api,common-core中提供了动态数据源、jdbc连接池、缓存、日志、异步、全局异常处理等功能。common-jpa和common-mybatis是框架的ORM能力部分,在开发中,可以2选1。其中common-jpa中运用的是JPA技术,common-mybatis中运用的是Mybatis和MybatisPlus技术。两个包都提供了自己的ID生成器和自动审计功能,common-mybatis中还提供了分页功能以及慢查询追踪功能。common-security-core、common-security-client、common-security-server是框架的认证基础部分,是基于oauth2协议做的认证。其中common-security-core是common-security-client和common-security-server的基础,提供了Token解析、Token转换、CookieToken解析等功能。common-security-client主要提供资源服务器的配置以及授权等功能,common-security-server本文档来自技高网...

【技术保护点】
1.一种web后端开发框架,其特征在于,包括/n基础功能模块,用于集成web后端开发技术,以common包为基础,构建web后端开发的基础功能模块,便于开发其它功能模块;/n组件功能模块,用于以组件的方式提供额外的、可定制化的功能,功能完成以后都以单独的子模块的形式存在,便于开发人员在开发中引入使用;/n微服务功能模块,用于在基础功能模块的基础上,以app-core模块为核心,扩展其它微服务子模块。/n

【技术特征摘要】
1.一种web后端开发框架,其特征在于,包括
基础功能模块,用于集成web后端开发技术,以common包为基础,构建web后端开发的基础功能模块,便于开发其它功能模块;
组件功能模块,用于以组件的方式提供额外的、可定制化的功能,功能完成以后都以单独的子模块的形式存在,便于开发人员在开发中引入使用;
微服务功能模块,用于在基础功能模块的基础上,以app-core模块为核心,扩展其它微服务子模块。


2.根据权利要求1所述的一种web后端开发框架,其特征在于,所述基础功能模块具体包括动态数据源模块、Druid连接池模块、缓存模块、日志管理模块、异步处理模块、全局异常处理模块、ID生成器模块、自动审计模块、分页插件模块和慢查询追踪模块。


3.根据权利要求1所述的一种web后端开发框架,其特征在于,所述组件功能模块中的组件包括接口配置组件、文件上传组件、工作流组件、定时任务组件和系统管理组件。


4.根据权利要求1所述的一种web后端开发框架,其特征在于,所述微服务功能模块中的功能包括注册中心、网关、配置中心、限流、统一认证、分布式事务和统一监控。


5.根据权利要求1所述的一种web后端开发框架,其特征在于,所述common包具体包括common-api、common-core、common-jpa、common-mybatis、common-security-core、common-security-client和common-security-s...

【专利技术属性】
技术研发人员:杨岗王波廖文绪周正斌
申请(专利权)人:创意信息技术股份有限公司
类型:发明
国别省市:四川;51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1