CN108984236A - 一种虚拟化管理平台的实现方法及设备 - Google Patents
一种虚拟化管理平台的实现方法及设备 Download PDFInfo
- Publication number
- CN108984236A CN108984236A CN201810893577.8A CN201810893577A CN108984236A CN 108984236 A CN108984236 A CN 108984236A CN 201810893577 A CN201810893577 A CN 201810893577A CN 108984236 A CN108984236 A CN 108984236A
- Authority
- CN
- China
- Prior art keywords
- database
- class
- base class
- different
- dao
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4488—Object-oriented
- G06F9/449—Object-oriented method invocation or resolution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4488—Object-oriented
- G06F9/4492—Inheritance
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Devices For Executing Special Programs (AREA)
Abstract
本发明公开了一种虚拟化管理平台的实现方法及设备,涉及虚拟化管理平台技术。本发明公开的虚拟化管理平台的实现方法,包括:针对数据库中各种数据库表提炼出共有的数据库操作,作为共有接口方法;利用Java泛型以及继承功能,将所述共用接口方法提炼构成数据库基类;将所述数据库基类作为父类,根据不同的数据库表对象派生不同的子类,实现各种数据库操作。本申请技术方案实现了DAO层的代码提炼,简化DAO层的设计,节省了大量的重复性代码,提高了代码的可维护性以及可读性。
Description
技术领域
本发明涉及虚拟化管理平台技术,特别涉及一种虚拟化管理平台的DAO(Database,Access,Object,数据库访问对象)层设计与实现。
背景技术
云计算迅速发展,现在企业都在搭建自己的私有云服务,这些云服务一般都是通过虚拟化平台创建虚拟机集群实现,比如华为虚拟化、VMware虚拟化等。为了满足不同的业务需求,很多企业都拥有不止一套的虚拟化服务,为了对不同虚拟化平台进行统一管理,虚拟化管理平台应运而生。云管理平台为了兼容不同的虚拟化,有不同的架构设计,包括controller层、service层,DAO层、适配层等。
发明内容
本发明公开了一种虚拟化管理平台的实现方法及设备,可以解决对不同虚拟化平台的统一管理的问题。
本发明公开了一种虚拟化管理平台的实现方法,包括:
针对数据库中各种数据库表提炼出共有的数据库操作,作为共有接口方法;
利用Java泛型以及继承功能,将所述共用接口方法提炼构成数据库基类;
将所述数据库基类作为父类,根据不同的数据库表对象派生不同的子类,实现各种数据库操作。
可选地,上述方法中,所述共有接口方法包括如下一种或几种:
保存,更新,删除,查询。
可选地,上述方法中,将所述数据库基类作为父类,根据不同的数据库表对象派生不同的子类,实现各种数据库操作,包括:
接收到对任一数据对象发起的数据库操作时,创建该数据对象对应的数据库表的数据库访问对象DAO类,创建的DAO类继承数据库基类,并在继承数据库基类时指定父类的Java泛型类,根据所发起的数据库操作进行处理。
可选地,上述方法中,所述数据库操作包括如下一种或几种:
增加,删除,修改,查询。
本文还公开了一种虚拟化管理平台的实现设备,包括:
第一模块,针对数据库中各种数据库表提炼出共有的数据库操作,作为共有接口方法;
第二模块,利用Java泛型以及继承功能,将所述共用接口方法提炼构成数据库基类;
第三模块,将所述数据库基类作为父类,根据不同的数据库表对象派生不同的子类,实现各种数据库操作。
可选地,上述设备中,所述共有接口方法包括如下一种或几种:
保存,更新,删除,查询。
可选地,上述设备中,所述第三模块,将所述数据库基类作为父类,根据不同的数据库表对象派生不同的子类,实现各种数据库操作,包括:
接收到对任一数据对象发起的数据库操作时,创建该数据对象对应的数据库表的数据库访问对象DAO类,创建的DAO类继承数据库基类,并在继承数据库基类时指定父类的Java泛型类,根据所发起的数据库操作进行处理。
可选地,上述设备中,所述数据库操作包括如下一种或几种:
增加,删除,修改,查询。
本申请技术方案提供一种虚拟化管理平台的实现方法及设备,通过将数据库的增删改查操作(即通用方法)的提炼,在基类中通过Java的泛型以及继承功能实现,不同的数据库表对象,通过实现基类完成面向对象的数据库增、删、改、查操作,实现了DAO层的代码提炼,简化DAO层的设计,节省了大量的重复性代码,提高了代码的可维护性以及可读性。
附图说明
图1为本发明实施例中虚拟化管理平台的实现过程示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下文将结合具体实施方式对本发明技术方案作进一步详细说明。需要说明的是,在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。
实施例1
本申请发明人提出一种虚拟化管理平台的DAO层设计与实现,主要是简化现有的DAO层设计,提供更利于扩展和维护的DAO层实现,主要方式是利用Java泛型以及继承功能,将公用的方法提炼出来形成一个父类,然后根据不同的数据库表对象派生不同的子类。
基于上述思想,本实施例提供一种虚拟化管理平台的实现方法,主要包括如下操作:
针对数据库中各种数据库表提炼出共有的数据库操作,作为共有接口方法;
利用Java泛型以及继承功能,将所述共用接口方法提炼构成数据库基类;
将所述数据库基类作为父类,根据不同的数据库表对象派生不同的子类,实现各种数据库操作。
其中,将所述数据库基类作为父类,根据不同的数据库表对象派生不同的子类,实现各种数据库操作的实施过程可以参考如下方式:
接收到对任一数据对象发起的数据库操作时,创建该数据对象对应的数据库的DAO类(即相当于数据库对象派生出的子类),创建的DAO类继承数据库基类,并在继承数据库基类时指定父类的Java泛型类。本实施例中,Java泛型类指Java数据类。
下面结合附图说明上述方法的一种具体实施方式。
一种虚拟化管理平台的实现方法,主要针对的是DAO层设计与实现,该过程如图1所示,包括如下操作:
步骤100:共有接口方法提炼;
其中,接口方法提炼,提炼出共有的数据库操作,比如保存,更新,删除,查询等功能,提炼出用于基类实现的共有方法集。本实施例中,可采用如下代码实现接口方法的提炼,但此仅为举例说明,本申请对于接口方法提炼所采用的具体编程方式不做特别限制。
步骤200:数据库基类设计;
对于数据库基类设计,为核心设计,主要应用Java泛型以及继承功能实现。将上述的共有接口方法在该数据库基类中实现。具体实施可参考如下代码。但此具体实施方式仅为举例说明,本申请对于数据库基类设计所采用的具体编程方式不做特别限制。
步骤300:DAO层实现。
对于DAO层设计,该层的设计主要是数据库操作。对不同的数据对象,对应到不同的数据库表,并对数据进行增、删、改、查等的数据库操作。比如创建一个数据类为Student类(可参见如下代码实现)。
其中,本实施例中的数据类中每一个属性分别对应数据库表中的一个表头,每一个属性的值即为数据库表中一条数据。
要对该Student类的对象进行数据库操作则需要创建一个DAO类(即Student操作类),该DAO类则可以继承数据库基类(即继承数据库基类BaseHibernate DAO),只需要在继承的时候指定父类的Java泛型类(此处为Student类)即可,具体实施方式可参见如下代码。这样,每一张数据库表只需要对应一个DAO类,而对于基本的增、删、改、查操作则可以直接使用该DAO类的父类的方法实现即可,从而可以省去大量的重复代码。要说明的是,如下所示的具体实施方式仅为举例说明,本申请对于实现DAO层所采用的具体编程方式不做特别限制。
实施例2
本实施例提供一种虚拟化管理平台的实现设备,至少包括如下三个模块。
第一模块,针对数据库中各种数据库表提炼出共有的数据库操作,作为共有接口方法;
本实施例中,提炼出的共有接口方法包括如下一种或几种:
保存,更新,删除,查询。
第二模块,利用Java泛型以及继承功能,将所述共用接口方法提炼构成数据库基类;
第三模块,将所述数据库基类作为父类,根据不同的数据库表对象派生不同的子类,实现各种数据库操作。
本实施例中,数据库操作包括如下一种或几种:
增加,删除,修改,查询。
具体地,上述第三模块,可以在接收到对任一数据对象发起的数据库操作时,创建该数据对象对应的数据库表的DAO类,创建的DAO类继承数据库基类,并在继承数据库基类时指定父类的Java泛型类,根据所发起的数据库操作进行处理即可。
以创建一个数据类为Student类为例,说明上述设备实现虚拟化管理平台的设计的过程。
首先,可以参见如下代码创建数据类,即Student类。其中,本实施例中的数据类中每一个属性分别对应数据库表中的一个表头,每一个属性的值即为数据库表中一条数据。
当要对该Student类的对象进行数据库操作时,需要创建一个DAO类(即Student操作类),该DAO类则可以继承数据库基类(即为上文所述继承数据库基类BaseHibernateDAO),在继承的时候需要指定父类的Java泛型类(此处为Student类,具体实施方式可参见如下代码)。对于基本的增、删、改、查操作就可以直接使用父类的方法实现,如此可以省去大量的重复代码,因为每一张数据库表都需要对应一个DAO类。要说明的是,如下所示的具体实施方式仅为举例说明,本申请对于实现DAO层所采用的具体编程方式不做特别限制。
从上述实施例可以看出,本申请技术方案提供一种虚拟化管理平台的DAO层设计与实现方案,简化了现有的DAO层设计,提供更利于扩展和维护的DAO层实现,主要方式是通过将数据库的增、删、改、查操作(即通用方法)的提炼,利用Java泛型以及继承功能,将共用的方法提炼出来形成一个父类,然后根据不同的数据库表对象派生不同的子类,节省了大量的重复性代码,提高了代码的可维护性以及可读性。
本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本申请不限制于任何特定形式的硬件和软件的结合。
以上所述,仅为本发明的较佳实例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种虚拟化管理平台的实现方法,其特征在于,包括:
针对数据库中各种数据库表提炼出共有的数据库操作,作为共有接口方法;
利用Java泛型以及继承功能,将所述共用接口方法提炼构成数据库基类;
将所述数据库基类作为父类,根据不同的数据库表对象派生不同的子类,实现各种数据库操作。
2.如权利要求1所述的方法,其特征在于,所述共有接口方法包括如下一种或几种:
保存,更新,删除,查询。
3.如权利要求1或2所述的方法,其特征在于,将所述数据库基类作为父类,根据不同的数据库表对象派生不同的子类,实现各种数据库操作,包括:
接收到对任一数据对象发起的数据库操作时,创建该数据对象对应的数据库表的数据库访问对象DAO类,创建的DAO类继承数据库基类,并在继承数据库基类时指定父类的Java泛型类,根据所发起的数据库操作进行处理。
4.如权利要求3所述的方法,其特征在于,所述数据库操作包括如下一种或几种:
增加,删除,修改,查询。
5.一种虚拟化管理平台的实现设备,其特征在于,包括:
第一模块,针对数据库中各种数据库表提炼出共有的数据库操作,作为共有接口方法;
第二模块,利用Java泛型以及继承功能,将所述共用接口方法提炼构成数据库基类;
第三模块,将所述数据库基类作为父类,根据不同的数据库表对象派生不同的子类,实现各种数据库操作。
6.如权利要求5所述的设备,其特征在于,所述共有接口方法包括如下一种或几种:
保存,更新,删除,查询。
7.如权利要求5或6所述的设备,其特征在于,所述第三模块,将所述数据库基类作为父类,根据不同的数据库表对象派生不同的子类,实现各种数据库操作,包括:
接收到对任一数据对象发起的数据库操作时,创建该数据对象对应的数据库表的数据库访问对象DAO类,创建的DAO类继承数据库基类,并在继承数据库基类时指定父类的Java泛型类,根据所发起的数据库操作进行处理。
8.如权利要求7所述的设备,其特征在于,所述数据库操作包括如下一种或几种:
增加,删除,修改,查询。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810893577.8A CN108984236A (zh) | 2018-08-08 | 2018-08-08 | 一种虚拟化管理平台的实现方法及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810893577.8A CN108984236A (zh) | 2018-08-08 | 2018-08-08 | 一种虚拟化管理平台的实现方法及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108984236A true CN108984236A (zh) | 2018-12-11 |
Family
ID=64556180
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810893577.8A Pending CN108984236A (zh) | 2018-08-08 | 2018-08-08 | 一种虚拟化管理平台的实现方法及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108984236A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110377393A (zh) * | 2019-06-26 | 2019-10-25 | 苏州浪潮智能科技有限公司 | 一种虚拟化管理平台的实现方法、装置和存储介质 |
CN110659017A (zh) * | 2019-09-19 | 2020-01-07 | 上海客佳信息科技有限公司 | 一种外部请求处理方法及相关装置 |
CN112272218A (zh) * | 2020-10-16 | 2021-01-26 | 苏州浪潮智能科技有限公司 | 云平台实例资源操作方法、装置、计算机设备及存储介质 |
CN113885863A (zh) * | 2021-10-21 | 2022-01-04 | 上海波顿诺华智能科技有限公司 | 实现soa服务的方法、装置、电子设备和存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1737751A (zh) * | 2004-08-18 | 2006-02-22 | 华为技术有限公司 | 实现对象持续化服务的系统及其方法 |
US20060218174A1 (en) * | 2005-03-23 | 2006-09-28 | Cook John L Iii | Method for coordinating schema and data access objects |
CN102541996A (zh) * | 2011-11-22 | 2012-07-04 | 大唐软件技术股份有限公司 | 一种基于jdbc的数据访问层构建方法及装置 |
CN105138646A (zh) * | 2015-08-26 | 2015-12-09 | 浪潮集团有限公司 | 一种基于Hibernate的数据库操作方法 |
CN108073393A (zh) * | 2018-01-18 | 2018-05-25 | 山东浪潮通软信息科技有限公司 | 一种基于ef框架的仓储设计方法 |
-
2018
- 2018-08-08 CN CN201810893577.8A patent/CN108984236A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1737751A (zh) * | 2004-08-18 | 2006-02-22 | 华为技术有限公司 | 实现对象持续化服务的系统及其方法 |
US20060218174A1 (en) * | 2005-03-23 | 2006-09-28 | Cook John L Iii | Method for coordinating schema and data access objects |
CN102541996A (zh) * | 2011-11-22 | 2012-07-04 | 大唐软件技术股份有限公司 | 一种基于jdbc的数据访问层构建方法及装置 |
CN105138646A (zh) * | 2015-08-26 | 2015-12-09 | 浪潮集团有限公司 | 一种基于Hibernate的数据库操作方法 |
CN108073393A (zh) * | 2018-01-18 | 2018-05-25 | 山东浪潮通软信息科技有限公司 | 一种基于ef框架的仓储设计方法 |
Non-Patent Citations (1)
Title |
---|
DH626995617: "JEE数据库基本操作Basedao层通用接口的实现", 《开发者知识库》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110377393A (zh) * | 2019-06-26 | 2019-10-25 | 苏州浪潮智能科技有限公司 | 一种虚拟化管理平台的实现方法、装置和存储介质 |
CN110659017A (zh) * | 2019-09-19 | 2020-01-07 | 上海客佳信息科技有限公司 | 一种外部请求处理方法及相关装置 |
CN110659017B (zh) * | 2019-09-19 | 2024-03-29 | 上海客佳信息科技有限公司 | 一种外部请求处理方法及相关装置 |
CN112272218A (zh) * | 2020-10-16 | 2021-01-26 | 苏州浪潮智能科技有限公司 | 云平台实例资源操作方法、装置、计算机设备及存储介质 |
CN112272218B (zh) * | 2020-10-16 | 2023-01-06 | 苏州浪潮智能科技有限公司 | 云平台实例资源操作方法、装置、计算机设备及存储介质 |
CN113885863A (zh) * | 2021-10-21 | 2022-01-04 | 上海波顿诺华智能科技有限公司 | 实现soa服务的方法、装置、电子设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110799960B (zh) | 数据库租户迁移的系统和方法 | |
US9760589B2 (en) | Mechanism for deprecating object oriented data | |
CN108984236A (zh) | 一种虚拟化管理平台的实现方法及设备 | |
US8694557B2 (en) | Extensibility of metaobjects | |
KR102177190B1 (ko) | 유연한 스키마를 사용한 데이터 관리 | |
US11893046B2 (en) | Method and apparatus for implementing a set of integrated data systems | |
CN109144994A (zh) | 索引更新方法、系统及相关装置 | |
CN104021145B (zh) | 一种混合业务并发访问的方法和装置 | |
EP2891993A1 (en) | Method for virtualizing large-scale distributed heterogeneous data | |
US9507820B1 (en) | Data modeling system for runtime schema extensibility | |
CN101836186A (zh) | 用于在隔离环境之间通信的方法和系统 | |
CN102254021A (zh) | 基于虚拟机管理系统的数据库构建方法 | |
CN107704309A (zh) | 基于Docker构建标准化运行环境的方法及系统 | |
US10489356B1 (en) | Truncate and append database operation | |
US11720607B2 (en) | System for lightweight objects | |
US9513879B2 (en) | Model augmentation in a model-driven application development environment | |
CN112785248B (zh) | 人力资源数据跨组织交互方法、装置、设备和存储介质 | |
CN108108392B (zh) | 商品数据管理方法、装置、计算机设备及存储介质 | |
CN103870605A (zh) | 面向对象的数据库虚拟镜像实现方法 | |
CN102289448B (zh) | 访问数据访问层的实体 | |
US9009731B2 (en) | Conversion of lightweight object to a heavyweight object | |
US8244778B1 (en) | Customization of types using default aspects | |
EP2590089B1 (en) | Rule type columns in database | |
CN110083339A (zh) | 一种新型计算机编程语言 | |
US20080059468A1 (en) | Method, system, and program product for grouping statements against database objects |
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: 20181211 |
|
RJ01 | Rejection of invention patent application after publication |