CN101430706A - 一种复杂对象的子对象验权方法、系统及设备 - Google Patents

一种复杂对象的子对象验权方法、系统及设备 Download PDF

Info

Publication number
CN101430706A
CN101430706A CNA2008102172223A CN200810217222A CN101430706A CN 101430706 A CN101430706 A CN 101430706A CN A2008102172223 A CNA2008102172223 A CN A2008102172223A CN 200810217222 A CN200810217222 A CN 200810217222A CN 101430706 A CN101430706 A CN 101430706A
Authority
CN
China
Prior art keywords
subobject
power
complex object
authority
condition
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.)
Granted
Application number
CNA2008102172223A
Other languages
English (en)
Other versions
CN101430706B (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.)
Kingdee Software China Co Ltd
Original Assignee
Kingdee Software China 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 Kingdee Software China Co Ltd filed Critical Kingdee Software China Co Ltd
Priority to CN2008102172223A priority Critical patent/CN101430706B/zh
Publication of CN101430706A publication Critical patent/CN101430706A/zh
Application granted granted Critical
Publication of CN101430706B publication Critical patent/CN101430706B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明适用于计算机领域,提供了一种复杂对象的子对象验权方法、系统及设备,所述方法包括下述步骤:为复杂对象和子对象分别定义一用于标识当前用户是否有权限访问的权限标识属性;获取用户预先定义的针对复杂对象和子对象的验权条件;根据所述复杂对象和子对象的验权条件查询数据库,返回对应的权限数据列;根据所述权限数据列设置复杂对象和子对象的权限标识属性;返回带权限标识属性的对象。由于在对子对象进行验权时,每层子对象只需要一次数据库查询操作,从而提高了复杂对象的子对象验权效率。

Description

