首页 / 专利库 / 软件 / 框架 / 一种基于数据库注释的代码自动生成系统及构建方法

一种基于数据库注释的代码自动生成系统及构建方法

阅读:308发布:2024-02-18

专利汇可以提供一种基于数据库注释的代码自动生成系统及构建方法专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种基于 数据库 注释的代码自动生成系统及构建方法,涉及 计算机程序 技术领域,无需额外新建数据表或配置文件,即可通过数据库本身的注释实现数据模型描述的存储与读取,具体方案为:包括以下步骤:S1:建立代码生成平台 框架 ;S2:依照建立的代码生成平台框架的类型选取语法规则;S3:根据S2中选取的语法规则为相应数据表和相应字段添加注释;S4:选取目标系统;S5:根据S4中选取的目标系统对S3中的注释进行扫描,检测是否合法;S6:将代码生成平台和目标系统融合,得到代码生成系统。通过使用本方法,降低了生成过程对代码自动生成工具60%的依赖程度,节省了开发人员对于自动生成工具30%的学习成本。,下面是一种基于数据库注释的代码自动生成系统及构建方法专利的具体信息内容。

1.一种基于数据库注释的代码自动生成系统构建方法,其特征在于,包括以下步骤:
S1:建立代码生成平台框架
S2:依照建立的代码生成平台框架的类型选取语法规则;
S3:根据S2中选取的语法规则为相应数据表和相应字段添加注释;
S4:选取目标系统;
S5:根据S4中选取的目标系统对S3中的注释进行扫描,检测是否合法;
S6:将代码生成平台和目标系统融合,得到代码生成系统。
2.一种基于数据库注释的代码自动生成系统,基于权利要求1所述的构建方法,其特征在于,包括项目信息自动配置模、项目自动部署模块、自动域名解析模块、数据库自动创建模块、数据库专有账号自动创建模块、项目文件管理FTP账号自动创建模块、FTP用户权限自动分配模块、第三方库自动引入模块、自定义框架生成模块、后台管理模块自动生成模块、数据接口模块自动生成模块、微信开发模块自动生成模块、微信SDK自动引入模块、户模块自动生成模块、权限控制模块整合模块、系统操作日志模块整合模块和微信基础功能整合模块。
3.根据权利要求2所述的基于数据库注释的代码自动生成系统,其特征在于,所述项目信息自动配置模块用于完成项目各项信息的自动配置,包括项目中文名称、项目英文名称、项目后台英文名称、项目域名、数据库主机地址、数据库名称、数据库用户名、数据库用户密码、数据表前缀、FTP用户、FTP密码。
4.根据权利要求2所述的基于数据库注释的代码自动生成系统,其特征在于,所述项目自动部署模块用于项目目录创建、虚拟主机文件自动创建与写入和服务器进程的重新启动。
5.根据权利要求2所述的基于数据库注释的代码自动生成系统,其特征在于,所述数据库自动创建模块用于数据库本身的自动创建、数据库用户的自动创建和数据库用户的权限自动分配。
6.根据权利要求2所述的基于数据库注释的代码自动生成系统,其特征在于,所述项目FTP管理自动配置模块用于项目专用FTP账户的自动创建、专有FTP账户的密码自动设置、专用FTP账户对项目目录的权限设置、FTP用户在操作系统中的注册和FTP模式与代码生成模式的自动切换。
7.根据权利要求2所述的基于数据库注释的代码自动生成系统,其特征在于,所述自定义项目框架生成模块用于框架层级目录创建、项目配置文件创建与写入和项目入口文件创建与写入。
8.根据权利要求2所述的基于数据库注释的代码自动生成系统,其特征在于,所述后台管理模块生成模块用于目录创建、管理布局创建与写入、第三方程序库引入、第三方静态资源库引入、数据模型文件创建与写入、表单文件创建与写入、控制器文件创建与写入、视图文件创建与写入、视图资源文件创建与写入和数据权限检查器创建。

说明书全文

一种基于数据库注释的代码自动生成系统及构建方法

技术领域

[0001] 本发明涉及计算机程序技术领域,更具体地说,它涉及一种基于数据库注释的代码自动生成系统及构建方法。

