CN103631601A - 一种代码生成方法和装置 - Google Patents
一种代码生成方法和装置 Download PDFInfo
- Publication number
- CN103631601A CN103631601A CN201310671433.5A CN201310671433A CN103631601A CN 103631601 A CN103631601 A CN 103631601A CN 201310671433 A CN201310671433 A CN 201310671433A CN 103631601 A CN103631601 A CN 103631601A
- Authority
- CN
- China
- Prior art keywords
- database
- code
- parameter
- class
- variable
- 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
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种代码生成方法和装置,其中一种代码生成方法包括:确定所要访问的数据库以及数据库操作类型;从预先构建的代码模板中选取与数据库操作类型对应的操作代码;依据数据库操作类型确定所要访问的数据库的参数;将数据库的参数转换为操作对象的变量,并将操作对象的变量替换操作代码中对应的变量,得到软件架构下的可执行软件代码。应用上述技术方案可以实现对于不同数据库的不同操作自动生成对应操作的可执行软件代码,解决现有技术需要软件开发人员人工修改代码导致的代码修改繁琐的问题。
Description
技术领域
本发明涉及信息处理领域,特别涉及一种代码生成方法和装置。
背景技术
SQL(STRUCTURED QUERY LANGUAGE,结构化查询语言)作为最重要的关系数据库操作语言,由于其具有良好的可移植性,得到广泛应用,但是各种不同的数据库对SQL的支持与标准存在着细微的不同,不同的数据库产品开发商为了达到特殊的性能或新的特性需要对标准进行扩展,现在已有100多种遍布在从微机到大型机上的数据库产品。
目前不同数据库产品对数据库的操作包括增、删、改、查四种操作,在同一个软件项目中,对于软件架构来说、数据库增、删、改、查这四种操作的代码模式基本相同,不同的只是所要实现的不同操作和所要访问的数据库不同而已,因此软件开发人员可以在已有的一个操作的可执行软件代码的基础上,查找需要修改的代码行进行修改,从而生成另一个操作的可执行软件代码。
但是一个可执行软件代码通常具有几百万行的代码,在这几百万行中查找需要修改的代码行需要花费软件开发人员大量精力,并且遗漏一处修改,就会导致生成的可执行软件代码无法运行,还需要软件开发人员重新查找。
发明内容
本发明所要解决的技术问题是提供一种代码生成方法和装置,用以解决现有技术中代码修改繁琐的问题。技术方案如下:
本发明实施例提供一种代码生成方法,包括:
确定所要访问的数据库以及数据库操作类型;
从预先构建的代码模板中选取与所述数据库操作类型对应的操作代码;
依据所述数据库操作类型确定所述所要访问的数据库的参数;
将所述数据库的参数转换为操作对象的变量,并将所述操作对象的变量替换所述操作代码中对应的变量,得到软件架构下的可执行软件代码。
优选地,将所述数据库的参数转换为操作对象的变量,包括:
将所述数据库的参数读取到内存中;
对所述内存中数据库的参数进行遍历解析,得到所述操作对象的变量。
优选地,所述数据库的参数包括:数据库表名称、字段类型、字段名、列表字段、表单字段和查询字段,在数据库操作类型不同时确定的数据库的参数不同。
优选地,从预先构建的代码模板中选取与所述数据库操作类型对应的操作代码,包括:从OpenTools类中选取与所述数据库操作类型对应的操作代码;
将所述数据库的参数转换为操作对象的变量,并将所述操作对象的变量替换所述操作代码中对应的变量,得到软件架构下的可执行软件代码,包括:由TemplateSupport将ClassObject类和操作代码进行拼接以完成变量的替换,其中ClassObject类用于将所述存储数据库的参数的业务定义模型转换为ClassObject类的classObject对象;
由CodeMachine类的createFile方法调用TemplateSupport拼接的结果;
由OpenTools类的main方法调用CodeMachine类的createFile,得到可执行软件代码。
优选地,所述数据库操作类型包括数据库增加、数据库删除、数据库修改和数据库查询。
本发明实施例还提供一种代码生成装置,包括:
类型确定单元,用于确定所要访问的数据库以及数据库操作类型;
选取单元,用于从预先构建的代码模板中选取与所述数据库操作类型对应的操作代码;
参数确定单元,用于依据所述数据库操作类型确定所述所要访问的数据库的参数;
代码生成单元,用于将所述数据库的参数转换为操作对象的变量,并将所述操作对象的变量替换所述操作代码中对应的变量,得到软件架构下的可执行软件代码。
优选地,所述代码生成单元具体用于将所述数据库的参数读取到内存中,对所述内存中数据库的参数进行遍历解析,得到所述操作对象的变量。
优选地,所述数据库的参数包括:数据库表名称、字段类型、字段名、列表字段、表单字段和查询字段,在数据库操作类型不同时确定的数据库的参数不同。
优选地,所述选取单元具体用于:从OpenTools类中选取与所述数据库操作类型对应的操作代码;
所述代码生成单元具体用于:由TemplateSupport将ClassObject类和操作代码进行拼接以完成变量的替换,由CodeMachine类的createFile方法调用TemplateSupport拼接的结果,由OpenTools类的main方法调用CodeMachine类的createFile,得到可执行软件代码,其中ClassObject类用于将存储数据库的参数的业务定义模型转换为ClassObject类的classObject对象。
优选地,所述数据库操作类型包括数据库增加、数据库删除、数据库修改和数据库查询。
与现有技术相比,本发明包括以下优点:
在对数据库执行某一种操作时,应用本发明实施例提供的代码生成方法在确定所要访问的数据库和数据库操作类型后,可以从预先构建的代码模板中选取与数据库操作类型对应的操作代码,并依据数据库操作类型确定所要访问的数据库的参数。再将数据库的参数转换为操作对象的变量后,将其替换操作代码中对应的变量,得到一软件架构下的可执行软件代码,实现对于不同数据库的不同操作自动生成对应操作的可执行软件代码,解决现有技术需要软件开发人员人工修改代码导致的代码修改繁琐的问题。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种代码生成方法的一种流程图;
图2是本发明实施提供的人机交互界面的示意图;
图3是本发明实施例提供的一种代码生成方法的类关系图;
图4是本发明实施例提供的一种代码生成方法的原理图;
图5是本发明实施例提供的一种代码生成装置的结构示意图。
具体实施方式
首先对本发明实施例提供的代码生成方法进行简单说明,该代码生成方法的流程如下:
确定所要访问的数据库以及数据库操作类型;
从预先构建的代码模板中选取与所述数据库操作类型对应的操作代码;
依据所述数据库操作类型确定所述所要访问的数据库的参数;
将所述数据库的参数转换为操作对象的变量,并将所述操作对象的变量替换所述操作代码中对应的变量,得到软件架构下的可执行软件代码。
当对某一数据库执行某种操作时,应用上述技术方案可以自动生成对应操作的可执行软件代码,解决现有技术需要软件开发人员人工修改代码导致的代码修改繁琐的问题。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,其示出了本发明实施例提供的一种代码生成方法的流程图,可以包括以下步骤:
步骤101:确定所要访问的数据库以及数据库操作类型。
其中,所要访问的数据库是指当前需要进行操作的数据库,对数据库的操作包括:数据库增加、数据库删除、数据库修改和数据库查询这四种操作,相应的数据库操作类型也可以包括这四种操作类型。
为了便于对数据库的操作,可以为用户提供一人机交互界面,在如图2所示的人机交互界面中展示有所要访问的数据库和数据库操作类型,当某一数据库和对应的数据库操作类型被选中时,所选中的数据库和数据库操作类型即是所要访问的数据库和数据库操作类型。当然人机交互界面中所要访问的数据库和数据库操作类型还可以由用户手动输入,本发明实施例不再详细阐述。
此外电子设备在构建每个数据库时,还可以将数据库与电子设备中的某一功能模块关联,该功能模块集成本发明实施例提供的代码生成方法。当任一数据库在执行上述四种操作的任意一种操作时,数据库的信息和所执行的操作被发送至功能模块中,功能模块确定出当前所要访问的数据库以及数据库操作类型。
步骤102:从预先构建的代码模板中选取与数据库操作类型对应的操作代码。
可以理解的是:预先构建的代码模板中编写出与数据库操作类型对应的操作代码,这些操作代码可以作为基础类,执行数据库的某种操作。在本发明实施例中,OpenTools为代码生成基础类,其可生成上述四种操作对应的基础类,即操作代码。当确定数据库操作类型时,可以从OpenTools中选取对应的操作代码。例如当数据库操作类型为数据库删除时,可以从OpenTools中执行数据库删除的操作代码。
步骤103:依据数据库操作类型确定所要访问的数据库的参数。
在本发明实施例中,数据库的参数包括:数据库表名称、字段类型、字段名、列表字段、表单字段和查询字段,而在数据库操作类型不同时确定的数据库的参数也不同。例如在执行数据库查询操作时,查询字段包括对哪几项进行查询,而在执行数据库增加操作时,查询字段可以为空。
可以理解的是:数据库表是指保存数据的数据存储单元,列表是从数据库表中取出展现给用户的数据列表,通常一个列表展现的内容是一个数据库表中的多行记录,表单则是从数据库表中取到的一行记录的展现。进而数据库表名称表示所访问的数据库的表名和所操作的表的字段,列表字段和表单字段则表示生成的可执行软件代码中所包括的字段内容。
查询字段表示所要查询的内容,由于列表字段、表单字段和查询字段取自同一个数据库表,所以查询字段与列表字段和表单字段一一对应,即如果在查询字段包括“单位名称”的字段,那么表单字段和列表字段中一定会有这个字段。而字段类型和字段名则用于标识数据库表名称、列表字段、表单字段和查询字段采用何种类型表示以及其具体名称是什么。
步骤104:将数据库的参数转换为操作对象的变量,并将操作对象的变量替换操作代码中对应的变量,得到软件架构下的可执行软件代码。
在将数据库的参数转换为操作对象的变量时,首先将数据库的参数读取到内存中,以加快转换速度。然后对内存中数据库的参数进行遍历解析,得到操作对象的变量。具体过程是:数据库的参数被存储在业务定义模型中,首先通过如下代码将业务定义模型读取到内存中解析,
SAXReader reader=new SAXReader();
Document document=reader.read(new File(filePath));
其中,filePath为业务定义模型的存储路径和文件名组成的字符串,并通过Document为将业务定义模型转换成一个内存中的树型对象结构对象。
再由ClassObject classObject=new ClassObject();将业务定义模型转化为ClassObject类的classObject对象,得到classObject对象的成员变量。转换代码如下:
classObject.setTableName(document.getRootElement().attributeValue("tableName"));//得到业务模型中的配置表名
classObject.setClassName(document.getRootElement().attributeValue("className"));//得到业务模型中的类名
classObject.setIdMethod(document.getRootElement().attributeValue("idMethod"));//得到业务模型中的ID生成方法
classObject.setChineseValue(document.getRootElement().attributeValue("chineseValue"));//得到业务模型中的中文含义
classObject.setJavaPath(document.getRootElement().attributeValue("javaPath"));//得到业务模型中的JAVA代码生成路径
classObject.setJspPath(document.getRootElement().attributeValue("jspPath"));//得到业务模型中的JSP代码生成路径
classObject.setAuthor(document.getRootElement().attributeValue("author"));//得到业务模型中的作者信息
classObject.setTime(new Date());//得到当前时间
List<Column>list=new ArrayList<Column>();//定义一个链表对象
List<String>uuids=new ArrayList<String>();//定义一个链表对象
Column column;//定义用来封装业务模型中表字段信息的对象
for(Iterator<?>elementSET=document.getRootElement().elementIterator();elementSET.hasNext();){
column=new Column();
Element element=(Element)elementSET.next();
column.setName(element.attributeValue("name"));//得到字段名
column.setPrimaryKey(newBoolean(element.attributeValue("primaryKey")));//字段是否为主键
column.setObjectName(element.attributeValue("objectName"));//得到成员变量名
column.setChineseValue(element.attributeValue("chineseValue"));//得到字段的业务含义
column.setRequired(new Boolean(element.attributeValue("required")));//得到字段是否为必填项值
column.setType(element.attributeValue("type"));//得到字段类型
column.setJspType(element.attributeValue("jspType"));//得到定义展现页面控件类型
column.setSize(new Integer(element.attributeValue("size")));//得到定义展现页面的可输入长度
column.setSearchObject(newBoolean(element.attributeValue("searchObject")));//得到字段否为查询项定义
column.setStyle(element.attributeValue("style"));/得到成员变量的类型
column.setInsertObject(newBoolean(element.attributeValue("insertObject")));//得到字段否为新增表项定义
column.setUpdateObject(newBoolean(element.attributeValue("updateObject")));//得到字段否为更新表项定义
column.setQueryObject(newBoolean(element.attributeValue("queryObject")));//得到字段否为列表定义
column.setDetailObject(newBoolean(element.attributeValue("detailObject")));//得到字段否为明细页面项定义
list.add(column);
}
classObject.setCols(list);
最后由TemplateSupport将转换后得到的classObject对象和操作代码进行拼接,TemplateSupport拼接的结果由CodeMachine类的createFile方法调用,之后由OpenTools类的main方法调用CodeMachine类的createFile,得到可执行软件代码。
在代码生成过程中,代码生成所需各种类的关系图如图3所示,其中pojo类即是ClassObject类,将所要访问的数据库的参数转换为ClassObject类中的成员变量,再由TemplateSupport将转换后得到的ClassObject类和操作代码进行拼接,完成变量的替换,TemplateSupport拼接的结果由CodeMachine类的createFile调用,之后由OpenTools类的main方法调用CodeMachine类的createFile,得到可执行软件代码。
其对应的原理图如图4所示,可以包括:代码模板、业务定义模板、代码机、代码及配置、数据源定义配置和代码运行环境。其中代码模板是根据不同的软件架构构建的一套对数据库实现增、删、改、查操作代码模板;业务定义模型可以根据不同的业务需求所定义的业务操作模型其包括所操作的数据库表名称、字段类型、字段名、列表字段和表单字段和查询字段;代码机通过解析代码模板和业务定义模型生成可以执行软件代码;代码及配置是代码机的生成物,即为适应于软件架构下的软件工程代码及代码配置信息;数据源定义配置是整个软件项目的基础数据,可以定义对多个数据库访问的配置信息;代码运行环境是软件架构的代码执行环境。
应用上述技术方案,在对数据库执行某一种操作时,确定所要访问的数据库和数据库操作类型后,可以从预先构建的代码模板中选取与数据库操作类型对应的操作代码,并依据数据库操作类型确定所要访问的数据库的参数。再将数据库的参数转换为操作对象的变量后,将其替换操作代码中对应的变量,得到一软件架构下的可执行软件代码,实现对于不同数据库的不同操作自动生成对应操作的可执行软件代码,解决现有技术需要软件开发人员人工修改代码导致的代码修改繁琐的问题。
与上述方法实施例相对应,本发明实施例还提供一种代码生成装置,其结构示意图如图5所示,可以包括:类型确定单元11、选取单元12、参数确定单元13和代码生成单元14。其中,
类型确定单元11,用于确定所要访问的数据库以及数据库操作类型。其中,所要访问的数据库是指当前需要进行操作的数据库,对数据库的操作包括:数据库增加、数据库删除、数据库修改和数据库查询这四种操作,相应的数据库操作类型也可以包括这四种操作类型。
选取单元12,用于从预先构建的代码模板中选取与数据库操作类型对应的操作代码。
可以理解的是:预先构建的代码模板中编写出与数据库操作类型对应的操作代码,这些操作代码可以作为基础类,执行数据库的某种操作。在本发明实施例中,OpenTools为代码生成基础类,其可生成上述四种操作对应的基础类,即操作代码。当确定数据库操作类型时,可以从OpenTools中选取对应的操作代码。例如当数据库操作类型为数据库删除时,可以从OpenTools中执行数据库删除的操作代码。
参数确定单元13,用于依据数据库操作类型确定所要访问的数据库的参数。
在本发明实施例中,数据库的参数包括:数据库表名称、字段类型、字段名、列表字段、表单字段和查询字段,而在数据库操作类型不同时确定的数据库的参数也不同。例如在执行数据库查询操作时,查询字段包括对哪几项进行查询,而在执行数据库增加操作时,查询字段可以为空。
其中,数据库表是指保存数据的数据存储单元,列表是从数据库表中取出展现给用户的数据列表,通常一个列表展现的内容是一个数据库表中的多行记录,表单则是从数据库表中取到的一行记录的展现。进而数据库表名称表示所访问的数据库的表名和所操作的表的字段,列表字段和表单字段则表示生成的可执行软件代码中所包括的字段内容。
查询字段表示所要查询的内容,由于列表字段、表单字段和查询字段取自同一个数据库表,所以查询字段与列表字段和表单字段一一对应,即如果在查询字段包括“单位名称”的字段,那么表单字段和列表字段中一定会有这个字段。而字段类型和字段名则用于标识数据库表名称、列表字段、表单字段和查询字段采用何种类型表示以及其具体名称是什么。
代码生成单元14,用于将数据库的参数转换为操作对象的变量,并将操作对象的变量替换操作代码中对应的变量,得到软件架构下的可执行软件代码。其操作可以是:代码生成单元14将数据库的参数读取到内存中,对内存中数据库的参数进行遍历解析,得到操作对象的变量。
其过程可以由SAXReader类中的reader和Document类中的document将业务定义模型读取到内存中解析,将业务定义模型转换为ClassObject类的classObject对象,通过TemplateSupport类将classObject对象和操作代码进行拼接以完成变量的替换,再由CodeMachine类的createFile方法调用TemplateSupport拼接的结果,最后由OpenTools类的main方法调用CodeMachine类的createFile,得到可执行软件代码。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
最后,还需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本发明时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
以上对本发明所提供的一种代码生成方法和装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种代码生成方法,其特征在于,包括:
确定所要访问的数据库以及数据库操作类型;
从预先构建的代码模板中选取与所述数据库操作类型对应的操作代码;
依据所述数据库操作类型确定所述所要访问的数据库的参数;
将所述数据库的参数转换为操作对象的变量,并将所述操作对象的变量替换所述操作代码中对应的变量,得到软件架构下的可执行软件代码。
2.根据权利要求1所述的方法,其特征在于,将所述数据库的参数转换为操作对象的变量,包括:
将所述数据库的参数读取到内存中;
对所述内存中数据库的参数进行遍历解析,得到所述操作对象的变量。
3.根据权利要求2所述的方法,其特征在于,所述数据库的参数包括:数据库表名称、字段类型、字段名、列表字段、表单字段和查询字段,在数据库操作类型不同时确定的数据库的参数不同。
4.根据权利要求3所述的方法,其特征在于,从预先构建的代码模板中选取与所述数据库操作类型对应的操作代码,包括:从OpenTools类中选取与所述数据库操作类型对应的操作代码;
将所述数据库的参数转换为操作对象的变量,并将所述操作对象的变量替换所述操作代码中对应的变量,得到软件架构下的可执行软件代码,包括:由TemplateSupport将ClassObject类和操作代码进行拼接以完成变量的替换,其中ClassObject类用于将所述存储数据库的参数的业务定义模型转换为ClassObject类的classObject对象;
由CodeMachine类的createFile方法调用TemplateSupport拼接的结果;
由OpenTools类的main方法调用CodeMachine类的createFile,得到可执行软件代码。
5.根据权利要求1至4任意一项所述的方法,其特征在于,所述数据库操作类型包括数据库增加、数据库删除、数据库修改和数据库查询。
6.一种代码生成装置,其特征在于,包括:
类型确定单元,用于确定所要访问的数据库以及数据库操作类型;
选取单元,用于从预先构建的代码模板中选取与所述数据库操作类型对应的操作代码;
参数确定单元,用于依据所述数据库操作类型确定所述所要访问的数据库的参数;
代码生成单元,用于将所述数据库的参数转换为操作对象的变量,并将所述操作对象的变量替换所述操作代码中对应的变量,得到软件架构下的可执行软件代码。
7.根据权利要求6所述的装置,其特征在于,所述代码生成单元具体用于将所述数据库的参数读取到内存中,对所述内存中数据库的参数进行遍历解析,得到所述操作对象的变量。
8.根据权利要求7所述的装置,其特征在于,所述数据库的参数包括:数据库表名称、字段类型、字段名、列表字段、表单字段和查询字段,在数据库操作类型不同时确定的数据库的参数不同。
9.根据权利要求8所述的装置,其特征在于,所述选取单元具体用于:从OpenTools类中选取与所述数据库操作类型对应的操作代码;
所述代码生成单元具体用于:由TemplateSupport将ClassObject类和操作代码进行拼接以完成变量的替换,由CodeMachine类的createFile方法调用TemplateSupport拼接的结果,由OpenTools类的main方法调用CodeMachine类的createFile,得到可执行软件代码,其中ClassObject类用于将存储数据库的参数的业务定义模型转换为ClassObject类的classObject对象。
10.根据权利要求6至9任意一项所述的装置,其特征在于,所述数据库操作类型包括数据库增加、数据库删除、数据库修改和数据库查询。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310671433.5A CN103631601A (zh) | 2013-12-10 | 2013-12-10 | 一种代码生成方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310671433.5A CN103631601A (zh) | 2013-12-10 | 2013-12-10 | 一种代码生成方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103631601A true CN103631601A (zh) | 2014-03-12 |
Family
ID=50212699
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310671433.5A Pending CN103631601A (zh) | 2013-12-10 | 2013-12-10 | 一种代码生成方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103631601A (zh) |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104063232A (zh) * | 2014-07-21 | 2014-09-24 | 佛山市恒南微科技有限公司 | 一种基于数据库参数利用的***快速开发的方法 |
CN104636471A (zh) * | 2015-02-12 | 2015-05-20 | 中国农业银行股份有限公司 | 一种程序代码的查找方法及装置 |
CN105354036A (zh) * | 2015-11-26 | 2016-02-24 | 深圳市金证科技股份有限公司 | 数据库操作代码生成方法及装置 |
CN105893445A (zh) * | 2015-12-15 | 2016-08-24 | 乐视网信息技术(北京)股份有限公司 | 数据处理的方法、服务器和终端设备 |
CN105988792A (zh) * | 2015-02-11 | 2016-10-05 | 国核(北京)科学技术研究院有限公司 | 核电软件开发自动化***和方法 |
CN106126224A (zh) * | 2016-06-21 | 2016-11-16 | 浪潮软件集团有限公司 | 一种生成程序对象的工具、***和方法 |
CN106469064A (zh) * | 2016-09-04 | 2017-03-01 | 深圳市云智易联科技有限公司 | 代码生成方法及代码生成装置 |
CN106484427A (zh) * | 2016-10-21 | 2017-03-08 | 福建中金在线信息科技有限公司 | 一种代码文件的生成方法及装置 |
CN106528165A (zh) * | 2016-11-11 | 2017-03-22 | 深圳中兴网信科技有限公司 | 代码生成方法及代码生成*** |
CN106843822A (zh) * | 2015-12-07 | 2017-06-13 | 阿里巴巴集团控股有限公司 | 一种执行代码生成方法及设备 |
CN107103007A (zh) * | 2016-02-23 | 2017-08-29 | 阿里巴巴集团控股有限公司 | 一种sql代码转换方法及装置 |
CN107943466A (zh) * | 2016-10-13 | 2018-04-20 | 腾讯科技(深圳)有限公司 | 数据库访问语句生成方法、装置及设备 |
CN105354073B (zh) * | 2015-10-27 | 2018-11-06 | 中通服公众信息产业股份有限公司 | 一种基于安卓***的单机应用网络化方法和*** |
CN109491649A (zh) * | 2018-11-20 | 2019-03-19 | 北京千丁互联科技有限公司 | Dao代码生成方法及计算机终端 |
CN109739493A (zh) * | 2019-01-18 | 2019-05-10 | 宜创(北京)科技有限公司 | 数据库操作语句的生成方法、装置、电子设备及存储介质 |
CN110019146A (zh) * | 2018-06-26 | 2019-07-16 | 珠海宏桥高科技有限公司 | 一种单表维护功能的实现方法和装置 |
CN111367938A (zh) * | 2020-03-04 | 2020-07-03 | 海南金盘智能科技股份有限公司 | 数据库指令的生成方法、装置和计算机存储介质 |
CN112286907A (zh) * | 2020-10-26 | 2021-01-29 | 中信百信银行股份有限公司 | 一种数据库配置方法、装置、电子设备和可读存储介质 |
CN112463135A (zh) * | 2020-12-11 | 2021-03-09 | 中国人寿保险股份有限公司 | 代码生成方法、代码生成器、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070244852A1 (en) * | 2006-04-06 | 2007-10-18 | Giulio Domenico D | Database query processing method and system |
CN101196926A (zh) * | 2007-12-29 | 2008-06-11 | 中国建设银行股份有限公司 | 一种数据库访问平台及其访问方法 |
CN101645074A (zh) * | 2009-09-07 | 2010-02-10 | 浪潮集团山东通用软件有限公司 | 一种访问不同类型关系型数据库的方法 |
CN102111282A (zh) * | 2009-12-24 | 2011-06-29 | 上海杉达学院 | 一种基于电信业务的信息管理***架构及其构建方法 |
-
2013
- 2013-12-10 CN CN201310671433.5A patent/CN103631601A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070244852A1 (en) * | 2006-04-06 | 2007-10-18 | Giulio Domenico D | Database query processing method and system |
CN101196926A (zh) * | 2007-12-29 | 2008-06-11 | 中国建设银行股份有限公司 | 一种数据库访问平台及其访问方法 |
CN101645074A (zh) * | 2009-09-07 | 2010-02-10 | 浪潮集团山东通用软件有限公司 | 一种访问不同类型关系型数据库的方法 |
CN102111282A (zh) * | 2009-12-24 | 2011-06-29 | 上海杉达学院 | 一种基于电信业务的信息管理***架构及其构建方法 |
Cited By (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104063232B (zh) * | 2014-07-21 | 2016-05-25 | 佛山市恒南微科技有限公司 | 一种基于数据库参数利用的***开发的方法 |
CN104063232A (zh) * | 2014-07-21 | 2014-09-24 | 佛山市恒南微科技有限公司 | 一种基于数据库参数利用的***快速开发的方法 |
CN105988792A (zh) * | 2015-02-11 | 2016-10-05 | 国核(北京)科学技术研究院有限公司 | 核电软件开发自动化***和方法 |
CN104636471A (zh) * | 2015-02-12 | 2015-05-20 | 中国农业银行股份有限公司 | 一种程序代码的查找方法及装置 |
CN105354073B (zh) * | 2015-10-27 | 2018-11-06 | 中通服公众信息产业股份有限公司 | 一种基于安卓***的单机应用网络化方法和*** |
CN105354036B (zh) * | 2015-11-26 | 2019-02-01 | 深圳市金证科技股份有限公司 | 数据库操作代码生成方法及装置 |
CN105354036A (zh) * | 2015-11-26 | 2016-02-24 | 深圳市金证科技股份有限公司 | 数据库操作代码生成方法及装置 |
CN106843822B (zh) * | 2015-12-07 | 2020-07-31 | 阿里巴巴集团控股有限公司 | 一种执行代码生成方法及设备 |
CN106843822A (zh) * | 2015-12-07 | 2017-06-13 | 阿里巴巴集团控股有限公司 | 一种执行代码生成方法及设备 |
CN105893445A (zh) * | 2015-12-15 | 2016-08-24 | 乐视网信息技术(北京)股份有限公司 | 数据处理的方法、服务器和终端设备 |
CN107103007B (zh) * | 2016-02-23 | 2020-09-15 | 菜鸟智能物流控股有限公司 | 一种sql代码转换方法及装置 |
CN107103007A (zh) * | 2016-02-23 | 2017-08-29 | 阿里巴巴集团控股有限公司 | 一种sql代码转换方法及装置 |
CN106126224A (zh) * | 2016-06-21 | 2016-11-16 | 浪潮软件集团有限公司 | 一种生成程序对象的工具、***和方法 |
CN106469064A (zh) * | 2016-09-04 | 2017-03-01 | 深圳市云智易联科技有限公司 | 代码生成方法及代码生成装置 |
CN107943466A (zh) * | 2016-10-13 | 2018-04-20 | 腾讯科技(深圳)有限公司 | 数据库访问语句生成方法、装置及设备 |
CN107943466B (zh) * | 2016-10-13 | 2021-06-01 | 腾讯科技(深圳)有限公司 | 数据库访问语句生成方法、装置及设备 |
CN106484427A (zh) * | 2016-10-21 | 2017-03-08 | 福建中金在线信息科技有限公司 | 一种代码文件的生成方法及装置 |
CN106528165B (zh) * | 2016-11-11 | 2019-10-08 | 深圳中兴网信科技有限公司 | 代码生成方法及代码生成*** |
CN106528165A (zh) * | 2016-11-11 | 2017-03-22 | 深圳中兴网信科技有限公司 | 代码生成方法及代码生成*** |
CN110019146A (zh) * | 2018-06-26 | 2019-07-16 | 珠海宏桥高科技有限公司 | 一种单表维护功能的实现方法和装置 |
CN109491649A (zh) * | 2018-11-20 | 2019-03-19 | 北京千丁互联科技有限公司 | Dao代码生成方法及计算机终端 |
CN109739493A (zh) * | 2019-01-18 | 2019-05-10 | 宜创(北京)科技有限公司 | 数据库操作语句的生成方法、装置、电子设备及存储介质 |
CN111367938A (zh) * | 2020-03-04 | 2020-07-03 | 海南金盘智能科技股份有限公司 | 数据库指令的生成方法、装置和计算机存储介质 |
CN111367938B (zh) * | 2020-03-04 | 2023-06-20 | 海南金盘智能科技股份有限公司 | 数据库指令的生成方法、装置和计算机存储介质 |
CN112286907A (zh) * | 2020-10-26 | 2021-01-29 | 中信百信银行股份有限公司 | 一种数据库配置方法、装置、电子设备和可读存储介质 |
CN112463135A (zh) * | 2020-12-11 | 2021-03-09 | 中国人寿保险股份有限公司 | 代码生成方法、代码生成器、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103631601A (zh) | 一种代码生成方法和装置 | |
US10606573B2 (en) | System and method for computer language migration using a re-architecture tool for decomposing a legacy system and recomposing a modernized system | |
US9886245B2 (en) | Software development tool using a workflow pattern that describes software applications | |
CN107918666B (zh) | 一种区块链上的数据同步方法和*** | |
CN101334728B (zh) | 一种基于xml文档描述的界面生成方法和装置 | |
US20090265301A1 (en) | Database Object Update Order Determination | |
CN111061475B (zh) | 软件代码生成方法、装置、计算机设备和存储介质 | |
US9740713B1 (en) | Dynamic modeling of data in relational databases | |
Li et al. | Transforming UML class diagrams into HBase based on meta-model | |
CN109710220B (zh) | 关系型数据库查询方法、装置、设备及存储介质 | |
CN103914290A (zh) | 一种操作命令处理方法及装置 | |
KR101791536B1 (ko) | 규칙 기반의 업무 애플리케이션 작성 및 실행 시스템 | |
CN100517222C (zh) | 支持转换引擎与映射规则相分离的模型转换装置及其方法 | |
CN104090958A (zh) | 一种基于领域本体的语义信息检索***及方法 | |
CN103049251A (zh) | 一种数据库持久层装置及数据库操作方法 | |
CN113434533A (zh) | 一种数据溯源工具构建方法、数据处理方法、装置及设备 | |
CN103197932A (zh) | 一种开发无模式文档型数据库应用的业务组件模型 | |
US8924921B2 (en) | Abstracting business logic into centralized database controls | |
Kelly et al. | What is Needed in a MetaCASE Environment? | |
Abgrall | Formalization of data integration transformations | |
Lamhaddab et al. | Model driven reverse engineering: graph modeling for mobiles platforms | |
CN111737964A (zh) | 表格动态处理方法、设备及介质 | |
Pelekh | Principles of mashup system semistructured data processing | |
US9405793B2 (en) | Native language support for intra-and interlinked data collections using a mesh framework | |
Troelsen et al. | Exploring Entity Framework Core |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20140312 |
|
RJ01 | Rejection of invention patent application after publication |