一种复杂对象的子对象验权方法、系统及设备
技术领域
本发明属于计算机领域,尤其涉及一种对象关系映射中的复杂对象的子对象验权方法、系统及设备。
背景技术
对象关系映射(Object Relational Mapping,ORM)是一种将关系数据库中表的数据映射成为对象,以使开发人员把对数据库的操作转化为对对象的操作,便于开发人员以面向对象的思想来实现对数据库操作的技术。
在ORM中,一般一个数据库表对应一个业务实体,一个业务实体包括多个业务对象,复杂对象与子对象则分别映射到不同的数据库表。在访问多层的复杂对象(如含有若干子对象的对象)时,由于其下属的每个子对象的权限可能不同,从而需要对访问其下属的所有子对象的用户的权限进行验证,而验权操作最终均被转换成对数据库的查询来执行返回,这样当对象关系层次较多时,对于深层子对象的验权操作将比较困难,需要软件开发人员编写大量的数据库查询代码和系统控制逻辑才能实现。
目前Java平台上比较常见的开源ORM实现框架有Hibernate等,提供了对标准对象/关系(Object/Relational,O/R)映射功能的轻量级封装。Hibernate的特点是提供了数据查询和数据缓存功能,大量使用反射和运行时字节码生成。Hibernate的工作原理是通过文件(一般有两种:xml文件和properties文件)把值对象和数据库表之间建立起一个映射关系。这样只需要通过操作这些值对象和Hibernate提供的一些基本类,就可以达到使用数据库的目的。例如使用Hibernate的查询,可以直接返回包含某个值对象的列表(List),而不必向传统的Java数据库连接(Java Database Connectivity,JDBC)访问方式一样,把结果集的数据逐个装载到一个值对象中,为编码工作节约了大量的时间。
然而现有的ORM框架在对复杂对象的子对象进行验权时,需要针对该对象的每个子对象分别进行查询来获取用户对该对象的子对象的权限,然后将权限查询结果返回给系统控制逻辑,同时由于需要对所有子对象进行验权,因此还需要遍历整个复杂对象集合,从而使具有两层关系对象映射的子对象验权时,访问数据库的次数达到子对象数+1次,当对三层或者更深层次的关系对象映射进行子对象验权时,要实现以上验权逻辑需要付出庞大的代码代价,且对子对象验权的复杂程度将随着对象关系层次数的增加以几何级数向上递增,从而访问数据库次数过多,导致对象关系映射中复杂对象的子对象验权效率低下。
发明内容
本发明的目的在于提供一种复杂对象的子对象验权方法,旨在解决现有的对象关系映射中复杂对象的子对象验权效率低下的问题。
本发明是这样实现的,一种复杂对象的子对象验权方法,所述方法包括下述步骤:
为复杂对象和子对象分别定义一用于标识当前用户是否有权限访问的权限标识属性;
获取用户预先定义的针对复杂对象和子对象的验权条件;
根据所述复杂对象和子对象的验权条件查询数据库,返回对应的权限数据列;
根据所述权限数据列设置复杂对象和子对象的权限标识属性;
返回带权限标识属性的对象。
本发明的另一目的在于提供一种复杂对象的子对象验权系统,所述系统包括:
权限标识属性定义单元,用于为复杂对象和子对象分别定义一用于标识当前用户是否有权限访问的权限标识属性;
验权条件获取单元,用于获取用户预先定义的针对复杂对象和子对象的验权条件;
对象验权单元,用于根据所述复杂对象和子对象的验权条件查询数据库,返回对应的权限数据列;
权限标识属性设置单元,用于根据所述权限数据列设置复杂对象和子对象的权限标识属性;
对象返回单元,用于返回带权限标识属性的对象。
本发明的另一目的在于提供一种包括所述复杂对象的子对象验权系统的复杂对象的子对象验权设备。
在本发明实施例中,在本发明实施例中,通过为每个对象定义一用于标识当前用户是否有权限访问的权限标识属性;将用户定义的针对复杂对象和子对象的验权条件作为数据库查询参数查询数据库,返回对应的权限数据列,根据权限数据列中对应的数值设置分别复杂对象和子对象的权限标识属性,由于在对子对象进行验权时,每层子对象只需要一次数据库查询操作,从而提高了复杂对象的子对象验权效率。
附图说明
图1是本发明实施例提供的复杂对象的子对象验权方法的实现流程图;
图2是本发明实施例提供的复杂对象的子对象验权系统的结构框图;
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
在本发明实施例中,通过为每个对象定义一用于标识当前用户是否有权限访问的权限标识属性;将用户定义的针对复杂对象和子对象的验权条件作为数据库查询参数查询数据库,返回对应的权限数据列,根据权限数据列中对应的数值设置分别复杂对象和子对象的权限标识属性,从而实现一种简便、高效的复杂对象的子对象验权方法。
在对象关系映射中,对于复杂的应用系统来说,一个对象下面可能有若干个子对象,每个子对象下面可能还有子对象,根据对象之间的层次关系,可以形成树状的对象树结构,其中复杂对象作为对象树结构的根结点,复杂对象下的子对象作为对象树结构的子结点。当应用系统需要对复杂对象以及复杂对象下的子对象进行验权时,一般均是对由该对象以及该对象的各个层次子对象构成的对象树进行验权,即要对该对象的子对象进行验权。
图1示出了本发明实施例提供的复杂对象的子对象验权方法的实现流程,详述如下:
在步骤S101中,为复杂对象和子对象分别定义一用于标识当前用户是否有权限访问的权限标识属性(采用bVerify表示)。其中复杂对象和子对象的权限标识属性的数据类型为布尔类型。
在步骤S102中,获取用户预先定义的针对复杂对象和子对象的验权条件。
在本发明实施例中,验权条件通常是在软件运行过程中,根据应用系统的需要及具体用户角色不同而分别设置的。例如对于金额较大的某些业务数据,属于比较机密的信息,可以设置为只允许业务经理查看,而普通业务人员则只能查看金额较小的业务数据。
在本发明实施例中,用户可以根据应用系统的需要,采用如下形式预先定义针对复杂对象和子对象的验权条件:验权条件on复杂对象,验权条件on子对象,其中on部分用于指定该验权条件针对的子对象。当然也可以采用其他形式定义针对复杂对象和子对象的验权条件,在此不再赘述。
在本发明实施例中,可以将预先定义的针对复杂对象和子对象的验权条件保存在内存对象中,或者保存在应用系统的数据库中或文件系统中。当将预先定义的验权条件保存在内存对象中时,根据复杂对象和子对象之间的层次关系,生成对应的内存结构树,并将预先定义的复杂对象和子对象的验权条件分别保存在该内存结构树的对应结点中。
在步骤S103中,根据针对复杂对象和子对象的验权条件查询数据库,返回对应的权限数据列。其具体过程如下:
A、将针对复杂对象和子对象的验权条件组装后作为数据库查询参数。
在本发明实施例中,将获取的针对复杂对象和子对象的验权条件逻辑连接,形成一个验权条件字符串,以便作为一个数据库查询参数。如当获取的验权条件包括验权条件1 on对象1,验权条件2 on子对象1时,则将这两个验权条件拼接后,其形式可如下所示:验权条件1 on对象1 and验权条件2 on子对象1,将验权条件1 on对象1 and验权条件2 on子对象1作为数据库查询参数。
在本发明实施例中,可以采用ORM框架来实现数据库查询操作,此时,将复杂对象和子对象的验权条件逻辑连接,作为一个数据库查询参数传输至ORM框架,由ORM框架根据该数据库查询参数实现对数据库的查询操作。
B、调用语法解析引擎解析数据库查询参数,得到各个层次子对象的验权条件,根据各个层次子对象的验权条件,返回对应的权限数据列。
其具体过程如下:将数据库查询参数中的各个验权条件转换为Case...When..的格式,然后在获取复杂对象和子对象时,利用数据库查询中可以动态生成数据列的特性,将验权条件用于数据列生成,并最终形成权限数据列返回。
在本发明实施例中,当通过ORM框架根据数据库查询参数实现对数据库查询时,ORM框架需要调用语法解析引擎,解析传输的数据库查询参数,并根据各对象之间的层次关系,生成树状的验权条件内存结构(称为对象层次结构树),同时将数据库查询参数中的针对每个层次子对象的验权条件转换成如下数据库查询格式:Case条件then 1 else 0,此查询格式将用于后续的验权条件生成;接下来按照对象层次结构树,将验权条件转换得到的数据库查询格式保存在对象层次结构树的对应结点中。
对于任一个验权条件来说,根据前文约定,在定义的时候已经指定了它将用于哪个业务对象,而根据前文所述,各个业务对象按照彼此之间的关系及层次关系,可以形成一个树状的对象树结构,对象树结构中每个结点对应一个具体的业务对象,结点本身是一个内存对象结构;此时需要根据层次关系在对象树结构中找到业务对象对应的结点,然后保存到相应的内存对象中;具体的保存方式没有严格要求,通常可以在各个结点对象中设置一个字符串属性用于记录此内容。
根据对象层次结构树的对应结点中保存的数据库查询格式,按照普通的ORM流程进行数据库查询,在处理每层对象查询时,均根据该层对象对应的验权条件插入一段SQL语句,使用验权条件生成对应的权限数据列。其中权限数据列的值为布尔型,其内容为验权结果(真或者假)。
如对于由验权条件1 on对象1 and验权条件2 on子对象1作为数据库查询参数时,ORM调用语法解析引擎,根据传输的数据库查询参数生成对象层次结构树,其根结点中保存的数据库查询格式为Case条件1 then 1 else 0 asbVerify,该根结点的子结点中保存的数据库查询格式为Case条件2 then 1 else0 as bVerify。
根据对象层次结构树的对应结点中保存的数据库查询格式,按照普通的ORM流程进行数据库查询,在处理对象1查询时,根据对象1对应的验权条件,插入如下SQL语句:
SELECT xxx,yyy,Case条件1 then 1 else 0 as bVerify FROM TtabalWHERE.....;其中Ttable为对象关系映射中对象1对应的数据库表。
在处理对象1的子对象1时,根据子对象1对应的验权条件,插入如下SQL语句:
SELECT xxx,yyy,Case条件2 then 1 else 0 as bVerify FROM MtableWHERE.....;其中Mtable为对象关系映射中子对象1对应的数据库表。
根据上述SQL语句即可返回对应的权限数据列。
如上所述,在对于每一层次对象来说,只需要一次数据库查询操作,即可得到当前用户是否对该层次对象具有访问权限,从而在两层对象关系映射中,只需要两次数据库查询操作,即可对两层对象关系映射中的子对象进行验权,从而提高了对象关系映射中复杂对象的验权效率。
在步骤S104中,复杂对象和子对象均根据返回的权限数据列的数值设置其权限标识属性。
根据返回的权限数据列,可以得到根据复杂对象和子对象的验权条件生成的复杂对象和子对象的bVerify值,将该bVerify值保存到对应的复杂对象和子对象的bVerify属性上,从而设置每个复杂对象和子对象的权限标识属性。
具体来说,步骤S103中的数据库查询会返回一个数据集,其中会有一个数据列名为bVerify,该列是根据验权条件自动生成的;此时可以将该数据列的内容读取出来,按照前文所述的生成逻辑,数据列中的值只能为1或0,其中1对应真,0对应假;
接下来根据当前是在获取哪一个业务对象,将bVerify列的值设置到此业务对象中对应的布尔型属性bVerify上,这样当前业务对象的验权就有了结果,如bVerify为真则有权限,为假则无权限;
在步骤S105中,返回带权限标识属性的复杂对象和子对象。
在本发明实施例中,可以直接访问返回的带权限标识属性的复杂对象和子对象的bVerify属性,从而得到该对象是否验权通过的信息。
以下以一个具体的实例对本发明实施例提供的对象验权方法的实现流程进行进一步的详细说明。
假设复杂对象为采购订单对象,其包括订单号、采购员、金额合计等属性;每个采购订单可能会采购多种商品,因此,在对象关系映射中,采购订单对象与采购商品项对象之间是一对多的父子关系。假设采购商品项对象包括商品名称、单价、数量等属性。对于操作员Z,预先定义操作员Z的验权条件如下:
只允许查看金额合计小于4999的采购订单;
只允许查看数量小于299的采购商品项;
如果有一张如下形式的采购订单:
订单号:0001          采购员:张三        金额合计:3500
商品名称:记事本      单价:2.00          数量:500
商品名称:签字笔      单价:5.00          数量:100
商品名称:毛笔        单价:7.50          数量:200
商品名称:铅笔        单价:1.00          数量:500
那么经过对象关系映射,将形成一个根对象为采购订单,其内容为订单号、采购员、金额合计等信息;该根对象为采购订单下面有四个子业务对象为采购商品项,内容为商品名称、单价、数量等内容的对象树结构。如果操作员Z请求查看上面这张采购订单,则系统将对操作员Z进行验权,按照本发明实施例提供的对象验权方法,实现的具体步骤如下:
首先,在“采购订单”和“采购商品项”两个对象上均定义一个布尔型(真/假)的权限标识属性,名称为bVerify,用于标识当前用户是否有权限访问;
其次,定义针对复杂对象和子对象的权限条件,在这里一共有两个权限条件,分别是针对“采购订单”和“采购商品项”的,具体格式没有特别限制,可以类似如下格式定义:
金额合计<4999on采购订单;
数量<299on采购商品项;
这里的on部分用于指定所属对象名,然后保存起来,可以保存在内存对象,也可以存储在数据库或文件系统中;
第三,将所有的权限条件组装后作为查询参数传输到ORM框架,在这里将前述两个权限条件拼装起来,形成类似如下的内容,并作为参数传给ORM执行查询:
金额合计<4999on采购订单and数量<299on采购商品项
第四,ORM框架调用语法解析引擎,处理各个层次的权限条件。如果同一层有多个权限条件则先合并,然后生成树状的权限条件内存结构;
前述权限条件被转换成以下格式:
Case金额合计<4999 then 1 else 0 as bVerify。此条件被保存在采购订单对象相对应的内存结构中。
Case数量<299 then 1 else 0 as bVerify。此条件被保存在采购商品项对象相对应的内存结构中。
再按普通ORM流程,生成SQL语句进行数据库查询生成业务对象;在处理每一层对象查询时,均根据该层对象的权限条件插入到SQL语句的Select部分,即增加了一个动态生成的数据列,列名称为固定的bVerify,该列的值的类型为布尔类型,其内容为当前对象的验权结果(真或假);
在生成采购订单对象时,SQL语句为:
SELECT xxx,yyy,Case金额合计<4999 then 1 else 0 as bVerifyFROM采购订单...WHERE.....
在生成采购商品项子对象时,SQL语句为:
SELECT xxx,yyy,Case数量<299 then 1 else 0 as bVerify FROM采购商品项...WHERE.....
由于获取子对象时,每一层均可以一次性查询并返回该层所有的子对象(SQL语句中不指定子对象的唯一标识);因为权限条件已经被加到SELECT部分,没有在WHERE中出现,因此可以同时查询所有对象,这样同一层只需要一次数据库查询操作,即可得到该层子对象的验权信息,从而大大提高了复杂对象的子对象验权效率。
第五,每层子对象均根据对应权限数据列的数值设置权限标志属性,并根据查询返回的结果集合组装业务对象。
从前文可以看出,每次查询的结果都会有根据权限条件生成的bVerify值,此数值将被保存到对应的业务对象的bVerify属性上。
第六,返回已组装好的带权限标记的业务对象。
调用者可以直接访问业务对象上的bVerify得到该对象是否验权通过的信息。在本例中返回结果如下:
订单号:0001        采购员:张三       金额合计:1500     bVerify:真
商品名称:记事本    单价:2.00         数量:500          bVerify:假
商品名称:签字笔    单价:5.00         数量:100          bVerify:真
商品名称:毛笔      单价:7.50         数量:200          bVerify:真
商品名称:铅笔      单价:1.00         数量:500          bVerify:假
可以看到,对于采购订单对象来说是满足权限条件的,而四个子业务对象中,第一个和第四个无权限,第二个和第三个有权限;
至此验权完成,仅执行了两次SQL查询,即得到了全部业务对象的验权结果。应用系统可直接访问各个业务对象的bVerify属性来判断是否有权限,并根据验权结果进行显示控制或其它操作,例如将无权限的业务对象屏蔽隐藏或者显示时金额用星号代替等,从而使对象验权简便、快捷、高效。
图2示出了本发明实施例提供的对象验权系统的结构,为了便于说明,仅示出了与本发明实施例相关的部分。该对象验权系统可以是内置于对象验权设备中的软件单元、硬件单元或者软硬件相结合的单元,也可以作为独立的挂件集成到对象验权系统中或者对象验权系统的应用系统中,其中:
权限标识属性定义单元21为复杂对象和子对象分别定义一用于标识当前用户是否有权限访问的权限标识属性。在本发明实施例中,权限标识属性采用bVerify表示,其数据类型为布尔类型。
验权条件获取单元22获取用户预先定义的复杂对象和子对象的验权条件。在本发明实施例中,用户可以根据应用系统的需要,预先定义针对该应用系统中的复杂对象和子对象的验权条件,并将预先定义的验权条件保存在内存对象中,或者保存在应用系统的数据库中或文件系统中。
当将预先定义的验权条件保存在内存对象中时,所述系统还包括内存结构树生成单元23。该内存结构树生成单元23根据复杂对象和子对象之间的层次关系,生成对应的内存结构树,并将预先定义的复杂对象和子对象的验权条件分别保存在该内存结构树的对应结点中。
对象验权单元24根据针对复杂对象和子对象的验权条件查询数据库,返回对应的权限数据列。该对象验权单元24包括验权条件组装模块241和数据库查询模块242。其中验权条件组装模块241将所有验权条件组装后作为数据库查询参数。在本发明实施例中,通过将验权条件组装后作为数据库查询参数传输至ORM框架中,由ORM框架根据传输的数据库查询参数实现对数据库的查询操作。数据库查询模块242调用语法解析引擎解析数据库查询参数,得到各个层次子对象的验权条件,根据各个层次子对象的验权条件,返回对应的权限数据列。
在本发明实施例中,ORM框架调用语法解析引擎,解析传输的数据库查询参数,将该数据库查询参数中的各个验权条件转换成如下数据库查询格式:Case条件then 1 else 0。再按照普通的ORM流程进行数据库查询,在处理每层对象查询时,均根据该层对象对应的验权条件插入一段SQL语句,使用验权条件生成对应的权限数据列。其中权限数据列的值为布尔型,其内容为验权结果(真或者假)。
权限标识属性设置单元25根据返回的权限数据列的数值设置复杂对象和子对象的权限标识属性。在本发明实施例中,根据返回的权限数据列,均可以得到根据每个层次子对象的验权条件生成的bVerify值,将该bVerify值保存到对应的对象的bVerify属性上,从而设置每层子对象的权限标识属性。
对象返回单元26返回带权限标识属性的复杂对象和子对象。在本发明实施例中,可以直接访问带权限标识属性的对象上的bVerify属性,从而得到该对象是否验权通过的信息。
在本发明实施例中,通过预先定义针对复杂对象和子对象的验权条件,然后借助语法解析引擎将针对复杂对象和子对象的验权条件解析成case when的形式存储在对象层次结构树中,然后一次性从数据库获取对象数据和权限验证结果,从而使开发人员不再需要分别为每一层对象编写验权代码,减少了业务逻辑编码量,同时由于大量减少了数据库访问次数,从而大大提高了对象验权效率。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (9)

