一种操作的记录方法及记录装置与流程

文档序号:13072582阅读:123来源:国知局
一种操作的记录方法及记录装置与流程
本发明涉及数据处理领域,尤指一种操作的记录方法及记录装置。
背景技术
:在项目开发过程中经常需要查看数据库中某一条记录的历史变化信息,而如果要查看数据库记录的历史变化信息,就需要在数据库对应的实体类发生改变时对所发生的改变予以记录。相关技术中,往往采用主动的记录方法在数据库对应的实体类发生改变时对所发生的改变予以记录,即每发生一次改变,将所改变的信息和所改变的信息对应的目标对象的改变次数主动地添加在一个专门的数据库中。但是这种方法由于需要主动地在所建立的专门的数据库中添加所改变的信息和所改变的信息对应的目标对象的改变次数,因此所带来的工作量是十分巨大的。技术实现要素:为了解决上述技术问题,本发明提供了一种操作的记录方法及记录装置,能够在对实体类进行包含操作信息的操作时,将操作操作信息对应的对象的次数和操作信息自动地添加在与实体类对应的历史操作记录表中,从而极大程度地减少了记录历史信息所带来的工作量。为了达到本发明目的,本发明提供了一种操作的记录方法,包括:获取针对目标实体类的目标操作;根据所述目标操作对所述目标实体类对应的目标数据库表进行操作;将操作次数和所述目标操作对应的操作信息添加至与所述目标实体类对应的目标历史操作记录表中;其中,所述操作次数为操作所述目标操作对应的目标对象的次数。所述将操作次数和目标操作对应的操作信息添加至与目标实体类对应的目标历史操作记录表中,包括:根据与所述目标实体类的注解对应的预设功能将操作次数和所述目标操作对应的操作信息添加至与所述目标实体类对应的目标历史操作记录表中。所述获取目标操作之前,还包括:获取实体类的属性信息和所述属性信息的内容;其中,所述实体类的属性信息至少包括唯一标识对象的id信息;根据所述实体类的属性信息和所述属性信息的内容建立数据库表;根据操作次数属性信息、所述实体类的属性信息和所述属性信息的内容建立历史操作记录表。所述根据操作次数属性信息、实体类的属性信息和属性信息的内容建立历史操作记录表之后,包括:在所述实体类的类名后增添注解;设置所述注解对应的预设功能为当对所述实体类进行操作时,将操作次数和操作对应的操作信息添加至与所述实体类对应的历史操作记录表中。所述根据与目标实体类的注解对应的预设功能将操作次数和目标操作对应的操作信息添加至与目标实体类对应的目标历史操作记录表中,包括:在预先建立的多个历史操作记录表中获取与所述目标实体类对应的目标历史操作记录表;根据与所述目标实体类的注解对应的预设功能将所述目标操作对应的操作信息添加至获取的所述目标历史操作记录表中;根据与所述目标实体类的注解对应的预设功能将所述操作次数添加至所述目标历史操作记录表中。所述根据与目标实体类的注解对应的预设功能将操作次数添加至目标历史操作记录表中,包括:根据与所述目标实体类的注解对应的预设功能获取所述目标信息包含的目标id;判断获取的所述目标id是否存在于所述目标历史操作记录表中;若所述目标id不存在于所述目标历史操作记录表中,确定操作所述目标操作信息对应的目标对象的操作次数为第1次,并将该操作次数添加至所述目标历史操作记录表的对应位置;其中,所述对应位置为与添加的所述操作信息对应的操作次数属性信息内容的位置;若所述目标id存在于所述目标历史操作记录表中,获取与所述目标id对应的最大的操作次数n,确定操作所述目标操作信息对应的目标对象的操作次数为第(n+1)次操作,并将该操作次数添加至所述目标历史操作记录表的对应位置;其中,n为正整数。本发明还提供了一种操作的记录装置,包括:第一获取模块,用于获取针对目标实体类的目标操作;第一处理模块,用于根据所述目标操作对所述目标实体类对应的目标数据库表进行操作;第二处理模块,用于将操作次数和所述目标操作对应的操作信息添加至与所述目标实体类对应的目标历史操作记录表中;其中,所述操作次数为操作所述目标操作对应的目标对象的次数。所述第二处理模块,具体用于根据与所述目标实体类的注解对应的预设功能将操作次数和所述目标操作对应的操作信息添加至与所述目标实体类对应的目标历史操作记录表中。还包括:第二获取模块,用于获取实体类的属性信息和所述属性信息的内容;其中,所述实体类的属性信息至少包括唯一标识对象的id信息;第一建立模块,用于根据所述实体类的属性信息和所述属性信息的内容建立数据库表;第二建立模块,用于根据操作次数属性信息、所述实体类的属性信息和所述属性信息的内容建立历史操作记录表。还包括:添加模块,用于在所述实体类的类名后增添注解;设置模块,用于设置所述注解对应的预设功能为当对所述实体类进行操作时,将操作次数和操作对应的操作信息添加至与所述实体类对应的历史操作记录表中。与现有技术相比,本发明至少包括获取针对目标实体类的目标操作;根据目标操作对目标实体类对应的目标数据库表进行操作;将操作次数和目标操作对应的操作信息添加至与目标实体类对应的目标历史操作记录表中;其中,操作次数为操作目标操作对应的目标对象的次数。从本发明提供的技术方案可见,当对目标实体类进行目标操作时,能够自动地将操作目标操作信息对应的目标对象的操作次数和目标操作对应的操作信息添加至目标实体类对应的目标历史操作记录表中,从而实现了信息的自动添加,极大程度地减少了记录历史信息所带来的工作量。本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。附图说明附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。图1为本发明实施例提供的一种操作的记录方法的流程示意图;图2为本发明实施例提供的另一种操作的记录方法的流程示意图;图3为本发明实施例提供的一种操作的记录装置的结构示意图;图4为本发明实施例提供的另一种操作的记录装置的结构示意图;图5为本发明实施例提供的又一种操作的记录装置的结构示意图。具体实施方式为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。本发明实施例提供一种操作的记录方法,如图1所示,该方法包括:步骤101、获取针对目标实体类的目标操作。具体的,实体类主要是作为数据管理和业务逻辑处理层面上存在的类别。在用java技术解决相关互联网领域的技术总和的javaweb项目中,实体类是接收所有目的为改变数据库存储内容的操作的对象。步骤102、根据目标操作对目标实体类对应的目标数据库表进行操作。需要说明的是,目标数据库表是预先建立的多个数据库表中的一个。假设有m个实体类,每个实体类对应一个数据库表,那么就有m个数据库表,目标实体类是m个实体类中的一个,目标数据库表是m个数据库表中的一个。具体的,对目标实体类进行操作,实际就是对目标实体类对应的目标数据库进行操作。步骤103、将操作次数和目标操作对应的操作信息添加至与目标实体类对应的目标历史操作记录表中。其中,操作次数为操作目标操作信息对应的目标对象的次数。具体的,该步骤可以通过如下方式来实现:根据与目标实体类的注解对应的预设功能将操作次数和目标操作对应的操作信息添加至与目标实体类对应的目标历史操作记录表中。需要说明的是,目标历史操作记录表是预先建立的多个历史操作记录表中的一个。假设有m个实体类,每个实体类对应一个历史操作记录表,那么就有m个历史操作记录表,目标实体类是m个实体类中的一个,目标历史操作记录表是m个历史操作记录表中的一个。具体的,数据库表中只存储有对象的最新信息,而历史操作记录表中存储有对象的历史信息。本发明提供的操作的记录方法,获取针对目标实体类的目标操作;根据目标操作对目标实体类对应的目标数据库表进行操作;将操作次数和目标操作对应的操作信息添加至与目标实体类对应的目标历史操作记录表中;其中,操作次数为操作目标操作对应的目标对象的次数。从本发明提供的技术方案可见,当对目标实体类进行目标操作时,能够自动地将操作目标操作信息对应的目标对象的操作次数和目标操作对应的操作信息添加至目标实体类对应的目标历史操作记录表中,从而实现了信息的自动添加,极大程度地减少了记录历史信息所带来的工作量。本发明实施例提供另一种操作的记录方法,如图2所示,该方法包括:步骤201、获取实体类的属性信息和属性信息的内容。其中,实体类的属性信息至少包括唯一标识对象的id信息。具体的,若实体类是学生基本信息类,实体类的属性信息可以包括学生学号、学生姓名、学生性别和学生出生年月,由于学生学号可以唯一标识实体类中的不同对象,因此学生学号就是id信息;若实体类是公民医疗保险信息类,实体类的属性信息可以包括公民身份证号、公民保险缴费基数和公民可用保险额度,由于公民身份证号可以唯一标识实体类中的不同对象,因此公民身份证号就是id信息。具体的,若实体类是学生基本信息类,实体类的属性信息为括学生学号、学生姓名、学生性别和学生出生年月,那么属性信息的内容包括学生学号的内容,学生姓名的内容、学生性别的内容和学生出生年月的内容。步骤202、根据实体类的属性信息和属性信息的内容建立数据库表。具体的,假设学生学号(也是id信息)分别为001、002、003和004,学生姓名分别为张三、李四、王五、丁六,学生性别分别为男、女、女、男,学生出生年月分别为1989-08-01、1989-10-08、1989-10-25、1990-6-9,那么根据实体类的属性信息和属性信息的内容建立的数据库表可以如表1所示,表1需要说明的是,表1的主键字段为学生学号(即id信息)。数据的存储类型为整数int型,具体可以是int(8),表示存储的数据是长度为8的整数类型。步骤203、根据操作次数属性信息、实体类的属性信息和属性信息的内容建立历史操作记录表。具体的,假设实体类的属性信息和属性信息的内容如表1所示,那么操作次数属性信息、实体类的属性信息和属性信息的内容建立历史操作记录表可以如表2所示,表2学生学号学生姓名学生性别学生出生年月操作次数001张三男1989-08-011002李四女1989-10-081003王五女1989-10-251004丁六男1990-6-91需要说明的是,由于表2所表示的是建立的初始历史操作记录表,因此还没有产生除初始操作记录以外的任何的历史操作记录,因此表中操作次数的内容默认参数1。还需要说明的是,表2的主键字段为学生学号和操作次数组成的联合主键字段(即id信息)。步骤204、在实体类的类名后增添注解。具体的,注解的名称格式为@+与实体类对应的历史操作记录表的表名,假设实体类的类名为templateentity,与实体类对应的数据库表的表名为“template”,与实体类对应的历史操作记录表的表名可以为“template_history”,那么注解的名称可以为“@history”。步骤205、设置注解对应的预设功能为当对实体类进行操作时,将操作次数和操作对应的操作信息添加至与实体类对应的历史操作记录表中。具体的,注解是java提供的一套机制,使得对方法、类、参数、包、域以及变量等添加标准(即附上某些信息),且在以后某个时段通过反射将注解的信息提取出来以供使用。将注解对应的预设功能设置为了当对实体类进行操作时,将操作次数和操作对应的操作信息添加至与实体类对应的历史操作记录表中的功能,这样当发生对实体类进行操作时,就能触发预设功能(即将操作次数和操作对应的操作信息添加至与实体类对应的历史操作记录表中)。步骤206、获取针对目标实体类的目标操作。步骤207、根据目标操作对目标实体类对应的目标数据库表进行操作。具体的,若原先目标数据库表如表1所示,假设目标操作是将“学生学号:002、学生姓名:李四、学生性别:女、学生出生年月:1989-10-08”这条记录修改为“学生学号:002、学生姓名:李四、学生性别:女、学生出生年月:1989-11-08”,那么操作后的目标数据库表如表3所示,表3学生学号学生姓名学生性别学生出生年月001张三男1989-08-01002李四女1989-11-08003王五女1989-10-25004丁六男1990-6-9步骤208、在预先建立的多个历史操作记录表中获取与目标实体类对应的目标历史操作记录表。步骤209、根据与目标实体类的注解对应的预设功能将目标操作对应的操作信息添加至获取的目标历史操作记录表中。步骤210、根据与目标实体类的注解对应的预设功能将操作次数添加至目标历史操作记录表中。具体的,步骤210可以通过步骤210a~210d实现:步骤210a、根据与目标实体类的注解对应的预设功能获取目标信息包含的目标id。步骤210b、判断获取的目标id是否存在于目标历史操作记录表中。步骤210c、若目标id不存在于目标历史操作记录表中,确定操作目标操作信息对应的目标对象的操作次数为第1次,并将该操作次数添加至目标历史操作记录表的对应位置。其中,对应位置为与添加的操作信息对应的操作次数属性信息内容的位置。具体的,若原先目标历史操作记录表如表2所示,假设目标操作是添加“学生学号:005、学生姓名:张七、学生性别:女、学生出生年月:1990-02-08”这条记录,因此目标操作对应的操作信息是“学生学号:005、学生姓名:张七、学生性别:女、学生出生年月:1990-02-08”;并且由于目标id为“005”,不存在于目标历史操作记录表中,因此确定修改这条记录的次数为第1次(即操作目标操作信息对应的目标对象的次数为第1次),将操作次数“1”添加至目标历史操作记录表的对应位置,即与添加的“学生学号:005、学生姓名:张七、学生性别:女、学生出生年月:1990-02-08”对应的操作次数属性信息内容的位置,那么操作后的目标历史操作记录表如表4所示,表4学生学号学生姓名学生性别学生出生年月操作次数001张三男1989-08-011002李四女1989-10-081003王五女1989-10-251004丁六男1990-6-91005张七女1990-02-081步骤210d、若目标id存在于目标历史操作记录表中,获取与目标id对应的最大的操作次数n,确定操作目标操作信息对应的目标对象的操作次数为第(n+1)次操作,并将该操作次数添加至目标历史操作记录表的对应位置。其中,n为正整数。具体的,若原先目标历史操作记录表如表2所示,假设目标操作是是将“学生学号:002、学生姓名:李四、学生性别:女、学生出生年月:1989-10-08”这条记录修改为“学生学号:002、学生姓名:李四、学生性别:女、学生出生年月:1989-11-08”,因此目标操作对应的操作信息是“学生学号:002、学生姓名:李四、学生性别:女、学生出生年月:1989-11-08”;并且由于目标id为“002”,存在于目标历史操作记录表中,因此确定修改这条记录的次数为第2次(即操作目标操作信息对应的目标对象的次数为第2次),将操作次数“2”添加至目标历史操作记录表的对应位置,即与添加的“学生学号:002、学生姓名:李四、学生性别:女、学生出生年月:1989-11-08”对应的操作次数属性信息内容的位置,那么操作后的目标历史操作记录表如表5所示,表5学生学号学生姓名学生性别学生出生年月操作次数001张三男1989-08-011002李四女1989-10-081002李四女1989-11-082003王五女1989-10-251004丁六男1990-6-91本发明提供的操作的记录方法,获取针对目标实体类的目标操作;根据目标操作对目标实体类对应的目标数据库表进行操作;将操作次数和目标操作对应的操作信息添加至与目标实体类对应的目标历史操作记录表中;其中,操作次数为操作目标操作对应的目标对象的次数。从本发明提供的技术方案可见,当对目标实体类进行目标操作时,能够自动地将操作目标操作信息对应的目标对象的操作次数和目标操作对应的操作信息添加至目标实体类对应的目标历史操作记录表中,从而实现了信息的自动添加,极大程度地减少了记录历史信息所带来的工作量。本发明实施例提供一种操作的记录装置,如图3所示,该记录装置3包括:第一获取模块31,用于获取针对目标实体类的目标操作。第一处理模块32,用于根据目标操作对目标实体类对应的目标数据库表进行操作。第二处理模块33,用于将操作次数和目标操作对应的操作信息添加至与目标实体类对应的目标历史操作记录表中;其中,操作次数为操作目标操作对应的目标对象的次数。进一步,第二处理模块33,具体用于根据与目标实体类的注解对应的预设功能将操作次数和目标操作对应的操作信息添加至与目标实体类对应的目标历史操作记录表中。进一步,在图3对应的实施例的基础上,本发明实施例提供另一种操作的记录装置,如图4所示,该记录装置3还包括:第二获取模块34,用于获取实体类的属性信息和属性信息的内容;其中,实体类的属性信息至少包括唯一标识对象的id信息。第一建立模块35,用于根据实体类的属性信息和属性信息的内容建立数据库表。第二建立模块36,用于根据操作次数属性信息、实体类的属性信息和属性信息的内容建立历史操作记录表。添加模块37,用于在实体类的类名后增添注解。设置模块38,用于设置注解对应的预设功能为当对实体类进行操作时,将操作次数和操作对应的操作信息添加至与实体类对应的历史操作记录表中。进一步,在图4对应的实施例的基础上,本发明实施例提供又一种操作的记录装置,如图5所示,第二处理模块33包括:获取单元331,用于在预先建立的多个历史操作记录表中获取与目标实体类对应的目标历史操作记录表。第一处理单元332,用于根据与目标实体类的注解对应的预设功能将目标操作对应的操作信息添加至获取的目标历史操作记录表中。第二处理单元333,用于根据与目标实体类的注解对应的预设功能将操作次数添加至目标历史操作记录表中。进一步,第二处理单元333具体用于:根据与目标实体类的注解对应的预设功能获取目标信息包含的目标id。判断获取的目标id是否存在于目标历史操作记录表中。若目标id不存在于目标历史操作记录表中,确定操作目标操作信息对应的目标对象的操作次数为第1次,并将该操作次数添加至目标历史操作记录表的对应位置;其中,对应位置为与添加的操作信息对应的操作次数属性信息内容的位置。若目标id存在于目标历史操作记录表中,获取与目标id对应的最大的操作次数n,确定操作目标操作信息对应的目标对象的操作次数为第(n+1)次操作,并将该操作次数添加至目标历史操作记录表的对应位置;其中,n为正整数。本发明提供的操作的记录装置,获取针对目标实体类的目标操作;根据目标操作对目标实体类对应的目标数据库表进行操作;将操作次数和目标操作对应的操作信息添加至与目标实体类对应的目标历史操作记录表中;其中,操作次数为操作目标操作对应的目标对象的次数。从本发明提供的技术方案可见,当对目标实体类进行目标操作时,能够自动地将操作目标操作信息对应的目标对象的操作次数和目标操作对应的操作信息添加至目标实体类对应的目标历史操作记录表中,从而实现了信息的自动添加,极大程度地减少了记录历史信息所带来的工作量。在实际应用中,所述第一获取模块31、第一处理模块32、第二处理模块33、获取单元331、第一处理单元332、第二处理单元333、第二获取模块34、第一建立模块35、第二建立模块36、添加模块37和设置模块38均可由位于操作的记录装置中的中央处理器(centralprocessingunit,cpu)、微处理器(microprocessorunit,mpu)、数字信号处理器(digitalsignalprocessor,dsp)或现场可编程门阵列(fieldprogrammablegatearray,fpga)等实现。虽然本发明所揭露的实施方式如上,但所述的内容仅为便于理解本发明而采用的实施方式,并非用以限定本发明。任何本发明所属领域内的技术人员,在不脱离本发明所揭露的精神和范围的前提下,可以在实施的形式及细节上进行任何的修改与变化,但本发明的专利保护范围,仍须以所附的权利要求书所界定的范围为准。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1