CN107818146B - 一种数据库架构方法和框架 - Google Patents

一种数据库架构方法和框架 Download PDF

Info

Publication number
CN107818146B
CN107818146B CN201710975856.4A CN201710975856A CN107818146B CN 107818146 B CN107818146 B CN 107818146B CN 201710975856 A CN201710975856 A CN 201710975856A CN 107818146 B CN107818146 B CN 107818146B
Authority
CN
China
Prior art keywords
database
basic class
new model
class
objects
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.)
Active
Application number
CN201710975856.4A
Other languages
English (en)
Other versions
CN107818146A (zh
Inventor
谢天宸
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huzhou Yinglie Intellectual Property Operation Co ltd
Original Assignee
Hangzhou Jiji Intellectual Property Operation Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hangzhou Jiji Intellectual Property Operation Co ltd filed Critical Hangzhou Jiji Intellectual Property Operation Co ltd
Priority to CN201710975856.4A priority Critical patent/CN107818146B/zh
Publication of CN107818146A publication Critical patent/CN107818146A/zh
Application granted granted Critical
Publication of CN107818146B publication Critical patent/CN107818146B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/211Schema design and management
    • G06F16/212Schema design and management with details for data modelling support
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种数据库架构方法和框架,方法包括:建立新模型基础类和扩展对象基础类,使得通过对象进行数据库操作;扩展所述新模型基础类,用于将结构化查询语言的语句自动化、格式化或者模块化,以便语句调用。框架包括:配置层,用于配置数据库相关,以共享数据库对象或验证对应表是否存在;模型层,用于建立相关基础类,满足单继承和多继承场景下的数据库使用,使得通过对象进行数据库操作。本发明能够支持模型制表,支持多线程安全和操作失误的事务回滚,操作简便,无需人工记忆和输入SQL语句,封装可靠,耦合度低,适用范围广、复用性高,使用起来轻便灵活,提高了开发效率。

Description

一种数据库架构方法和框架
技术领域
本发明涉及iOS开发数据库技术领域,特别涉及一种数据库架构方法和框架。
背景技术
数据库是一种本地持久化存储方式,在iOS开发中有三种数据库,它们分别是SQLite、CoreData以及Realm,CoreData是苹果公司推出来用于数据持久化的API,相对于SQLite来说,CoreData省去了写SQL语句的麻烦,它作为iOS原生数据库,优点是和***结合好,支持的API多,缺点则是响应速度较慢。Realm是由Y Combinator孵化的创业团队开源出来的一款跨平台的移动数据库,不仅支持Android,iOS,还支持macOS,Linux,ReactNative和Xamarin,Realm在实际运用中支持模型制表,但缺点是不支持跨线程调用。SQLite是一款轻量级数据库,还是世界上使用最多的数据库引擎,而且是开源和跨平台的,有时它的语句和MySQL类似,可以和Android后台的关系型数据库通用,但调用过程十分复杂。
目前,对于数据库的应用还有很多的扩展,如公开号为CN103793431A的专利文献公开了“一种新型的数据库访问框架”,能够提供统一的应用程序接口给程序员调用,程序员无需了解底层复杂的数据访问实现模式,通过自主设计的高级算法,使程序员只需简单的代码调用就可以实现删除、新增、更新、查询等数据库操作,支持所有主流的数据库,可以大大提高程序员的开发效率,提高程序员的编程质量。还有公开号为CN103699620A的专利文献公开了一种“面向对象中利用ORM框架实现数据库操作的方法及***”,它对所有的SQL语句进行统一处理,可自动生产SQL脚本,避免了人工记忆大量SQL语句的麻烦,提升了开发效率。
又比如FMDB,它是一套第三方框架,对SQLite的API进行了封装,使用起来更加面向对象,省去了很多麻烦、冗余的C语言代码,还能够提供多线程安全,防止数据混乱,提供了很多便利,但缺点是在项目中直接使用时,仍然不够轻便,无法脱离结构化查询语言(SQL)语句,对不熟悉数据库的人而言使用比较复杂;另外,还无法通过模型直接制表,需要对每张表一一进行维护,然而每张表近百行代码,开发成本高。针对上述存在的问题,需要对FMDB做出改进,进行功能优化。
发明内容
本发明要解决的技术问题是针对上述现有技术的不足,提供一种能够支持模型制表,支持多线程安全和事务回滚,操作简便,无需人工记忆和输入SQL语句,封装可靠,耦合度低,适用范围广以及复用性高的数据库架构方法和框架。
为了实现上述目的,本发明采用的技术方案为:
一种数据库架构方法,所述方法包括:
建立新模型基础类和扩展对象基础类,用于满足单继承和多继承场景下的数据库使用,使得通过对象进行数据库操作;
扩展所述新模型基础类,用于将结构化查询语言的语句自动化、格式化或者模块化,以便所述新模型基础类和扩展后的所述对象基础类的结构化查询语言的语句调用。
进一步地,所述方法还包括配置数据库,用于共享数据库对象或验证对应表是否存在。
进一步地,所述配置数据库包括:在数据库启动时,调用或配置数据库名;调用或配置数据库路径;单例化数据库对象;单例化同步队列。
进一步地,所述新模型基础类中包括如下定义:属性列表解析;字段约束;数据库动作;
所述扩展对象基础类中包括如下定义:主键自增;属性列表解析;字段约束;数据库动作。
进一步地,所述属性列表解析包括采用扩充C的面向对象编程语言底层的运行时特性,将映射类属性列表和属性类型列表一一对应转换为本数据库对应的格式和属性。
进一步地,所述字段约束包括设定忽略字段和利用结构化查询语言关键字针对一个字段进行约束;
所述数据库动作包括:抽象结构化查询语言语句;封装所述抽象结构化查询语言语句结果。
一种数据库框架,所述框架包括:
配置层,用于配置数据库相关,以共享数据库对象或验证对应表是否存在;
模型层,用于建立相关基础类,满足单继承和多继承场景下的数据库使用,使得通过对象进行数据库操作。
进一步地,所述模型层包括:
新模型基础类模块,用于建立新模型基础类执行属性列表解析;字段约束;数据库动作;
对象基础类扩展模块,用于扩展对象基础类执行主键自增;属性列表解析;字段约束;数据库动作。
进一步地,所述配置层包括:
调用配置模块,用于在数据库启动时,执行数据库名调用或配置,数据库路径调用或配置;
单例化模块,用于将数据库对象、同步队列单例化。
进一步地,所述模型层还包括新模型基础类扩展模块,用于扩展所述新模型基础类,将结构化查询语言的语句自动化、格式化或者模块化,以便所述新模型基础类和扩展后的所述对象基础类的结构化查询语言的语句调用。
采用上述技术方案后,本发明的有益效果是:1、通过建立新模型基础类,实现了单继承场景下通过对象进行数据库操作,使数据库支持模型制表,通过扩展原有FMDB中的对象基础类,实现了多继承场景下也能够通过对象进行数据库操作;从而扩大了数据库适用范围;
2、通过扩展所述新模型基础类,将结构化查询语言的语句自动化、格式化或者模块化以备调用,使得无需人工记忆和输入SQL语句即可实现数据库操作,提高了开发效率的同时节约了开发成本;
3、通过在数据库启动时,调用或配置数据库名;调用或配置数据库路径;单例化数据库对象;单例化同步队列;使得数据库支持多线程安全和事务回滚;
4、通过采用扩充C的面向对象编程语言底层的运行时特性进行属性列表解析,实现了SQL语句的直接调用,且更好的保障数据库不必每对一张表进行维护,直接通过模型建表的功能。
附图说明
为了更清楚地说明本发明实施例或现有技术的技术方案,附图如下:
图1为本发明实施例2中的一种数据库架构方法架构示意图;
图2为本发明实施例3中的一种数据库框架示意图。
具体实施方式
以下是本发明的具体实施例并结合附图,对本发明的技术方案作进一步的描述,但本发明并不限于这些实施例。
现有的FMDB框架是iOS开发中常用的数据库框架,它以Objective-C的方式封装了SQLite的C语言API,使用起来更加面向对象,省去了很多麻烦的、冗余的C代码,对比苹果自带的CoreData框架,更加轻量和灵活。但还是无法脱离SQL语句操作,这对不熟悉数据库的操作人员来说相对困难,对熟悉的技术人来说操作也偏繁琐,另外现有的FMDB框架不能通过模型直接制表,需要对每张表进行维护,而每张表都没有近几百行的代码,维护麻烦,开发成本高。
本发明目的就是解决以上这些缺陷,使数据库操作更轻便灵活,提高开发效率。
实施例1
本实施例提供一种数据库架构方法,所述方法包括:
建立新模型基础类和扩展对象基础类,用于满足单继承和多继承场景下的数据库使用,使得通过对象进行数据库操作;
鉴于现有FMDB框架下数据库无法通过对象直接进行建表,本实施例中,对现有FMDB框架进行了再一层的封装,建立一个新模型基础类——XTDBModel,该XTDBModel继承了原数据框架下的表,同时用代码实现封装了各种数据库操作的方法,这样能够使得数据库操作直接通过一个对象就能够进行建表,进行数据库***、删除、查询、更新等操作。
例如:
如此一来数据库操作会十分便利,只要将自定义的实体类继承自XTDBModel,就可以开始操作数据库。
进一步地,由于现有FMDB框架中扩充C的面向对象编程语言(Objective-C)中不支持多继承场景,多继承就是指子类需要继承多个父类的场景,即现有FMDB框架不支持多继承的子类继承XTDBModel,无法进行后续的数据库操作;为了支持继承了多个父类的子类能够进行数据库操作,所以对现有的对象基础类(NSObject)进行扩展,形成一个NSObject+XTFMDB的新对象基础类,封装入和新模型基础类相同的功能;NSObject是Objective-C里所有类的基类,每一个自定义实体类进行数据库操作时,均会继承NSObject中的数据,所以扩展NSObject,可实现继承了多个父类的子类在不继承XTDBModel的场景下,也能通过一个对象使用数据库操作。这使得数据库操作更加的智能、快速和流畅,也扩大了数据库适用范围。
扩展所述新模型基础类,用于将结构化查询语言(SQL)的语句自动化、格式化或者模块化,以便所述新模型基础类和扩展后的所述对象基础类的SQL的语句调用。
现有的FMDB框架在使用时,必须依靠SQL语句的输入,这对于不熟悉数据库的人而言使用起来比较复杂,另外人工记忆和输入的方式也比较繁琐且效率低下,灵活度不够,对XTDBModel进行扩展形成一个AutoSql,负责将SQL语句自动化、格式化、模块化,方便XTDBModel和NSObject+FMDB对其进行调用,实现无需人工记忆和输入SQL语句的灵活操作,提高了数据库开发效率。
实施例2
如图1所示,本实施例与之前实施例的区别在于,本实施例提供一种更加详细的数据库架构方法,所述方法还包括配置数据库,用于共享数据库对象或验证对应表是否存在。
所述配置数据库包括:在数据库启动时,调用或配置数据库名;调用或配置数据库路径;单例化数据库对象;单例化同步队列。这些都是为数据的初始化运行做准备,方便数据库操作时更精确、更有针对性,使数据库支持多线程安全和事务回滚。
所述新模型基础类(XTDBModel)中详细的包括如下定义:属性列表解析;字段约束;数据库动作;
所述扩展对象基础类中包括如下定义:主键自增;属性列表解析;字段约束;数据库动作。
具体地:新模型基础类的建立和对象基础类的扩展实现方式基本相同,区别在于主键(PKID),PKID是FMDB模型基础类(DBModel)中自带的属性,继承DBModel的子类可以继承本实施例中的XTDBModel,故XTDBModel无需定义PKID,而本实施例中NSObject+XTFMDB是为没有继承DBModel的子类服务的,故而没有PKID属性,需要自行定义主键自增,添加PKID属性作为数字主键,确保唯一性。其中,NSObject+XTFMDB利用了Objective-C的category特性完全解耦,可完美的解决多继承的场景,同时也完美实现软件开发高内聚低耦合的精髓。
所述属性列表解析包括采用扩充C的面向对象编程语言(Objective-C)底层的运行时(Runtime)特性,Runtime***可以动态创建类和对象,本实施例中利用Runtime作类的解析,用于将映射类属性列表和属性类型列表一一对应转换为SQLite对应的格式和属性,可直接调用数据库操作的方法,使得无需像现有FMDB框架下,对每一张表进行维护,这大大缩短了数据库访问的时间,提高了效率。
所述字段约束包括设定忽略字段和利用SQL关键字针对一个字段进行约束;例如:SQL关键字约束实现如下:
(NSDictionary*)modelPropertiesSqliteKeywords
{
return@{
@"title":@"UNIQUE",...//加入想要的关键字,以空格隔开即可
};
}
设定忽略字段可通过在代码中列出和指定不想要参与建表的字段,例如一些和视图有关的属性等,使得数据库在操作时自动识别这些需要忽略操作的字段;如:(NSArray*)ignoreProperties
{
return@[
@"abcabc",...//abcabc为相应需要忽略的字段
];
}
所述数据库动作定义包括:抽象SQL语句;封装所述抽象SQL语句结果。数据库动作执行的前提是需要相对应的数据函数定义,而定义的方式如下:首先,将业务使用的SQL语句完全分离,抽象出增删改查的各种可能遇到的情况,例如批量***、更新;按条件查询等,抽象时,分离出操作对象和查询条件作为参数和SQL语句结合封装成可用的数据库动作集合,以备调用。
目前本实施例中,抽象出的操作方法为11种,分别是***单个(insert)、批量***(insertList)、更新单个(update)、批量更新(updateList)、查询表中所有数据(selectAll)、按条件查询(selectWhere)、按条件查询单个(findFirstWhere)、按条件查询是否包含(hasModelWhere)、删除当前Model(deleteModel)、按条件删除某Model(deleteModelWhere)、删除本表(dropTable),均各自有相关的代码实现,基本适用于各种对数据表的操作。
本实施例是对FMDB框架的进一步优化,集成了它原有的优良特性,支持多线程安全,支持操作失败事务回滚,能有效防止数据的混乱;并增加了新的功能优化,支持低耦合,多场景的模型快速建表,支持脱离SQL语句输入的操作,不与原有的FMDB框架产生冲突,封装了多种操作方法,满足多种数据库表的操作需求,实现简单,操作方便、复用性高,可提高开发效率。
实施例3
如图2所示,一种数据库框架,所述框架包括:
配置层100,用于配置数据库相关,以共享数据库对象或验证对应表是否存在;
模型层200,用于建立相关基础类,满足单继承和多继承场景下的数据库使用,使得通过对象进行数据库操作。
所述模型层200包括:
新模型基础类模块210,用于建立新模型基础类执行属性列表解析;字段约束;数据库动作;
对象基础类扩展模块220,用于扩展对象基础类执行主键自增;属性列表解析;字段约束;数据库动作。
所述配置层100包括:
调用配置模块110,用于在数据库启动时,执行数据库名调用或配置,数据库路径调用或配置;
单例化模块120,用于将数据库对象、同步队列单例化。
所述模型层200还包括新模型基础类扩展模块230,用于扩展所述新模型基础类,将SQL的语句自动化、格式化或者模块化,以便所述新模型基础类和扩展后的所述对象基础类的SQL的语句调用。
需要说明的是,本实施例提供的框架是依据上述实施例中指出的数据库架构方法来实现的,为上述实施例中指出的数据库架构方法提供物理支持和服务。
本实施例的数据库框架访问操作实现过程如下:鉴于有些部分与现有的FMDB框架下的操作相同,故此处不再赘述,首先,在配置层100会在数据库应用APP启动时调用配置函数,即执行数据库名调用或配置,数据库路径调用或配置,将数据库对象、同步队列单例化的动作,以便共享数据库对象或验证对应表是否存在;配置层100配置完成后,需要我们自定义一个类Model,并且在其中定义一些属性,如年龄性别等等,然后让此类继承于新模型基础类模块210中的新模型基础类,新模型基础类会在内部解析这个Model,并且生成对应的一个数据库元组类型,并将对应字段的类型一一转换;数据库访问过程中,我们还可以对Model设定约束,例如有哪些字段不参与建表,或者指定姓名的唯一性,指定对应的操作方法等;然后,调用新模型基础类扩展模块230中封装的SQL语句,操作数据库动作,目前为11种,增删改查,单个批量等,详细参见实施例2,无须再手写SQL语句,就能得到我们需要的结果,操作灵活且轻便。
本文中所描述的具体实施例仅仅是对本发明精神作举例说明。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,但并不会偏离本发明的精神或者超越所附权利要求书所定义的范围。

Claims (5)

1.一种数据库架构方法,其特征在于,所述方法包括:
建立新模型基础类和扩展对象基础类,用于满足单继承和多继承场景下的数据库使用,使得通过对象进行数据库操作;
扩展所述新模型基础类,用于将结构化查询语言的语句自动化、格式化或者模块化,以便所述新模型基础类和扩展后的所述对象基础类的结构化查询语言的语句调用;
所述新模型基础类中包括如下定义:属性列表解析;字段约束;数据库动作;
所述扩展对象基础类中包括如下定义:主键自增;属性列表解析;字段约束;数据库动作;
所述属性列表解析包括采用扩充C的面向对象编程语言底层的运行时特性,将映射类属性列表和属性类型列表一一对应转换为本数据库对应的格式和属性;
所述字段约束包括设定忽略字段和利用结构化查询语言关键字针对一个字段进行约束;
所述数据库动作包括:抽象结构化查询语言语句,将业务使用的SQL语句完全分离,抽象出增删改查,分离出操作对象和查询条件作为参数和SQL语句结合封装成可用的数据库动作集合;
所述建立新模型基础类包括:
对现有FMDB框架进行再一层封装,建立一个新模型基础类XTDBModel,该XTDBModel继承了所述FMDB框架下的表,同时用代码封装了各种数据库操作的方法,使得数据库操作直接通过一个对象就能够进行建表并进行数据库操作;
所述扩展对象基础类包括:
对现有的对象基础类NSObject进行扩展,形成一个NSObject+XTFMDB的新对象基础类,封装入和所述新模型基础类相同的功能。
2.根据权利要求1所述的一种数据库架构方法,其特征在于,所述方法还包括配置数据库,用于共享数据库对象或验证对应表是否存在。
3.根据权利要2所述的一种数据库架构方法,其特征在于,所述配置数据库包括:在数据库启动时,调用或配置数据库名;调用或配置数据库路径;单例化数据库对象;单例化同步队列。
4.一种数据库框架***,其特征在于,所述***包括:
配置层,用于配置数据库相关,以共享数据库对象或验证对应表是否存在;
模型层,用于建立相关基础类,满足单继承和多继承场景下的数据库使用,使得通过对象进行数据库操作;
所述模型层包括新模型基础类模块,用于建立新模型基础类执行属性列表解析;字段约束;数据库动作;
对象基础类扩展模块,用于扩展对象基础类执行主键自增;属性列表解析;字段约束;数据库动作;
所述模型层还包括新模型基础类扩展模块,用于扩展所述新模型基础类,将结构化查询语言的语句自动化、格式化或者模块化,以便所述新模型基础类和扩展后的所述对象基础类的结构化查询语言的语句调用;
所述属性列表解析包括采用扩充C的面向对象编程语言底层的运行时特性,将映射类属性列表和属性类型列表一一对应转换为本数据库对应的格式和属性;
所述字段约束包括设定忽略字段和利用结构化查询语言关键字针对一个字段进行约束;
所述数据库动作包括:抽象结构化查询语言语句,将业务使用的SQL语句完全分离,抽象出增删改查,分离出操作对象和查询条件作为参数和SQL语句结合封装成可用的数据库动作集合;
所述新模型基础类模块,用于对现有FMDB框架进行再一层封装,建立一个新模型基础类XTDBModel,该XTDBModel继承了所述FMDB框架下的表,同时用代码封装了各种数据库操作的方法,使得数据库操作直接通过一个对象就能够进行建表并进行数据库操作;
所述对象基础类扩展模块,用于对现有的对象基础类NSObject进行扩展,形成一个NSObject+XTFMDB的新对象基础类,封装入和所述新模型基础类相同的功能。
5.根据权利要求4所述的一种数据库框架***,其特征在于,所述配置层包括:
调用配置模块,用于在数据库启动时,执行数据库名调用或配置,数据库路径调用或配置;
单例化模块,用于将数据库对象、同步队列单例化。
CN201710975856.4A 2017-10-19 2017-10-19 一种数据库架构方法和框架 Active CN107818146B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710975856.4A CN107818146B (zh) 2017-10-19 2017-10-19 一种数据库架构方法和框架

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710975856.4A CN107818146B (zh) 2017-10-19 2017-10-19 一种数据库架构方法和框架

Publications (2)

Publication Number Publication Date
CN107818146A CN107818146A (zh) 2018-03-20
CN107818146B true CN107818146B (zh) 2023-09-01

Family

ID=61608153

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710975856.4A Active CN107818146B (zh) 2017-10-19 2017-10-19 一种数据库架构方法和框架

Country Status (1)

Country Link
CN (1) CN107818146B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108804573A (zh) * 2018-05-23 2018-11-13 北京五八信息技术有限公司 一种数据库的跨平台处理方法、装置、设备及存储介质
CN109634936A (zh) * 2018-12-13 2019-04-16 山东浪潮通软信息科技有限公司 一种在iOS***上处理大批量数据的存储方法
CN113961558B (zh) * 2021-10-08 2022-06-14 上海信宝博通电子商务有限公司 前端数据存储方法、装置及存储介质
CN115203176B (zh) * 2022-09-15 2023-03-07 太平金融科技服务(上海)有限公司深圳分公司 数据库操作方法、装置、设备、存储介质和程序产品

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101183370A (zh) * 2007-12-13 2008-05-21 浪潮通信信息***有限公司 基于类定义和关系定义的拓扑建模方法
CN102841889A (zh) * 2011-06-20 2012-12-26 中兴通讯股份有限公司 一种基于orm架构的高效数据库访问的实现方法及装置
CN102945230A (zh) * 2012-10-17 2013-02-27 刘运通 一种基于语义匹配驱动的自然语言知识获取方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101183370A (zh) * 2007-12-13 2008-05-21 浪潮通信信息***有限公司 基于类定义和关系定义的拓扑建模方法
CN102841889A (zh) * 2011-06-20 2012-12-26 中兴通讯股份有限公司 一种基于orm架构的高效数据库访问的实现方法及装置
CN102945230A (zh) * 2012-10-17 2013-02-27 刘运通 一种基于语义匹配驱动的自然语言知识获取方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Objective-C的"多继承";念茜;《CSDN》;20130524;第1-5页 *

Also Published As

Publication number Publication date
CN107818146A (zh) 2018-03-20

Similar Documents

Publication Publication Date Title
CN107818146B (zh) 一种数据库架构方法和框架
US20180239622A1 (en) System and method for generating a dynamic runtime-modifiable user interface
CN110825369A (zh) 一种基于java语言的代码自动生成的方法
CN111897570B (zh) 一种基于Maven插件的多依赖项文件提取方法及装置
US7565364B1 (en) Annotation processor discovery
CN109933571B (zh) 数据库设计文档生成方法、装置及计算机可读存储介质
US8713514B2 (en) Heterogeneous language data typing without executable regeneration
US10437564B1 (en) Object mapping and conversion system
US20130332449A1 (en) Generating data processing code from a directed acyclic graph
CN111506314B (zh) 项目开发的方法、装置、服务器及介质
GB2459572A (en) Producing configuration file wrappers for resources based on metadata
CN111782675B (zh) 生成数据库脚本的方法、装置及计算机可读存储介质
US7499956B1 (en) Annotation processing from source files and class files
WO2018233673A1 (zh) 一种控制器中模型代码配置方法和装置、存储介质
CN116560642A (zh) 代码生成方法及其装置、电子设备及存储介质
US7444618B2 (en) Automatic generation of batch programs with identification, insertion of invariables, declarative statements and variables with the use of place-marks
CN113821565A (zh) 一种多数据源同步数据的方法
CN110457013B (zh) 程序组件配置装置及方法
US20150106796A1 (en) Class loading device for a java runtime environment, cluster system and method of executing a function
CN112487019B (zh) 用于OpenGauss数据库的解析动态SQL的方法及***
CN115129740B (zh) 一种云原生环境下的分布式微服务数据库更新方法及***
CN110659022B (zh) 一种基于Java自动调用Python脚本的方法
CN113342399B (zh) 应用项目的结构配置方法、装置及可读存储介质
US20200042297A1 (en) Property filtering
CN114064148B (zh) 数据处理方法、装置、电子设备及存储介质

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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20201123

Address after: Room 10242, No. 260, Jiangshu Road, Xixing street, Binjiang District, Hangzhou City, Zhejiang Province

Applicant after: Hangzhou Jiji Intellectual Property Operation Co.,Ltd.

Address before: 201616 Shanghai city Songjiang District Sixian Road No. 3666

Applicant before: Phicomm (Shanghai) Co.,Ltd.

GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20231225

Address after: 313000 room 1019, Xintiandi commercial office, Yishan street, Wuxing District, Huzhou, Zhejiang, China

Patentee after: Huzhou YingLie Intellectual Property Operation Co.,Ltd.

Address before: Room 10242, No. 260, Jiangshu Road, Xixing street, Binjiang District, Hangzhou City, Zhejiang Province

Patentee before: Hangzhou Jiji Intellectual Property Operation Co.,Ltd.