1、一种复杂对象的子对象验权方法,其特征在于,所述方法包括下述步骤:
为复杂对象和子对象分别定义一用于标识当前用户是否有权限访问的权限标识属性;
获取用户预先定义的针对复杂对象和子对象的验权条件;
根据所述复杂对象和子对象的验权条件查询数据库,返回对应的权限数据列;
根据所述权限数据列设置复杂对象和子对象的权限标识属性;
返回带权限标识属性的对象。
2、如权利要求1所述的方法,其特征在于,所述方法还包括下述步骤:
根据所述复杂对象和子对象的层次关系,生成内存结构树;
将用户定义的复杂对象和子对象的验权条件分别存储在所述内存结构树的对应结点中。
3、如权利要求1或2所述的方法,其特征在于,所述步骤根据所述复杂对象和子对象的验权条件查询数据库,返回对应的权限数据列具体为:
将所述复杂对象和子对象的验权条件组装后作为数据库查询参数;
调用语法解析引擎解析所述数据库查询参数,得到复杂对象和子对象的验权条件;
根据所述复杂对象和子对象的验权条件查询数据库,返回对应的权限数据列。
4、如权利要求1或2所述的方法,其特征在于,所述步骤调用语法解析引擎解析所述数据库查询参数,得到复杂对象和子对象的验权条件具体为:
将所述复杂对象和子对象的验权条件分别解析成Case验权条件then 1else 0。
5、一种复杂对象的子对象验权系统,其特征在于,所述系统包括:
权限标识属性定义单元,用于为复杂对象和子对象分别定义一用于标识当前用户是否有权限访问的权限标识属性;
验权条件获取单元,用于获取用户预先定义的针对复杂对象和子对象的验权条件;
对象验权单元,用于根据所述复杂对象和子对象的验权条件查询数据库,返回对应的权限数据列;
权限标识属性设置单元,用于根据所述权限数据列设置复杂对象和子对象的权限标识属性;
对象返回单元,用于返回带权限标识属性的对象。
6、如权利要求5所述的系统,其特征在于,所述系统还包括:
内存结构树生成单元,用于根据所述复杂对象和子对象的层次关系,生成内存结构树,并将用户定义的复杂对象和子对象的验权条件分别存储在所述内存结构树的对应结点中。
7、如权利要求5或6所述的系统,其特征在于,所述对象验权单元包括:
验权条件组装模块,用于将所述复杂对象和子对象的验权条件组装后作为数据库查询参数;
数据库查询模块,用于调用语法解析引擎解析所述数据库查询参数,得到复杂对象和子对象的验权条件,根据所述复杂对象和子对象的验权条件查询数据库,返回对应的权限数据列。
8、如权利要求5或6所述的系统,其特征在于,所述数据库查询模块将所述复杂对象和子对象的验权条件分别解析成Case验权条件then 1 else 0,并根据所述复杂对象和子对象的验权条件查询数据库,返回对应的权限数据列。
9、一种包括权利要求5所述的复杂对象的子对象验权系统的复杂对象的子对象验权设备。
CN2008102172223A 2008-11-03 2008-11-03 对象关系映射中复杂对象的子对象验权方法、系统及设备 Active CN101430706B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2008102172223A CN101430706B (zh) 2008-11-03 2008-11-03 对象关系映射中复杂对象的子对象验权方法、系统及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2008102172223A CN101430706B (zh) 2008-11-03 2008-11-03 对象关系映射中复杂对象的子对象验权方法、系统及设备

