[发明专利]基于配置文件和惯性原则的低代码的开发框架在审
申请号: | 202010749308.1 | 申请日: | 2020-08-02 |
公开(公告)号: | CN111880782A | 公开(公告)日: | 2020-11-03 |
发明(设计)人: | 张文豪 | 申请(专利权)人: | 张文豪 |
主分类号: | G06F8/33 | 分类号: | G06F8/33;G06F9/48;G06F9/54 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 515041 广东省*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 配置文件 惯性 原则 代码 开发 框架 | ||
1.一种基于配置文件和惯性原则的低代码的开发框架,基于中间件技术和事件机制相结合,并通过依赖注入容器管理依赖关系,同时还包括一个基于配置文件的高复用的表单和数据表格生成器。
2.根据权利要求1所述的基于配置文件和惯性原则的低代码的开发框架,是指该开发框架的控制器、模型、表单、数据表格等都可以通过配置文件来完成,甚至可以在没有配置文件的情况下,使用惯性原则的默认数据,自动完成通用的程序功能的开发。
3.根据权利要求1所述的基于中间件技术和事件机制相结合,是指系统接收到用户请求后,经过中间件配置文件中配置的中间件依次进行处理,最后返回响应结果给用户;每个中间件组件从依赖注入容器获得事件管理器,在中间件程序代码相应的位置预埋相应事件触发点,然后可通过事件的配置文件配置相应事件的处理程序,执行到相应的事件触发点时,就会转去执行事件配置文件设置的事件处理程序。
4.根据权利要求1所述的基于中间件技术和事件机制相结合,主要包括了:语言本地化中间件、路由中间件、访问控制中间件、模块化的MVC中间件等核心中间件。
5.根据权利要求4所述的语言本地化中间件,是根据客户端的信息来正确判断应该加载的语言配置文件,又分为全局语言配置文件和模块语言配置文件,全局语言配置文件所有请求都会加载,模块语言配置文件是按需进行加载,同时提供了快捷方法提供给其他组件可以调用,实现全系统的语言本地化。
6.根据权利要求4所述的路由中间件,是基于正则表达式并采用将多条正则表达式组合成一条大的正则表达式进行路由的搜索,组合的正则表达式的路由搜索采用的是为每条路由加标记(*MARK:分支唯一标记)的方式,实现方案包括:
路由进行分类,使用正则表达式的路由为动态路由,没有使用正则表达式的路由为静态路由,静态路由采用哈希表查询进行匹配,动态路由需要对多条路由进行组合,并进行正则匹配,找到命中的路由;
每条动态路由的格式为:([域名1|域名2|.*?])_([请求方法1|请求方法2|.*?])_路由正则规则(*MARK:分支唯一标记),然后通过“(?|路由1|路由2|其他路由)”进行组合;
动态路由组合时需要进行分块处理,分块大小一般取动态路由总数的50%,同时不小于30并且不大于550;
可以开启持久存储路由的配置数据,每个进程只需加载一次路由配置数据;
可以开启LRU缓存路由命中结果,减少正则表达式匹配的次数,确保路由性能不受路由信息总数的影响;
路由命中的信息附加到请求对象的属性,其他中间件可以从请求对象的属性中获得路由命中的相关信息。
7.根据权利要求4所述的访问控制中间件,基于RBAC模型,实现方案包括:
每个模块的配置目录下包含一个权限访问配置文件;
权限访问配置文件格式一般分为“游客访问域”、“管理员访问域”、“用户访问域”三个访问域,也可以根据需求增加和减少访问域;
“游客访问域”下的权限,直接配置“控制器”=[“动作1”,“动作2”,...];
其他访问域下的权限,分为“登录公开”和“授权公开”,这里的“登录公开”由于在指定的访问域下,需要在相应的访问域下登录后,才拥有权限;“授权公开”需要登录用户拥有相应的授权,才拥有访问权限;
访问控制中间件初始化时,会将权限访问的配置信息处理为“访问权限串(模块名称/控制器名称/动作名称)”=[“访问域1”=“授权公开或者登录公开”,...];
访问权限检查时,从请求对象获得路由中间件附加的路由命中信息(模块名称、控制器名称、动作名称等等),再转化为访问权限串,进行统一的检查;如果是游客访问域,访问权限串存在就拥有权限;如果是其他访问域,需要检查登录状态,在登录的状态下,“登录公开”的权限直接拥有权限,“授权公开”的权限需要检查用户是否拥有该权限的授权,拥有授权才能访问;其他情况都是无权访问;
权限检查完成后,拥有权限访问的,再将请求对象传给下一个中间件继续处理,没有权限访问的,直接返回一个无权访问的响应。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于张文豪,未经张文豪许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010749308.1/1.html,转载请声明来源钻瓜专利网。