背景技术

[0002] 代码自动生产的意义在于四方面:
[0003] 第一,对常规代码和数据库进行高度抽象,减少开发人员复制粘贴式的机械式重复工作,能让机器自动完成的不让人去完成,提高开发效率。代码自动生产的目标不是机器取代人,而是让机器与人在各自所擅长的领域发挥自身优势。人和机器在不同能领域的优势是不同的,人应在自身所擅长的领域发挥作用,因此开发人员的重点应放在需要发挥人主观能动性和复杂逻辑思维的部分。
[0004] 第二,开发技术的积累与持续上升。软件项目开发往往碰到的问题是,随着项目数量的积累,项目开发质量和开发平过度依赖于开发人员本身,而开发人员的频繁人事变动对项目团队的持续提升往往造成致命影响。代码自动生产的本质思想在于程序开发的经验转换为程序代码,也就是说只要开发经验是可描述的,那么总可以通过程序语言对其中的逻辑进行实现,达到从人员经验到机器代码的转换。随着时间和项目的积累,越来越多的人员开发经验转化为机器代码,这就极大解除了项目团队对人员的过度依赖。项目团队通过保证代码生产库本身的持续补充与创新,可大大弥补人员变动造成的险。
[0005] 第三,代码的高度正确性和规范性。人员有犯错的可能性,而对于机器代码的执行,只要在机器代码逻辑是正确的前提下,可以认为机器不存在犯错的可能性。机器严格遵循代码逻辑,高标准、统一化、高效率地生成代码,这是对于人类这方面能力的极大补充。
[0006] 第四,开发人员的浸入式培训。由于开发人员在自动生产的代码基础上进行开发,会持续关注所自动生产代码本身的技术方法和编程规范,并在后续开发中适应这些技术方法和编程规范,对开发人员自身的能力提升和项目各模的规范性一致性都有重要促进作用。
[0007] 现有技术中存在的问题:必须根据代码自动生成工具自身的规范或规则,建立额外的数据表或配置文件。必须强制遵循代码自动生成工具所设定的开发流程规范,必需通过代码生成工具完成数据库设计或根据已有数据库结构重新建立描述信息,无法适应已有数据库,开发人员对代码自动生成工具需要较高的的学习成本。

发明内容

[0008] 为解决上述技术问题,本发明提供一种基于数据库注释的代码自动生成系统及构建方法,代码自动生成系统无需额外新建数据表或配置文件,即可通过数据库本身的注释(数据表注视和字段注释)实现数据模型描述的存储与读取。
[0009] 本发明的上述技术目的是通过以下技术方案得以实现的:
[0010] 一种基于数据库注释的代码自动生成系统及构建方法,包括以下步骤:
[0011] S1:建立代码生成平台框架
[0012] S2:依照建立的代码生成平台框架的类型选取语法规则;
[0013] S3:根据S2中选取的语法规则为相应数据表和相应字段添加注释;
[0014] S4:选取目标系统;
[0015] S5:根据S4中选取的目标系统对S3中的注释进行扫描,检测是否合法;
[0016] S6:将代码生成平台和目标系统融合,得到代码生成系统。
[0017] 采用上述技术方案,首先选取一种计算机语言建立一个代码生成平台,按照选取的计算机语言的语法规则,对相应数据表和相应字段添加注释,其中,可使用JSON格式进行编写,以实现复杂数据结构描述信息的存储,数据接口主要以JSON、XML等常用数据交换格式标准为主,由于JSON数据格式的轻量化特点,已经逐渐成为数据接口格式的主要选择。生成的代码生成平台可作为一个完整的系统,在其他平台的目标系统对代码生成平台进行扫描,并用于各个不同的平台,在检测为合法兼容后,即可用于该平台,在前期调试一次后,代码生成平台与目标系统融合,在后续操作中,通过相应平台,即可使用代码、注释自动生成的功能。
[0018] 上述技术方案中,将代码自动生成工具所依赖的数据模型信息直接存储于数据库本身的注释中,无需额外新建数据表或配置文件,即可通过数据库本身的注释(数据表注视和字段注释)实现数据模型描述的存储与读取,降低了生成过程对代码自动生成工具60%的依赖程度,节省了开发人员对于自动生成工具30%的学习成本。
[0019] 一种基于数据库注释的代码自动生成系统,基于上述的构建方法,包括项目信息自动配置模块、项目自动部署模块、自动域名解析模块、数据库自动创建模块、数据库专有账号自动创建模块、项目文件管理FTP账号自动创建模块、FTP用户权限自动分配模块、第三方库自动引入模块、自定义框架生成模块、后台管理模块自动生成模块、数据接口模块自动生成模块、微信开发模块自动生成模块、微信SDK自动引入模块、户模块自动生成模块、权限控制模块整合模块、系统操作日志模块整合模块和微信基础功能整合模块。
[0020] 作为一种优选方案,项目信息自动配置模块用于完成项目各项信息的自动配置,包括项目中文名称、项目英文名称、项目后台英文名称、项目域名、数据库主机地址、数据库名称、数据库用户名、数据库用户密码、数据表前缀、FTP用户、FTP密码。
[0021] 作为一种优选方案,项目自动部署模块用于项目目录创建、虚拟主机文件自动创建与写入和服务器进程的重新启动。
[0022] 作为一种优选方案,数据库自动创建模块用于数据库本身的自动创建、数据库用户的自动创建和数据库用户的权限自动分配。
[0023] 作为一种优选方案,项目FTP管理自动配置模块用于项目专用FTP账户的自动创建、专有FTP账户的密码自动设置、专用FTP账户对项目目录的权限设置、FTP用户在操作系统中的注册和FTP模式与代码生成模式的自动切换。
[0024] 作为一种优选方案,自定义项目框架生成模块用于框架层级目录创建、项目配置文件创建与写入和项目入口文件创建与写入。
[0025] 作为一种优选方案,后台管理模块生成模块用于目录创建、管理布局创建与写入、第三方程序库引入、第三方静态资源库引入、数据模型文件创建与写入、表单文件创建与写入、控制器文件创建与写入、视图文件创建与写入、视图资源文件创建与写入和数据权限检查器创建。
[0026] 综上所述,本发明具有以下有益效果:
[0027] 通过使用本方法,代码自动生成工具无需额外新建数据表或配置文件,即可通过数据库本身的注释(数据表注视和字段注释)实现数据模型描述的存储与读取,降低了生成过程对代码自动生成工具60%的依赖程度,节省了开发人员对于自动生成工具30%的学习成本。不仅增强了数据库本身结构的自描述性和语义化程度,而且解除了传统自动生成工具对数据库设计过程的限制。

具体实施方式