Publications (2)

Publication Number Publication Date
CN101430706A true CN101430706A (zh) 2009-05-13
CN101430706B CN101430706B (zh) 2011-01-12

Family

ID=40646100

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008102172223A Active CN101430706B (zh) 2008-11-03 2008-11-03 对象关系映射中复杂对象的子对象验权方法、系统及设备

Country Status (1)

Country Link
CN (1) CN101430706B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102902916A (zh) * 2012-09-17 2013-01-30 攀枝花学院 应用程序通用的权限控制方法
CN105069035A (zh) * 2015-07-22 2015-11-18 成都市卓睿科技有限公司 实现数据访问权限控制的方法
CN107491463A (zh) * 2016-07-21 2017-12-19 平安科技(深圳)有限公司 数据查询的优化方法和系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4400569B2 (ja) * 2003-10-14 2010-01-20 パナソニック株式会社 Mpeg−21デジタルコンテンツ保護システム

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102902916A (zh) * 2012-09-17 2013-01-30 攀枝花学院 应用程序通用的权限控制方法
CN102902916B (zh) * 2012-09-17 2015-09-02 攀枝花学院 应用程序通用的权限控制方法
CN105069035A (zh) * 2015-07-22 2015-11-18 成都市卓睿科技有限公司 实现数据访问权限控制的方法
CN105069035B (zh) * 2015-07-22 2018-10-09 成都市卓睿科技有限公司 实现数据访问权限控制的方法
CN107491463A (zh) * 2016-07-21 2017-12-19 平安科技(深圳)有限公司 数据查询的优化方法和系统
CN107491463B (zh) * 2016-07-21 2020-02-18 平安科技(深圳)有限公司 数据查询的优化方法和系统

