CN108509199A - 自动生成中文注释的方法、装置、设备及存储介质 - Google Patents
自动生成中文注释的方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN108509199A CN108509199A CN201810199487.9A CN201810199487A CN108509199A CN 108509199 A CN108509199 A CN 108509199A CN 201810199487 A CN201810199487 A CN 201810199487A CN 108509199 A CN108509199 A CN 108509199A
- Authority
- CN
- China
- Prior art keywords
- java
- chinese annotation
- chinese
- code
- name
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 53
- 238000003860 storage Methods 0.000 title claims abstract description 16
- 238000006243 chemical reaction Methods 0.000 claims abstract description 15
- 238000013507 mapping Methods 0.000 claims description 35
- 238000000605 extraction Methods 0.000 claims description 17
- 239000000284 extract Substances 0.000 claims description 13
- 238000011161 development Methods 0.000 abstract description 8
- 238000010586 diagram Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 238000009448 modified atmosphere packaging Methods 0.000 description 3
- 241000208340 Araliaceae Species 0.000 description 2
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 2
- 235000003140 Panax quinquefolius Nutrition 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 235000008434 ginseng Nutrition 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 230000014759 maintenance of location Effects 0.000 description 1
- 235000019837 monoammonium phosphate Nutrition 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/43—Checking; Contextual analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/73—Program documentation
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Library & Information Science (AREA)
- Machine Translation (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种自动生成中文注释的方法,所述方法包括以下步骤:根据接收到的指令创建数据库结构表,获取所述数据库结构表信息;当接收到转换指令时,提取对应的字段类型对应关系表,并根据提取到的字段类型对应关系表将所述结构表信息转换为JAVA实体类代码;通过所述结构表信息的对应关系,获取对应的中文注释名,并将提取到的中文注释名添加至转换得到的JAVA实体类代码中。本发明还公开了一种自动生成中文注释的装置、设备及计算机可读存储介质。本发明能够减少代码开发时间,提高代码开发效率,提高中文注释的准确性。
Description
技术领域
本发明涉及软件技术领域,尤其涉及一种自动生成中文注释的方法、装置、设备及计算机可读存储介质。
背景技术
随着人类各种应用以及硬件芯片技术的发展,各种应用软件越来越复杂和庞大,应用软件一般是由程序代码经过编译器转化的硬件处理单元能够识别的文件组成。复杂的软件需要开发大量的复杂的程序代码,因此程序代码管理问题己经变得日益突出,程序代码一般是文本格式,程序代码通常为了增加代码的可读性以及可维护性包含了注释,注释通常是对程序代码的解释和说明。注释和程序代码是作为一个整体存储和处理的。注释是程序代码可读性和可维护性的重要因素。
目前,用户在编写或通过数据库生成代码时,需要用户手动编写中文注释,从一定程度上导致人力资源浪费,并且会造成开发效率降低,影响中文注释的准确性。
发明内容
本发明的主要目的在于提出一种自动生成中文注释的方法、装置、设备及计算机可读存储介质,旨在解决现有的中文注释方法,会造成开发效率降低,影响中文注释的准确性,导致人力资源浪费的技术问题。
为实现上述目的,本发明提供一种自动生成中文注释的方法,所述方法包括:
根据接收到的指令创建数据库结构表,获取所述数据库结构表信息;
当接收到转换指令时,提取对应的字段类型对应关系表,并根据提取到的字段类型对应关系表将所述结构表信息转换为JAVA实体类代码;
通过所述结构表信息的对应关系,获取对应的中文注释名,并将提取到的中文注释名添加至转换得到的JAVA实体类代码中。
可选地,所述提取对应的字段类型对应关系表,并根据提取到的字段类型对应关系表将所述结构表信息转换为JAVA实体类代码的步骤包括:
提取对应的字段类型对应关系表,并通过所述对应关系表将结构表信息映射成JAVA类型;
将数据库表名转换成大驼峰或小驼峰的形式,作为JAVA实体类名称;
根据映射的JAVA类型,提取所述结构表信息对应的JAVA实体类代码,并将所述JAVA实体类名称填充至JAVA实体类代码中对应的位置。
可选地,所述将提取到的中文注释名添加至转换得到的JAVA实体类代码中的步骤包括:
按顺序遍历生成的代码,获取生成的JAVA实体类代码中的相同代码;
提取对应的中文注释名,当所述中文注释名对应的JAVA实体类代码存在相同代码时,将所述中文注释名添加至首次出现的代码中;
当所述中文注释名对应的JAVA实体类代码不存在相同代码时,将所述中文注释名添加至转换得到的JAVA实体类代码中。
可选地,所述将提取到的中文注释名添加至转换得到的JAVA实体类代码中的步骤还包括:
按顺序遍历各个显示页面代码,获取各个显示页面中的JAVA实体类代码中的相同代码;
提取显示页面中的JAVA实体类代码对应的中文注释名,当所述中文注释名对应的JAVA实体类代码存在相同代码时,将所述中文注释名添加至显示页面首次出现的代码中;
当所述中文注释名对应的JAVA实体类代码不存在相同代码时,将所述中文注释名添加至转换得到的JAVA实体类代码中。
可选地,所述通过所述结构表信息的对应关系,获取对应的中文注释名的步骤之前,还包括:
接收用户输入的中文注释名;
或,通过转换得到的JAVA实体类代码,获取多个包含所述JAVA实体类代码中文注释的数据库;
将转换得到的JAVA实体类代码与数据库中的JAVA实体类代码进行对比,根据对比结果提取对应的中文注释名。
可选地,所述将转换得到的JAVA实体类代码与数据库中的JAVA实体类代码进行对比,根据对比结果提取对应的中文注释名的步骤包括:
将转换得到的JAVA实体类代码与数据库中的JAVA实体类代码进行对比,获得代码之间的相似度;
将相似度最高的JAVA实体类代码的中文注释,作为转换得到的JAVA实体类代码的中文注释名。
可选地,所述通过转换得到的JAVA实体类代码,获取多个包含JAVA实体类代码中文注释的数据库的步骤之后,还包括:
获取各个数据库的采纳度;
将采纳度最高的数据库作为提取中文注释的数据库;
从所述提取中文注释的数据库中提取与转换得到的JAVA实体类代码对应的中文注释,作为转换得到的JAVA实体类代码的中文注释名。
此外,为实现上述目的,本发明还提供一种自动生成中文注释的装置,所述装置包括:
获取模块,用于根据接收到的指令创建数据库结构表,获取所述数据库结构表信息;
转换模块,用于当接收到转换指令时,提取对应的字段类型对应关系表,并根据提取到的字段类型对应关系表将所述结构表信息转换为JAVA实体类代码;
添加模块,用于通过所述结构表信息的对应关系,获取对应的中文注释名,并将提取到的中文注释名添加至转换得到的JAVA实体类代码中。
此外,为实现上述目的,本发明还提供一种自动生成中文注释的设备,所述自动生成中文注释的设备包括自动生成中文注释的程序,所述自动生成中文注释的程序被所述自动生成中文注释的设备执行时实现如上所述的自动生成中文注释的方法的步骤。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有自动生成中文注释的程序,所述自动生成中文注释的程序被处理器执行时实现如上所述的自动生成中文注释的方法的步骤。
本发明提出的自动生成中文注释的方法、装置、设备及计算机可读存储介质,根据接收到的指令创建数据库结构表,获取所述数据库结构表信息;当接收到转换指令时,提取对应的字段类型对应关系表,并根据提取到的字段类型对应关系表将所述结构表信息转换为JAVA实体类代码;通过所述结构表信息的对应关系,获取对应的中文注释名,并将提取到的中文注释名添加至转换得到的JAVA实体类代码中,通过上述方式,即可自动将中文注释添加至对应代码中,不需要用户手动进行添加,从而提高开发效率,并且提高中文注释的准确性。
附图说明
图1为本发明自动生成中文注释的方法第一实施例的流程示意图;
图2为本发明自动生成中文注释的方法第二实施例中提取对应的字段类型对应关系表,并根据提取到的字段类型对应关系表将所述结构表信息转换为JAVA实体类代码的步骤的细化流程示意图;
图3为本发明自动生成中文注释的方法第三实施例中将提取到的中文注释名添加至转换得到的JAVA实体类代码中的步骤的细化流程示意图;
图4为本发明自动生成中文注释的方法第四实施例中将提取到的中文注释名添加至转换得到的JAVA实体类代码中的步骤的细化流程示意图;
图5为本发明实施例方案涉及的硬件运行环境的设备结构示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例的主要解决方案是:根据接收到的指令创建数据库结构表,获取所述数据库结构表信息;当接收到转换指令时,提取对应的字段类型对应关系表,并根据提取到的字段类型对应关系表将所述结构表信息转换为JAVA实体类代码;通过所述结构表信息的对应关系,获取对应的中文注释名,并将提取到的中文注释名添加至转换得到的JAVA实体类代码中,通过上述方式,即可自动将中文注释添加至对应代码中,不需要用户手动进行添加,从而提高开发效率,并且提高中文注释的准确性。
本发明提供一种自动生成中文注释的方法。
参照图1,图1为本发明自动生成中文注释的方法第一实施例的流程示意图。
在本实施例中,该方法包括:
步骤S10,根据接收到的指令创建数据库结构表,获取所述数据库结构表信息;
在本实施例中,采用通过数据库结构表的方式生成JAVA实体类代码,不需要用户进行手动编写,提高代码编写的效率,具体可以通过PowerDesigner的Notes的可扩展标记语言(XML,Extensible MarkupLanguage)格式进行创建。并建立拓展查询文件,该拓展查询文件名唯一映射一预先创建的拓展查询文件,该拓展查询文件为多表关联查询的结构化查询语言(SQL Structured Query Language)信息文件。比如用于测试的表cust_test_info,获取所述数据库结构表信息,所述结构表信息可以包括表名、字段名、中文注释名、字段类型及字段长度等;比如假设字段名可以为test_name,字段类型为varchar(10),不为空为not null,中文注释名为“测试名称”。
步骤S20,当接收到转换指令时,提取对应的字段类型对应关系表,并根据提取到的字段类型对应关系表将所述结构表信息转换为JAVA实体类代码;
具体地,当接收到转化指令时,首先根据上述拓展查询文件名读取相应的拓展查询文件,其中,上述拓展查询文件中包含:update语句和拓展查询入参字段。转换装置在上述update语句的指示下,根据获取的结构表信息和上述拓展查询入参字段生成输入字段域:根据上述输入字段域和预设的第一update函数模板,生成拓展查询的update函数。进一步,上述拓展查询文件中还可以包含:select语句、拓展查询结果字段以及用于指示单记录查询或多记录查询的指示信息。数据库操作代码生成装置在上述select语句的指示下,根据获取的结构表信息和上述拓展查询结果字段生成输出字段域:若上述指示信息指示的是多记录查询,则根据上述输出字段域和预设的多记录查询函数模板,生成拓展查询的多记录查询函数:若上述指示信息指示的是单记录查询,则根据上述输出字段域和预设的单记录查询字段类型对应关系表,生成拓展查询的单记录查询函数。上述单记录查询是指在调用完成后游标即被关闭,上述多记录查询是指第一次调用时打开游标并读取数据装满给定的结构数组,如果该结构数组一次装不完,则循环调用直到装满该结构数组,最后一次取完数据将自动关闭游标,或者没有取完数据时显示关闭游标;通过查找到的字段域以及字段类型对应关系表,将数据库结构表中的字段名转换为JAVA实体类代码。
步骤S30,通过所述结构表信息的对应关系,获取对应的中文注释名,并将提取到的中文注释名添加至转换得到的JAVA实体类代码中。
在将结构表信息转换为JAVA实体类代码之后,通过所述结构表信息的对应关系,比如,根据表名,查找对应的中文注释名等,获取对应的中文注释名,并将提取到的中文注释名添加至转换得到的JAVA实体类代码中,具体地,将提取到的中文注释名添加至转换得到的JAVA实体类代码中的方法可以为,为每一句JAVA实体类代码添加对应提取到的中文注释名,或者遍历转换后的JAVA实体类代码,获得代码中的重复语句,然后在重复代码语句中首先出现的代码添加中文注释名即可,不需要在重复代码语句中的每一句都添加中文注释,从而减少存储空间,或者在预设空间中遍历所有的JAVA实体类代码,比如每个显示页面中的JAVA实体类代码,获得预设空间中重复的代码语句,然后在预设空间中首次出现的重复代码语句添加中文注释名,从而减少存储空间,同时便于用户阅读,当然,还可以采用其他方式将中文注释名添加至JAVA实体类代码,在此不做限制。
本实施例提出的自动生成中文注释的方法,根据接收到的指令创建数据库结构表,获取所述数据库结构表信息;当接收到转换指令时,提取对应的字段类型对应关系表,并根据提取到的字段类型对应关系表将所述结构表信息转换为JAVA实体类代码;通过所述结构表信息的对应关系,获取对应的中文注释名,并将提取到的中文注释名添加至转换得到的JAVA实体类代码中,通过上述方式,即可自动将中文注释添加至对应代码中,不需要用户手动进行添加,从而提高开发效率,并且提高中文注释的准确性。
进一步地,参照图2,基于本发明自动生成中文注释的方法第一实施例提出本发明自动生成中文注释的方法第二实施例。
在本实施例中,所述步骤S20包括:
步骤S21,提取对应的字段类型对应关系表,并通过所述对应关系表将结构表信息映射成JAVA类型;
在本实施例中,在提取得到对应的字段类型对应关系表之后,即可通过所述对应关系表将结构表信息映射成JAVA类型,比如,假设字段类型对应关系表中,结构表信息类型为BIGINT,对应的JAVA类型为Long,则当结构表信息为BIGINT时,根据所述字段类型对应关系表将其映射为Long即可;
步骤S22,将数据库表名转换成大驼峰或小驼峰的形式,作为JAVA实体类名称;
在将所有的结构表信息映射为对应的JAVA类型之后,进一步将数据库表名转换成大驼峰或小驼峰的形式,作为JAVA实体类名称,比如把test_name修改为驼峰形式的testName,作为JAVA实体类名称。
步骤S23,根据映射的JAVA类型,提取所述结构表信息对应的JAVA实体类代码,并将所述JAVA实体类名称填充至JAVA实体类代码中对应的位置。
然后映射的JAVA类型,直接提取结构表信息对应的JAVA实体类代码,并按照结构表信息的顺序,将转换后的JAVA实体类代码进行整理,并将所述JAVA实体类名称填充至JAVA实体类代码中对应的位置,比如当所述JAVA实体类名称为整段实体类代码的名称时,则将所述JAVA实体类名称填充至整段实体类代码的前面,作为整段实体类代码的实体类名称。
进一步地,参照图3,基于本发明自动生成中文注释的方法第一实施例提出本发明自动生成中文注释的方法第三实施例。
在本实施例中,所述步骤S30中的“将提取到的中文注释名添加至转换得到的JAVA实体类代码中”包括:
步骤S31,按顺序遍历生成的代码,获取生成的JAVA实体类代码中的相同代码;
在本实施例中,当转换后的代码中存在相同的代码语句时,可以采用在重复的代码语句中,部分添加中文注释名的方式进行添加中文注释名,因此,首先需要查找重复的代码语句,具体地,首先按顺序遍历生成的代码,获取生成的JAVA实体类代码中的相同代码,具体可以按照代码排列的先后,进行遍历,从而获取生成的JAVA实体类代码中的相同代码;
步骤S32,提取对应的中文注释名,当所述中文注释名对应的JAVA实体类代码存在相同代码时,将所述中文注释名添加至首次出现的代码中;
在遍历完成之后,即可提取对应的中文注释名,当所述中文注释名对应的JAVA实体类代码存在相同代码时,将所述中文注释名添加至首次出现的代码中,当后续出现相同的代码语句时,不需要进行注释,从而减少存储空间;
步骤S33,当所述中文注释名对应的JAVA实体类代码不存在相同代码时,将所述中文注释名添加至转换得到的JAVA实体类代码中。
当所述中文注释名对应的JAVA实体类代码不存在相同代码时,将所述中文注释名添加至转换得到的JAVA实体类代码中,即当不存在相同的代码语句时,为转换得到的JAVA实体类代码每一句都添加对应的中文注释名,从而便于用户阅读。
本实施例提出的自动生成中文注释的方法,通过按顺序遍历生成的代码,获取生成的JAVA实体类代码中的相同代码;然后提取对应的中文注释名,当所述中文注释名对应的JAVA实体类代码存在相同代码时,将所述中文注释名添加至首次出现的代码中;当所述中文注释名对应的JAVA实体类代码不存在相同代码时,将所述中文注释名添加至转换得到的JAVA实体类代码中,实现灵活添加中文注释,从而减少存储空间,并且便于用户阅读。
进一步地,参照图4,基于本发明自动生成中文注释的方法第一实施例提出本发明自动生成中文注释的方法第四实施例。
在本实施例中,所述步骤S30中的“将提取到的中文注释名添加至转换得到的JAVA实体类代码中”还包括:
步骤S34,按顺序遍历各个显示页面代码,获取各个显示页面中的JAVA实体类代码中的相同代码;
在本实施例中,还可以采用在各个显示页面中,进行部分添加中文注释的方式,具体地,按顺序遍历各个显示页面代码,获取各个显示页面中的JAVA实体类代码中的相同代码;具体可以按照页面显示的顺序对JAVA实体类代码进行遍历,从而获取各个显示页面中的JAVA实体类代码中的相同代码;
步骤S35,提取显示页面中的JAVA实体类代码对应的中文注释名,当所述中文注释名对应的JAVA实体类代码存在相同代码时,将所述中文注释名添加至显示页面首次出现的代码中;
遍历完成之后,即可提取显示页面中的JAVA实体类代码对应的中文注释名,当所述中文注释名对应的JAVA实体类代码存在相同代码时,将所述中文注释名添加至显示页面首次出现的代码中,即当前页面显示的代码语句中,当后续出现与已添加中文注释名一致的代码语句时,不需要再添加中文注释名,从而减少存储空间,同时也便于用户阅读;
步骤S36,当所述中文注释名对应的JAVA实体类代码不存在相同代码时,将所述中文注释名添加至转换得到的JAVA实体类代码中。
当所述中文注释名对应的JAVA实体类代码不存在相同代码时,将所述中文注释名添加至转换得到的JAVA实体类代码中,即当不存在相同的代码语句时,为转换得到的JAVA实体类代码每一句都添加对应的中文注释名,从而便于用户阅读。
进一步地,基于本发明自动生成中文注释的方法第一实施例提出本发明自动生成中文注释的方法第五实施例。
在本实施例中,所述步骤S10包括:
接收用户输入的中文注释名;
在本实施例中,可以通过用户输入中文注释名,然后将用户输入的中文注释名保存至数据库结构表中,从而获取中文注释名;
或,通过转换得到的JAVA实体类代码,获取多个包含所述JAVA实体类代码中文注释的数据库;
或者通过转换得到的JAVA实体类代码,获取多个包含所述JAVA实体类代码中文注释的数据库,即通过所述JAVA实体类代码,查找包含所述JAVA实体类代码,并且包含对应中文注释的数据库;
将转换得到的JAVA实体类代码与数据库中的JAVA实体类代码进行对比,根据对比结果提取对应的中文注释名。
具体地,所述将转换得到的JAVA实体类代码与数据库中的JAVA实体类代码进行对比,根据对比结果提取对应的中文注释名具体可以包括:
将转换得到的JAVA实体类代码与数据库中的JAVA实体类代码进行对比,获得代码之间的相似度;
将相似度最高的JAVA实体类代码的中文注释,作为转换得到的JAVA实体类代码的中文注释名。
即将转换得到的JAVA实体类代码与数据库中的JAVA实体类代码进行对比,根据对比结果提取对应的中文注释名,具体根据代码之间的相似度,将与转换得到的JAVA实体类代码相似度最高的数据库中的JAVA实体类代码的中文注释,作为转换得到的JAVA实体类代码的中文注释名,从而不需要用户手动输入中文注释,减少用户开发代码的工作量,提高开发效率。
进一步地,基于本发明自动生成中文注释的方法第五实施例提出本发明自动生成中文注释的方法第六实施例。
在本实施例中,所述通过转换得到的JAVA实体类代码,获取多个包含JAVA实体类代码中文注释的数据库的步骤之后,还包括:
获取各个数据库的采纳度;
在获得多个包含JAVA实体类代码中文注释的数据库之后,可以进一步获取各个数据库的采纳度,即被其他用户的采纳次数及频率等;
将采纳度最高的数据库作为提取中文注释的数据库;
从所述提取中文注释的数据库中提取与转换得到的JAVA实体类代码对应的中文注释,作为转换得到的JAVA实体类代码的中文注释名。
然后将各个数据库的采纳度进行对比排序,获得采纳度最高的数据库,并将采纳度最高的数据库作为提取中文注释的数据库;并从所述提取中文注释的数据库中提取与转换得到的JAVA实体类代码对应的中文注释,作为转换得到的JAVA实体类代码的中文注释名。
本发明实施例进一步提供一种自动生成中文注释的装置,所述装置包括:
获取模块,用于根据接收到的指令创建数据库结构表,获取所述数据库结构表信息;
转换模块,用于当接收到转换指令时,提取对应的字段类型对应关系表,并根据提取到的字段类型对应关系表将所述结构表信息转换为JAVA实体类代码;
添加模块,用于通过所述结构表信息的对应关系,获取对应的中文注释名,并将提取到的中文注释名添加至转换得到的JAVA实体类代码中。
本发明自动生成中文注释的装置的具体实施例与上述自动生成中文注释的方法各实施例基本相同,在此不作赘述。
本发明实施例进一步提供一种自动生成中文注释的设备。
参照图5,图5为本发明实施例方案涉及的硬件运行环境的设备结构示意图。
如图5所示,该自动生成中文注释的设备可以包括:处理器1001,例如CPU,网络接口1002,用户接口1003,存储器1004。这些组件之间的连接通信可以通过通信总线实现。网络接口1002可选的可以包括标准的有线接口(用于连接有线网络)、无线接口(如WI-FI接口、蓝牙接口、红外线接口等,用于连接无线网络)。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口(例如用于连接有线键盘、有线鼠标等)和/或无线接口(例如用于连接无线键盘、无线鼠标)。存储器1004可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1004可选的还可以是独立于前述处理器1001的存储装置。
可选地,该自动生成中文注释的设备还可以包括摄像头、RF(Radio Frequency,射频)电路,传感器、音频电路、WiFi模块等等。
本领域技术人员可以理解,图中示出的自动生成中文注释的设备结构并不构成对自动生成中文注释的设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图5所示,作为一种计算机存储介质的存储器1004中可以包括操作***、网络通信模块、用户接口模块以及自动生成中文注释的程序。其中,操作***是管理和控制自动生成中文注释的设备硬件与软件资源的程序,支持网络通信模块、用户接口模块、自动生成中文注释的程序以及其他程序或软件的运行;网络通信模块用于管理和控制网络接口1002;用户接口模块用于管理和控制用户接口1003。
在图5所示的自动生成中文注释的设备中,网络接口1002主要用于连接数据库,与数据库进行数据通信;用户接口1003主要用于连接客户端(可以理解为用户端),与客户端进行数据通信,如通过窗口展示信息给客户端,或者接收客户端发送的操作信息;而处理器1001可以用于执行存储器1004中存储的自动生成中文注释的程序,以实现如上述的自动生成中文注释的方法各个实施例的步骤。
本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如上述的自动生成中文注释的方法各个实施例的步骤。
还需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种自动生成中文注释的方法,其特征在于,所述方法包括以下步骤:
根据接收到的指令创建数据库结构表,获取所述数据库结构表信息;
当接收到转换指令时,提取对应的字段类型对应关系表,并根据提取到的字段类型对应关系表将所述结构表信息转换为JAVA实体类代码;
通过所述结构表信息的对应关系,获取对应的中文注释名,并将提取到的中文注释名添加至转换得到的JAVA实体类代码中。
2.如权利要求1所述的自动生成中文注释的方法,其特征在于,所述提取对应的字段类型对应关系表,并根据提取到的字段类型对应关系表将所述结构表信息转换为JAVA实体类代码的步骤包括:
提取对应的字段类型对应关系表,并通过所述对应关系表将结构表信息映射成JAVA类型;
将数据库表名转换成大驼峰或小驼峰的形式,作为JAVA实体类名称;
根据映射的JAVA类型,提取所述结构表信息对应的JAVA实体类代码,并将所述JAVA实体类名称填充至JAVA实体类代码中对应的位置。
3.如权利要求1所述的自动生成中文注释的方法,其特征在于,所述将提取到的中文注释名添加至转换得到的JAVA实体类代码中的步骤包括:
按顺序遍历生成的代码,获取生成的JAVA实体类代码中的相同代码;
提取对应的中文注释名,当所述中文注释名对应的JAVA实体类代码存在相同代码时,将所述中文注释名添加至首次出现的代码中;
当所述中文注释名对应的JAVA实体类代码不存在相同代码时,将所述中文注释名添加至转换得到的JAVA实体类代码中。
4.如权利要求1所述的自动生成中文注释的方法,其特征在于,所述将提取到的中文注释名添加至转换得到的JAVA实体类代码中的步骤还包括:
按顺序遍历各个显示页面代码,获取各个显示页面中的JAVA实体类代码中的相同代码;
提取显示页面中的JAVA实体类代码对应的中文注释名,当所述中文注释名对应的JAVA实体类代码存在相同代码时,将所述中文注释名添加至显示页面首次出现的代码中;
当所述中文注释名对应的JAVA实体类代码不存在相同代码时,将所述中文注释名添加至转换得到的JAVA实体类代码中。
5.如权利要求1所述的自动生成中文注释的方法,其特征在于,所述通过所述结构表信息的对应关系,获取对应的中文注释名的步骤之前,还包括:
接收用户输入的中文注释名;
或,通过转换得到的JAVA实体类代码,获取多个包含JAVA实体类代码中文注释的数据库;
将转换得到的JAVA实体类代码与数据库中的JAVA实体类代码进行对比,根据对比结果提取对应的中文注释名。
6.如权利要求5所述的自动生成中文注释的方法,其特征在于,所述将转换得到的JAVA实体类代码与数据库中的JAVA实体类代码进行对比,根据对比结果提取对应的中文注释名的步骤包括:
将转换得到的JAVA实体类代码与数据库中的JAVA实体类代码进行对比,获得代码之间的相似度;
将相似度最高的JAVA实体类代码的中文注释,作为转换得到的JAVA实体类代码的中文注释名。
7.如权利要求5所述的自动生成中文注释的方法,其特征在于,所述通过转换得到的JAVA实体类代码,获取多个包含JAVA实体类代码中文注释的数据库的步骤之后,还包括:
获取各个数据库的采纳度;
将采纳度最高的数据库作为提取中文注释的数据库;
从所述提取中文注释的数据库中提取与转换得到的JAVA实体类代码对应的中文注释,作为转换得到的JAVA实体类代码的中文注释名。
8.一种自动生成中文注释的装置,其特征在于,所述装置包括:
获取模块,用于根据接收到的指令创建数据库结构表,获取所述数据库结构表信息;
转换模块,用于当接收到转换指令时,提取对应的字段类型对应关系表,并根据提取到的字段类型对应关系表将所述结构表信息转换为JAVA实体类代码;
添加模块,用于通过所述结构表信息的对应关系,获取对应的中文注释名,并将提取到的中文注释名添加至转换得到的JAVA实体类代码中。
9.一种自动生成中文注释的设备,其特征在于,所述自动生成中文注释的设备包括处理器、网络接口、用户接口及存储器,所述存储器中存储有自动生成中文注释的程序;所述处理器用于执行所述自动生成中文注释的程序,以实现如权利要求1至7中任一项所述的自动生成中文注释的方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有自动生成中文注释的程序,所述自动生成中文注释的程序被处理器执行时实现如权利要求1至7中任一项所述的自动生成中文注释的方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810199487.9A CN108509199A (zh) | 2018-03-09 | 2018-03-09 | 自动生成中文注释的方法、装置、设备及存储介质 |
PCT/CN2018/094102 WO2019169814A1 (zh) | 2018-03-09 | 2018-07-02 | 自动生成中文注释的方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810199487.9A CN108509199A (zh) | 2018-03-09 | 2018-03-09 | 自动生成中文注释的方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108509199A true CN108509199A (zh) | 2018-09-07 |
Family
ID=63377519
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810199487.9A Pending CN108509199A (zh) | 2018-03-09 | 2018-03-09 | 自动生成中文注释的方法、装置、设备及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN108509199A (zh) |
WO (1) | WO2019169814A1 (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109542453A (zh) * | 2018-11-20 | 2019-03-29 | 北京千丁互联科技有限公司 | 数据库信息识别方法、装置及计算机终端 |
CN111736813A (zh) * | 2020-06-24 | 2020-10-02 | 深圳前海微众银行股份有限公司 | Jpa代码的生成方法、装置、终端设备及存储介质 |
CN111984670A (zh) * | 2020-07-27 | 2020-11-24 | 北京天健源达科技股份有限公司 | 一种生成显示视图注释信息脚本的方法 |
CN112148746A (zh) * | 2020-08-21 | 2020-12-29 | 杭州安恒信息技术股份有限公司 | 生成数据库表结构文档的方法、装置、电子装置和存储介质 |
CN112394974A (zh) * | 2020-11-23 | 2021-02-23 | 平安科技(深圳)有限公司 | 代码变更的注释生成方法、装置、电子设备及存储介质 |
CN112416429A (zh) * | 2020-11-23 | 2021-02-26 | 平安普惠企业管理有限公司 | 代码注释生成方法及装置 |
CN113032360A (zh) * | 2021-03-04 | 2021-06-25 | 四川瀚库智数科技有限公司 | 推测数据库字段含义的方法 |
CN113343649A (zh) * | 2021-05-26 | 2021-09-03 | 网易传媒科技(北京)有限公司 | 文件注释方法、装置、存储介质和计算设备 |
US12039296B2 (en) * | 2022-11-11 | 2024-07-16 | Jpmorgan Chase Bank, N.A. | Systems and methods for auto-captioning repositories from source code |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101697120A (zh) * | 2009-11-05 | 2010-04-21 | 河南辉煌科技股份有限公司 | 基于关系型数据库的j2ee代码生成方法 |
CN102968306A (zh) * | 2012-11-29 | 2013-03-13 | 广东全通教育股份有限公司 | 一种基于数据模型驱动的代码自动生成方法和*** |
CN105677323A (zh) * | 2015-12-31 | 2016-06-15 | 合肥大多数信息科技有限公司 | 一种自动生成数据库操作层代码的方法 |
WO2013106947A9 (en) * | 2012-01-18 | 2017-05-04 | Metrologic Instruments, Inc. | Web-based scan-task enabled system. and method of and apparatus for developing and deploying the same on a client-server network |
CN106873974A (zh) * | 2016-12-30 | 2017-06-20 | 武汉默联股份有限公司 | 智能代码生成引擎***及方法 |
CN107479883A (zh) * | 2017-08-07 | 2017-12-15 | 海闻科技有限公司 | 一种代码生成方法及代码生成器 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102129365A (zh) * | 2010-01-20 | 2011-07-20 | 阿里巴巴集团控股有限公司 | 一种生成代码说明文档的方法及装置 |
CN105824794A (zh) * | 2016-03-11 | 2016-08-03 | 天脉聚源(北京)教育科技有限公司 | 一种注释添加方法及装置 |
CN107608669A (zh) * | 2017-08-15 | 2018-01-19 | 山西云度知识产权服务有限公司 | 一种基于数据库表结构自动生成功能及页面的方法 |
-
2018
- 2018-03-09 CN CN201810199487.9A patent/CN108509199A/zh active Pending
- 2018-07-02 WO PCT/CN2018/094102 patent/WO2019169814A1/zh active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101697120A (zh) * | 2009-11-05 | 2010-04-21 | 河南辉煌科技股份有限公司 | 基于关系型数据库的j2ee代码生成方法 |
WO2013106947A9 (en) * | 2012-01-18 | 2017-05-04 | Metrologic Instruments, Inc. | Web-based scan-task enabled system. and method of and apparatus for developing and deploying the same on a client-server network |
CN102968306A (zh) * | 2012-11-29 | 2013-03-13 | 广东全通教育股份有限公司 | 一种基于数据模型驱动的代码自动生成方法和*** |
CN105677323A (zh) * | 2015-12-31 | 2016-06-15 | 合肥大多数信息科技有限公司 | 一种自动生成数据库操作层代码的方法 |
CN106873974A (zh) * | 2016-12-30 | 2017-06-20 | 武汉默联股份有限公司 | 智能代码生成引擎***及方法 |
CN107479883A (zh) * | 2017-08-07 | 2017-12-15 | 海闻科技有限公司 | 一种代码生成方法及代码生成器 |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109542453A (zh) * | 2018-11-20 | 2019-03-29 | 北京千丁互联科技有限公司 | 数据库信息识别方法、装置及计算机终端 |
CN111736813A (zh) * | 2020-06-24 | 2020-10-02 | 深圳前海微众银行股份有限公司 | Jpa代码的生成方法、装置、终端设备及存储介质 |
CN111736813B (zh) * | 2020-06-24 | 2024-07-09 | 深圳前海微众银行股份有限公司 | Jpa代码的生成方法、装置、终端设备及存储介质 |
CN111984670B (zh) * | 2020-07-27 | 2024-03-19 | 北京天健源达科技股份有限公司 | 一种生成显示视图注释信息脚本的方法 |
CN111984670A (zh) * | 2020-07-27 | 2020-11-24 | 北京天健源达科技股份有限公司 | 一种生成显示视图注释信息脚本的方法 |
CN112148746B (zh) * | 2020-08-21 | 2024-03-26 | 杭州安恒信息技术股份有限公司 | 生成数据库表结构文档的方法、装置、电子装置和存储介质 |
CN112148746A (zh) * | 2020-08-21 | 2020-12-29 | 杭州安恒信息技术股份有限公司 | 生成数据库表结构文档的方法、装置、电子装置和存储介质 |
CN112416429A (zh) * | 2020-11-23 | 2021-02-26 | 平安普惠企业管理有限公司 | 代码注释生成方法及装置 |
CN112394974A (zh) * | 2020-11-23 | 2021-02-23 | 平安科技(深圳)有限公司 | 代码变更的注释生成方法、装置、电子设备及存储介质 |
CN112394974B (zh) * | 2020-11-23 | 2024-05-07 | 平安科技(深圳)有限公司 | 代码变更的注释生成方法、装置、电子设备及存储介质 |
CN113032360A (zh) * | 2021-03-04 | 2021-06-25 | 四川瀚库智数科技有限公司 | 推测数据库字段含义的方法 |
CN113343649A (zh) * | 2021-05-26 | 2021-09-03 | 网易传媒科技(北京)有限公司 | 文件注释方法、装置、存储介质和计算设备 |
US12039296B2 (en) * | 2022-11-11 | 2024-07-16 | Jpmorgan Chase Bank, N.A. | Systems and methods for auto-captioning repositories from source code |
Also Published As
Publication number | Publication date |
---|---|
WO2019169814A1 (zh) | 2019-09-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108509199A (zh) | 自动生成中文注释的方法、装置、设备及存储介质 | |
CN108399130A (zh) | 自动生成测试案例的方法、装置、设备及可读存储介质 | |
KR101122841B1 (ko) | 중첩된 표로 스키마 없는 데이터 매핑을 위한 시스템과방법 | |
CN105989150B (zh) | 一种基于大数据环境的数据查询方法及装置 | |
CN103631604B (zh) | 一种基于celts-41规范的标准化数字学习资源管理方法 | |
CN104881275A (zh) | 一种电子报表生成方法及装置 | |
CN111259067B (zh) | 一种基于Spring实现DAO接口的方法、装置及设备 | |
CN108762743A (zh) | 一种数据表操作代码生成方法及装置 | |
CN111309313A (zh) | 一种快速生成html以及存储表单数据的方法 | |
US20150199346A1 (en) | Hierarchical database report generation with automated query generation for placeholders | |
CN101625694A (zh) | 一种存储多种标准地学元数据的方法及*** | |
EP1626359A2 (en) | Methods and systems for electronic device modelling | |
CN108280219A (zh) | 文本翻译方法、装置、计算机设备和存储介质 | |
CN108664546B (zh) | Xml数据结构转换方法和装置 | |
US10776351B2 (en) | Automatic core data service view generator | |
CN112162751A (zh) | 一种接口文档自动生成方法及*** | |
CN106776779B (zh) | 基于Mac平台的JSON数据生成实体文件的方法 | |
CN101794223B (zh) | Wade服务消息架构的设计方法 | |
CN112698819A (zh) | 面向树化对象编程程序设计方法、装置及存储介质 | |
CN110162299A (zh) | web程序及其快速开发框架、开发方法与相关设备 | |
CN109240679A (zh) | 脚本文件的图形化方法及装置 | |
CN116303359A (zh) | 一种数据库结构多类型文档导出的实现方法 | |
TW201525737A (zh) | 互動式網頁程式自動產生方法 | |
CN116400914A (zh) | 一种基于数据模型快速构建web应用的方法 | |
JP3788956B2 (ja) | 構造化文書表示方法、構造化文書表示装置及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180907 |
|
RJ01 | Rejection of invention patent application after publication |