[0028] 以下对本发明作进一步详细说明。
[0029] 实施例1:
[0030] 一种基于数据库注释的代码自动生成系统及构建方法,包括以下步骤:
[0031] S1:建立代码生成平台框架;
[0032] S2:依照建立的代码生成平台框架的类型选取语法规则;
[0033] S3:根据S2中选取的语法规则为相应数据表和相应字段添加注释;
[0034] S4:选取目标系统;
[0035] S5:根据S4中选取的目标系统对S3中的注释进行扫描,检测是否合法;
[0036] S6:将代码生成平台和目标系统融合,得到代码生成系统。
[0037] 采用上述实施例,首先选取一种计算机语言建立一个代码生成平台,按照选取的计算机语言的语法规则,对相应数据表和相应字段添加注释,其中,可使用JSON格式进行编写,以实现复杂数据结构描述信息的存储,数据接口主要以JSON、XML等常用数据交换格式标准为主,由于JSON数据格式的轻量化特点,已经逐渐成为数据接口格式的主要选择。生成的代码生成平台可作为一个完整的系统,在其他平台的目标系统对代码生成平台进行扫描,并用于各个不同的平台,在检测为合法兼容后,即可用于该平台,在前期调试一次后,代码生成平台与目标系统融合,在后续操作中,通过相应平台,即可使用代码、注释自动生成的功能。
[0038] 实施例1中,将代码自动生成工具所依赖的数据模型信息直接存储于数据库本身的注释中,无需额外新建数据表或配置文件,即可通过数据库本身的注释(数据表注视和字段注释)实现数据模型描述的存储与读取,降低了生成过程对代码自动生成工具60%的依赖程度,节省了开发人员对于自动生成工具30%的学习成本。
[0039]
[0040]
[0041] 表1
[0042]
[0043]
[0044] 表2
[0045] 其中:表1为字段注释数据模型语义定义表;表2为数据表注释数据模型语义定义表。
[0046] 实施例2:
[0047] 一种基于数据库注释的代码自动生成系统,基于上述的构建方法,包括项目信息自动配置模块、项目自动部署模块、自动域名解析模块、数据库自动创建模块、数据库专有账号自动创建模块、项目文件管理FTP账号自动创建模块、FTP用户权限自动分配模块、第三方库自动引入模块、自定义框架生成模块、后台管理模块自动生成模块、数据接口模块自动生成模块、微信开发模块自动生成模块、微信SDK自动引入模块、门户模块自动生成模块、权限控制模块整合模块、系统操作日志模块整合模块和微信基础功能整合模块。
[0048] 项目信息自动配置模块:
[0049] 新建项目设置唯一标识与项目名称后,即按照系统约定完成项目各项信息的自动配置,包括项目中文名称、项目英文名称、项目后台英文名称、项目域名、数据库主机地址、数据库名称、数据库用户名、数据库用户密码、数据表前缀、FTP用户、FTP密码,其中数据库用户密码与FTP密码相同,均采用随机方式生成12位字母与数字组合。项目名称、数据库名称、数据库用户、FTP用户、二级域名地址等五项信息均按照系统约定保持严格一致,方便项目管理人员与开发人员的信息管理。
[0050] 项目自动部署模块:
[0051] 自动部署包括项目目录创建、虚拟主机文件自动创建与写入、服务器进程的重新启动。目录创建通过调用系统MKDIR实现,只需保证项目默认存储目录具有可写权限,虚拟主机文件VHOSTS.CONF自动写入至APACHE配置的虚拟主机配置文件扩展目录中,其中的配置项包括项目目录绝对路径、项目对应域名、项目对应域名别名(可配置多项)、项目访问日志存储位置、项目错误日志存储位置、项目主目录的权限配置等。项目主目录与虚拟主机配置文件自动写入成功后,即调用HTTPD服务器进程的重启动操作,至此项目自动部署即完成。
[0052] 自动域名解析模块:
[0053] 自动域名解析通过DNSPOD接口完成,系统将根据项目唯一标识自动发送A记录信息至DNSPOD授权接口,完成域名的自动解析,域名解析可实时完成。通过域名解析模块,可完成自定义域名的解析,并完成VHOSTS中SERVER ALIAS的自动添加。
[0054] 数据库自动创建模块:
[0055] 数据库自动创建包括数据库本身的自动创建、数据库用户的自动创建、数据库用户的权限自动分配。数据库本身的自动创建通过CREATE DATABASE命令完成,默认数据库编码采用UT8格式。数据库用户名称按照系统约定自动设置为项目唯一标识,并通过GRANT语句设置数据库用户密码及该项目数据库的各项操作权限,通过FLUSH语句完成权限的立即生效。
[0056] 项目FTP管理自动配置模块:
[0057] 项目FTP管理自动配置包括项目专用FTP账户的自动创建、专有FTP账户的密码自动设置、专用FTP账户对项目目录的权限设置、FTP用户在操作系统中的注册、FTP模式与代码生成模式的自动切换。
[0058] 专用FTP账户名称按照系统约定自动设置为项目唯一标识,并自动归属为FTPGROUP用户组,由于安全因素的考虑,禁用FTP用户账户的SSH权限,设置FTP账户的主目录。FTP用户密码设置为项目创建时所自动生成的随机密码,此处密码与数据库用户密码默认相同。FTP账户对项目目录的权限配置通过CHMOD和CHOWN命令完成,此处需注意通过CHMOD命令去除FTP用户对项目主目录的可写权限。
[0059] 完成账户创建与权限配置后,通过重启VSFTPD进程完成FTP账号与相应权限的立即生效。
[0060] 自定义项目框架生成模块:
[0061] 设置项目所选用技术框架,本实施例中选用Zend Framework作为项目基础框架。框架生成主要包括框架层级目录创建、项目配置文件创建与写入、项目入口文件创建与写入等。由于本实施例所选用框架为Zend Framework,因此仅对Zend Framework框架生成所涉及操作进行介绍。
[0062] Zend Framework框架二级目录主要包括application、public、library,其中application为应用程序目录,public目录为外部资源目录,library为第三方库目录。
[0063] 后台管理模块生成模块:
[0064] 后台管理模块的自动生成为核心功能之一,通过对常规管理模块的高度抽象,并兼顾后期自定义开发的开发灵活性,可为项目管理模块的开发提供高标准规范,并节省大量开发时间成本。下面针对本实施例所选用的Zend Framework对管理模块代码生成进行详细介绍。
[0065] Zend Framework的管理模块生成主要包括目录创建、管理布局创建与写入、第三方程序库引入、第三方静态资源库引入、数据模型文件创建与写入、表单文件创建与写入、控制器文件创建与写入、视图文件创建与写入、视图资源文件创建与写入、数据权限检查器创建等。
[0066] 管理布局默认为layout-admin.phtml,其代码模板存储于框架资源对应目录下,通过设置多个占位符,以实现模板动态部分的替换,包括项目基本信息中的项目后台中文名称、项目后台英文名称、左侧二级联动管理菜单,其中左侧二级联动管理菜单按照系统约定自动读取数据库各表信息完成。
[0067] 第三方程序库除Zend库外,还包括PHPExcel、PHPWord、SZKJ、WXMCRPT等,通过CP命令完成框架资源目录到项目目录的引入。
[0068] 第三方静态资源库存放于public/libs目录下,涵盖WEB前端开发中所涉及的大部分常用库,包括BOOTSTRAP(响应式设计前端框架)、FLATUI(基于BOOTSTRAP的CSS前端框架)、MUI(HTML5跨平台前端框架)、WEUI(微信官方前端框架)、VALIDAE(基于JQURERY的JS预校验库)、BOOTSTRAP-SELECT(多功能下拉组件库)、DATETIMEPICKER(日期时间控件)、FONT-AWSOME(基于CSS字体的图标库)、TREEGRID(树级表格库框架)、BOOTSTRAP-SWITCH(基于BOOTSTRAP的切换控件)、UEDITOR(多功能富文本编辑器)、ZTREE(树状控件)。
[0069] 数据模型文件主要完成包括所映射数据表名称的设置、新增表单数据处理、更新表单数据处理等。
[0070] 表单文件主要包括各字段所对应表格控件的自动配置,目前支持的控件类型主要包括普通文本型控件、日期选择型控件、文件上传型控件。控件类型的设置规则为:主键字段自动忽略不生成表单控件;DATE及DATETIME类型字段生成日期选择型控件;字段注释JSON数据中若设置为UPLOAD,则使用文件上传控件;其它情况下,均使用普通文本型控件。对于表单控件的外观设置,自动结合BOOTSTRAP栅格系统,为控件默认设置为大屏3格、中屏
4格、中小屏5格、小屏12格,通过JS方式实现该占宽配置的解析操作。对于表单控件的自动验证,除文件上传控件外,其它控件均在专有验证配置文件中进行注册,开发阶段可根据需要进行灵活调整。
[0071] 控制器文件包括控制器初始化、管理列表、数据导入、数据导出、数据详情查看、数据统计、数据添加、数据编辑、数据删除等常用动作,其中管理列表和数据导出共用获取查询条件动作。管理列表包括多字段组合查询、列表数据多选全选反选、单字段正序倒序排列、多字段组合式排序、批量删除等丰富功能。数据导入页面提供数据导入模板的自动生成与下载,模板采用EXCEL方式,方便用户根据需要导入各类数据,实现大量数据的批量化导入操作。数据导出可提供用户导出所查询数据为EXCEL文件的功能。数据统计自动按各字段统计数据占比情况,并给出占比图标。
[0072] 视图相关程序文件对应控制器所列的各项动作,包括管理列表页面视图、数据导入页面视图、数据详情页面视图、数据统计页面视图、数据添加页面视图、数据编辑页面视图等六类视图,各类视图包括PHTML文件、页面专有CSS资源文件、页面专有JS文件,其中页面专有的CSS与JS资源文件均在PHTML顶部通过助手完成自动引入。
[0073] 数据权限检查器是本项目为实现数据权限规则设置机制而设计的类文件。该数据权限检查器的特色在于类的动态映射、方法的动态映射、动作名称的同名约定。类的动态映射使得权限控制入口可动态引入当前请求所对应操作的数据权限检查器,方法的动态与动作名称的同名约定使得权限控制入口可根据当前请求自动调用数据权限检查器中的同名方法。另外,数据权限检查器的设置配置于数据库系统资源数据表中,权限控制系统的可配置性非常良好。
[0074] 数据接口模块生成模块:
[0075] 随着移动互联网的普及,手机APP应用、微信应用、HTML5应用等移动应用越来越成为一体化解决方案中不可或缺的重要组成部分。而对于这些移动应用的扩展,系统数据接口的开发成为必需。目前,数据接口主要以JSON、XML等常用数据交换格式标准为主,由于JSON数据格式的轻量化特点,已经逐渐成为数据接口格式的主要选择。在本平台设计阶段,在移动应用原型设计完成后的数据接口设计中,通过大量的数据接口需求分析,抽象出五类最常用的数据标准接口,包括数据列表、数据详情、数据添加、数据删除、数据更新。当然,对于实际各功能模块,这五类接口不一定满足所有需求,或会产生冗余,但五类标准接口的自动生成却具有巨大优势,一方面提高了数据接口开发工作效率,基础代码无需重复工作,另一方面极大提升了项目整体的规范性,包括命名规范、技术实现规范等,对团队协作的协同性起到了重要的促进作用。
[0076] 数据接口形式均采用JSON格式,客户端采用HTTP POST方式进行调用,传入参数采用POST键值对数据形式,返回参数包括两个必选参数CODE(消息代码)和MSG(消息文本),一个可选参数DATA(附加数据,如数据列表接口)。
[0077] 微信模块自动生成模块:
[0078] 微信作为一款国内市场占有量极高的即时通讯手机应用软件,已经与人们的日常工作和生活紧密联系在一起。因此在系统设计阶段,将微信平台的建设与开发作为项目整体的重要组成部分。此处所指的微信开发是指基于微信公众平台的开发,其实质为移动端的WEB应用开发,而它与常规移动WEB移动开发的区别在于置于微信内置浏览器中的网页,通过微信获得微信本身作为手机应用的硬件能力,而微信公众平台的内置功能如微信菜单、微信消息回复等,也可以通过平台服务器与微信服务器的接口交互实现,因而可以认为微信是介于手机浏览器WEB应用与手机APP应用之间的一种中间开发模式,这种开发模式在开发成本与硬件操作能力方面取得了非常好的平衡。也就是说,一方面,微信公众平台应用可以获得WEB应用的天然优势,如跨平台、即时更新等;另一方面,微信公众平台借助微信手机应用这个媒介,可接入硬件能力,弥补了常规WEB应用在硬件操作能力方面的不足。
[0079] 为规范微信公众平台开发并提升微信公众平台的用户体验,微信开放了一套官方CSS前端框架,该CSS框架组件丰富,色彩风格、交互体验与微信原生应用高度统一,因此非常适合作为微信公众平台开发的前端开发框架。
[0080] 针对微信公众平台开发,本系统提供了微信模块的自动生成,其原理仍是基于数据库结构设计,通过对常用模块功能的抽象,进行代码生成。所生成模块自动引入前端框架WEUI,使得开发人员可在此基础上迅速开发应用。
[0081] 门户模块自动生成模块:
[0082] 门户各模块是信息化主要服务窗口。门户各模块功能个性化较强,因此难以抽象统一的功能模型或页面模型。因此,在设计门户部分的自动生成机制时,目标就在于尽量减少开发过程中的固定工作,如静态资源的引入、目录结构的创建等。同时,设计了自定义动作生成器,开发人员可通过自定义动作生成器配置所需新增动作的动作名称、动作标识等,即可自动完成目录结构创建、程序文件创建、静态资源引入等,开发人员仅需关注程序逻辑开发即可。
[0083] 权限控制自动生成模块:
[0084] 信息化平台涉及到多类用户色,因此是一个多角色用多户的信息系统,本平台拟选用基于角色的用户权限控制实现。对于用户权限控制的涉及,在本实施例用户权限章节有详细介绍,此处不再赘述,仅针对用户权限控制代码的自动生成进行介绍。
[0085] 权限控制系统的实现包括程序代码和数据库两部分。针对程序代码的自动生成,主要包括权限控制代码目录的自动创建、代码文件的自动创建;针对数据库部分的自动生成,则包括与权限控制相关的数据库表结构自动创建和数据库表数据的自动插入。由于数据库表结构是固定的,因此选用导入SQL语句文件的方式实现,而对于表数据,则分为固定数据部分和系统相关数据部分。固定数据指的是数据权限模块本身涉及到的权限数据,而系统相关数据则是根据数据库中各业务数据表而来,如各模块动作数据、角色与动作间的映射数据等。系统往往均设置超级管理员角色,该角色拥有系统所有开发模块的访问权限,因此自动生成中会将超级管理员角色与系统所有模块动作的映射关系添加至角色动作映射数据表中。
[0086] 用户权限控制可分为面向功能模块层面的权限控制和面向具体数据的权限控制,即功能模块权限控制和数据权限控制,下面介绍数据权限控制。在上文后台管理模块自动生成中,对数据权限检查器的自动创建与写入做过详细介绍。数据权限检查器在自动创建后,并未与功能模块中的各模块动作进行关联,若要使数据权限检查器生效,需要在权限控制的自动生成中完成此关联,即模块动作数据表中的数据权限检查器字段中填入检查器所对应的类名称,该名称仍然采用系统约定形式进行命名,开发人员也可根据需要进行自定义配置。
[0087] 系统日志自动生成模块:
[0088] 系统日志在系统安全监控和系统后期维护中,起到至关重要的作用。系统日志从用途方面可分为用户操作日志和系统调试日志两部分。通过用户操作日志,可监控和查询各用户在系统中的所有操作历史记录,包括操作时间、操作用户、操作详情、操作用户真实IP等。通过系统调试日志,可记录系统重要事件,如系统错误、自定义事件等,在系统发生异常情况时,由运维人员或开发人员通过详细的系统调试日志对系统异常情况产生的原因进行排查,以进一步解决问题。为方便不同情景下的查询,同时提升日志系统的鲁棒性,自动生成的系统日志模块会将用户操作日志和系统调试日志以文本实施例件和数据库两种存储方式进行存储。
[0089] 微信基础功能自动生成模块:
[0090] 上文对微信模块的自动生成进行了详细介绍,微信模块重点关注的是与系统各业务数据表相关的功能,而此处所指的微信基础功能则是类似微信用户系统、微信参数配置、微信自定义菜单配置、微信关键词消息回复、微信支付、微信客服等。
[0091] 微信基础功能的自动生成主要包括程序代码的自动生成和相关数据表结构及表数据的自动生成。程序代码的自动生成包括各相关目录结构的创建、各相关数据模型文件、相关控制器文件、相关视图文件的生成。相关数据表包括微信用户记录数据表、微信参数配置数据表、微信自定义菜单数据表、微信关键词信息数据表、微信关键词回复内容数据表、微信支付流水记录数据表、微信客服人员信息数据表、微信客户消息记录数据表等,这些表的数据表结构均通过SQL语句文件存储,通过SQL语句文件的执行即可完成这些数据表的自动生成。
[0092] 本具体实施例仅仅是对本发明的解释,其并不是对本发明的限制,本领域技术人员在阅读完本说明书后可以根据需要对本实施例做出没有创造性贡献的修改,但只要在本发明的权利要求范围内都受到专利法的保护。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