Also Published As

Publication number Publication date
CN101430706B (zh) 2011-01-12

Similar Documents

Publication Publication Date Title
US8234308B2 (en) Deliver application services through business object views
US8352516B2 (en) Multi-application object mapping tool
CN100565510C (zh) 数据访问层类生成器
US7536406B2 (en) Impact analysis in an object model
CN105183735A (zh) 数据的查询方法及查询装置
KR20060095452A (ko) 이질적인 애플리케이션들에 걸쳐 공통적인 데이터 액세스를제공하는 방법 및 시스템
CN102708203A (zh) 一种基于xml元数据的数据库动态管理方法
CN103412853A (zh) 一种针对文档转换器的测试用例自动生成方法
CN108427731A (zh) 页面代码的处理方法、装置、终端设备及介质
CN103914290A (zh) 一种操作命令处理方法及装置
CN102591960A (zh) 农业经济电子地图数据服务接口方法
CN101430706B (zh) 对象关系映射中复杂对象的子对象验权方法、系统及设备
US7325003B2 (en) Method and system for mapping datasources in a metadata model
US20100088341A1 (en) Computing data security settings in a multi-dimensional system
CN100527131C (zh) 一种ims数据库互动式访问方法和工具
CN103425793A (zh) 用于即时通讯系统中利用数据库存储层访问数据库的方法
CN116149666A (zh) Sql语句的语法检查方法、系统、电子设备及可读存储介质
US20100088283A1 (en) System and method for managing database applications
Blanco et al. An MDA approach for developing secure OLAP applications: Metamodels and transformations
US20100153417A1 (en) Method of and System for Managing Drill-Through Targets
Kensche et al. GeRoMe: A generic role based metamodel for model management
KR101570980B1 (ko) 멀티 테넌트 환경의 공통 코드 관리 방법, 이를 수행하는 공통 코드 관리 서버 및 이를 저장하는 기록매체
WO2023108627A1 (zh) 资源编码的方法、装置、系统和电子设备
US20220083526A1 (en) Master Data Mapping Scheme Permitting Querying
RU2682010C1 (ru) Способ для разграничения доступа к данным в базе данных

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant