一种用于记录家族族谱成员的APP的制作方法

文档序号:31184880发布日期:2022-08-19 21:00阅读:165来源:国知局
一种用于记录家族族谱成员的APP的制作方法
一种用于记录家族族谱成员的app
技术领域
1.本发明涉及数据呈现技术领域,具体为一种用于记录家族族谱成员的app。


背景技术:

2.家谱又称族谱、宗谱等,是一种以表谱形式,记载一个家族的世系繁衍及重要人物事迹的书,通过家谱,能够了解当时的历史面貌、时代精神、社会风尚,了解在那个历史背景下人们的生产、生活情况,并且在政治经济学、地理学、群体遗传学等方面都有潜在的研究价值,随着计算机互联网技术的发展,族谱数据的电子化成为趋势和需要,以满足和适应现代对族谱管理的需求,数字化的族谱数据可以为族谱相关的研究提供便利,具有很大的研究意义和价值。
3.对此中国专利公开(公告)号:cn110532257a,公开了一种将家谱数据进行可视化呈现的方法及系统,其中方法包括:获取经过结构化处理的家谱数据,所述经过结构化处理的家谱数据包括多个二维的成员数组;对每个二维的成员数组进行初始遍历,通过所创建的哈希表将族谱数据中的成员编号和成员对象建立关联;基于哈希表对每个二维的成员数组进行循环遍历,以构成包括家谱数据中所有族谱成员的多叉树结构;对所述多叉树结构进行倒序遍历,以确定每个族谱成员的基本位置和扩展位置;对二维的成员数组进行位置遍历以对任意两个相邻的族谱成员进行位置检测,生成包含所有族谱成员的坐标信息的位置数组;以及对经过结构化处理的家谱数据进行可视化呈现。
4.然而在使用上述方法及系统时,还存在一些问题,首先上述族谱数据呈现系统中的族谱数据共享度低,不易扩展功能,编录效率低,难以满足随时随地可编录族谱的需求,其次族谱数据存储于本地文件中,族谱数据分散且有冗余,难以集成为海量数据以作相关方面的研究。
5.因此亟需发明一种用于记录家族族谱成员的app来解决上述问题。


技术实现要素:

6.本发明的目的在于提供一种用于记录家族族谱成员的app,以解决上述背景技术中提出的族谱编录系统不易扩展功能,难以满足随时随地编录族谱的需求,其次族谱数据分散有冗余,难以集成海量数据以作相关方面的研究的问题。
7.为实现上述目的,本发明提供如下技术方案:一种用于记录家族族谱成员的app,包括app,所述app基于java ee平台,采用struts2+spring3+hibernate4的技术架构,使用maven工具管理项目的包依赖,所述app联网设置且所述app的技术架构由表示层、中间层以及数据层组成,所述表示层采用java服务器页面技术,并结合struts2标签,负责显示与用户交互的界面,所述app包括系统管理模块、数据服务模块、数据录入模块以及谱志生成模块,所述系统管理模块通过程序读写入数据存储模块,所述数据存储模块内录入多个数据库,且所述数据存储模块内的多个数据库分别读取数据服务模块以及谱志生成模块,所述数据录入模块通过程序读写入数据存储模块中的数据库,所述数据服务模块包括数据展示
模块以及统计检索模块,所述数据展示模块包括族谱展示模块、信息查看模块、pdf浏览模块以及对照预览模块,所述族谱展示模块以网页形式显示一个族谱的基本信息,且网页形式显示通过多个表格相互组合展示,每个表格皆设有下级说明,下级说明内容包括个人基本信息,所述pdf浏览模块提供在线浏览已生成好的族谱pdf,所述对照预览模块显示不同世系体例图的样式。
8.优选地,所述中间层包括控制层、业务层、数据访问层以及持久化对象层,所述控制层采用struts拦截用户请求,并调用业务层的业务逻辑方法,处理用户请求,并根据结果返回给表示层,所述业务层采用spring框架管理业务层的各种服务接口,所述业务层调用数据访问层完成各种业务逻辑运算,所述数据访问层封装各种数据访问以及操作接口,且对持久化对象层进行增删改查操作,所述持久化对象层采用hibernate4将数据库中的数据映射成一系列的java对象,通过操作一系列的java对象来操作数据库数据。
9.优选地,所述数据层存储系统中所有数据,采用开源图数据库neo4j存储数据。
10.优选地,所述系统管理模块包括用户管理模块以及数据管理模块,所述用户管理模块包括用户管理、角色管理、权限管理、代理商管理以及团队管理,所述用户管理模块管理使用app的用户,包括添加删除用户、管理用户注册登录、给用户添加角色,所述角色管理以及权限管理定义用户使用app的功能限制,所述代理商管理以及团队管理管理使用app的代理商和数据录入团队,所述数据管理模块包括谱志管理、造字管理、导入与导出以及备份与恢复,所述数据管理模块涉及系统数据库级别的维护管理,所述谱志管理管理族谱的编录,所述造字管理维护系统的造字库,所述导入与导出分别将某个族谱的一部分数据导入到另一个族谱中以及将族谱的一部分数据导出为一份独立的族谱数据,所述备份与恢复对数据库进行备份与恢复操作。
11.优选地,所述统计检索模块包括单项统计、多项统计、简单检索、组合检索以及族谱统计,所述单项统计以及多项统计分别是在人物某个或某几个属性上进行统计,所述简单检索和组合检索是在族谱中对某个或某些属性上进行查询,所述族谱统计显示整个族谱的统计信息。
12.优选地,所述数据录入模块包括世系数据录入模块以及文档录入模块,所述世系录入模块包括人物信息录入、照片管理、人物树构造、人物树整合以及校对修改,文档录入模块包括新建与删除、文档模板、在线编辑以及文档合并,所述文档录入模块提供在app中编辑word文档功能。
13.优选地,所述谱志生成模块包括谱志编排模块以及谱志pdf生成模块,所述谱志编排模块包括以下步骤:
14.s1、建立多个分卷;
15.s2、对世系数据进行分房;
16.s3、对每一卷谱志,将文档和世系数据按一定顺序排列。
17.优选地,所述谱志pdf生成模块包括生成设置以及pdf自动生成,通过将文档和世系数据根据预先编排的顺序以及设置的参数生成未为完整的谱志pdf文档,且在生成pdf文档之前,可以设置世系体例图的样式,所述app提供多种设置,在生成pdf过程中会根据不同的设置规则完成pdf内容的生成。
18.优选地,所述人物树构造采用树状结构显示族谱数据,并采用开源的javascript
树插件,包括以下步骤:
19.s1、异步加载树节点,使用post方法请求人物的后代,服务器查询数据库构造人物数据转换成json字符串返回给app;
20.s2、离线保存节点数据,加载树节点时将人物信息保存到树节点的一个属性中,使得查看人物详细信息时无需再去请求服务器;
21.s3、动态便捷节点,录入的人物保存成功后动态更新app中的树节点,保持前端显示与数据库一致,如果未保存成功则不更新树节点,并给与提示;
22.s4、节点拖曳挂接,即更改人物关系,将节点拖至另一个节点下,服务器程序自动将前一节点更改为后一节点的子节点。
23.优选地,所述世系体例图包括多种行传和多种吊线模板,每种模板都用可扩展样式表语言xsl文件控制样式,用可扩展标记语言xml文件保存世系体例图生成过程的中间数据,且不同模板的xsl和xml文件格式不同,所述行传样式是由多行多列内容组成的表格,表头是父亲谱名、本世派名和间接,且所述行传中每个人物简介占表格中的一行,简介内容根据xml中的元信息生成,所述元信息包括人物的详细信息以及父亲、子女和配偶的基本信息,所述xml中的元信息生成算法包括以下步骤:
24.s1、输入族谱基本信息,输出xml数据文件;
25.s2、查询数据库,得到分房人物根节点集合s;
26.s3、对s中每一个人物,创建xml人物节点,获取人物基本信息以及其父亲、配偶和子女信息,并根据该信息构造节点,并将子节点信息添加到集合r中;
27.s4、集合s循环完毕,如果r不空则将其赋值给s,返回s3步骤中,否则进入s5步骤中;
28.s5、保存xml文件。
29.与现有技术相比,本发明的有益效果是:
30.(1)该种用于记录家族族谱成员的app通过app中的系统管理模块、数据服务模块、数据录入模块以及谱志生成模块的配合使用,使得使用者只需在app操作界面即能编录族谱,并且该app联网设置,使得族谱数据共享度高,易扩展功能,能实现随时随地进行族谱编录,编录效率高;
31.(2)通过集成在app中的族谱数据能够集成为海量数据,从而便于工作人员读取这些数据以作相关方面的研究;
32.(3)通过族谱展示模块以网页形式显示族谱的基本信息,且网页形式显示通过多个表格相互组合展示,每个表格皆设有下级说明,下级说明内容包括个人基本信息,便于使用者查阅检索。
附图说明
33.图1为本发明app中的系统模块图;
34.图2为本发明app中的系统技术架构图;
35.图3为本发明app中族谱展示模块中族谱信息显示的示意图。
具体实施方式
36.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
37.请参阅图1-3,本发明提供的实施例:
38.一种用于记录家族族谱成员的app,包括app,所述app基于java ee平台,采用struts2+spring3+hibernate4的技术架构,使用maven工具管理项目的包依赖,所述app联网设置且所述app的技术架构由表示层、中间层以及数据层组成,所述表示层采用java服务器页面技术,并结合struts2标签,负责显示与用户交互的界面,所述app包括系统管理模块、数据服务模块、数据录入模块以及谱志生成模块,通过app中的系统管理、数据服务、数据录入以及谱志生成的配合使用,使得使用者只需在app操作界面即能编录族谱,并且该app联网设置,使得族谱数据共享度高,易扩展功能,能实现随时随地进行族谱编录,编录效率高。
39.所述系统管理模块通过程序读写入数据存储模块,所述数据存储模块内录入多个数据库,且所述数据存储模块内的多个数据库分别读取数据服务模块以及谱志生成模块,所述数据录入模块通过程序读写入数据存储模块中的数据库,所述数据服务模块包括数据展示模块以及统计检索模块,所述数据展示模块包括族谱展示模块、信息查看模块、pdf浏览模块以及对照预览模块。
40.进一步的,如图3所示,所述族谱展示模块以网页形式显示一个族谱的基本信息,且网页形式显示通过多个表格相互组合展示,每个表格皆设有下级说明,下级说明内容包括个人基本信息,便于使用者查阅检索,所述pdf浏览模块提供在线浏览已生成好的族谱pdf,所述对照预览模块显示不同世系体例图的样式,需要说明的是,附图3中的姓名仅做参考使用。
41.进一步的,所述中间层包括控制层、业务层、数据访问层以及持久化对象层,所述控制层采用struts拦截用户请求,并调用业务层的业务逻辑方法,处理用户请求,并根据结果返回给表示层,所述业务层采用spring框架管理业务层的各种服务接口,所述业务层调用数据访问层完成各种业务逻辑运算,所述数据访问层封装各种数据访问以及操作接口,且对持久化对象层进行增删改查操作,所述持久化对象层采用hibernate4将数据库中的数据映射成一系列的java对象,通过操作一系列的java对象来操作数据库数据。
42.进一步的,所述数据层存储系统中所有数据,采用开源图数据库neo4j存储数据,通过集成在app中的族谱数据能够集成为海量数据,从而便于工作人员读取这些数据以作相关方面的研究。
43.进一步的,所述系统管理模块包括用户管理模块以及数据管理模块,所述用户管理模块包括用户管理、角色管理、权限管理、代理商管理以及团队管理,所述用户管理模块管理使用app的用户,包括添加删除用户、管理用户注册登录、给用户添加角色,所述角色管理以及权限管理定义用户使用app的功能限制,所述代理商管理以及团队管理管理使用app的代理商和数据录入团队,所述数据管理模块包括谱志管理、造字管理、导入与导出以及备份与恢复,所述数据管理模块涉及系统数据库级别的维护管理,所述谱志管理管理族谱的
编录,所述造字管理维护系统的造字库,所述导入与导出分别将某个族谱的一部分数据导入到另一个族谱中以及将族谱的一部分数据导出为一份独立的族谱数据,所述备份与恢复对数据库进行备份与恢复操作。
44.进一步的,所述统计检索模块包括单项统计、多项统计、简单检索、组合检索以及族谱统计,所述单项统计以及多项统计分别是在人物某个或某几个属性上进行统计,所述简单检索和组合检索是在族谱中对某个或某些属性上进行查询,所述族谱统计显示整个族谱的统计信息。
45.进一步的,所述数据录入模块包括世系数据录入模块以及文档录入模块,所述世系录入模块包括人物信息录入、照片管理、人物树构造、人物树整合以及校对修改,文档录入模块包括新建与删除、文档模板、在线编辑以及文档合并,所述文档录入模块提供在app中编辑word文档功能。
46.进一步的,所述谱志生成模块包括谱志编排模块以及谱志pdf生成模块,所述谱志编排模块包括以下步骤:
47.s1、建立多个分卷;
48.s2、对世系数据进行分房;
49.s3、对每一卷谱志,将文档和世系数据按一定顺序排列。
50.进一步的,所述谱志pdf生成模块包括生成设置以及pdf自动生成,通过将文档和世系数据根据预先编排的顺序以及设置的参数生成未为完整的谱志pdf文档,且在生成pdf文档之前,可以设置世系体例图的样式,所述app提供多种设置,在生成pdf过程中会根据不同的设置规则完成pdf内容的生成。
51.进一步的,所述人物树构造采用树状结构显示族谱数据,并采用开源的javascript树插件,包括以下步骤:
52.s1、异步加载树节点,使用post方法请求人物的后代,服务器查询数据库构造人物数据转换成json字符串返回给app;
53.s2、离线保存节点数据,加载树节点时将人物信息保存到树节点的一个属性中,使得查看人物详细信息时无需再去请求服务器;
54.s3、动态便捷节点,录入的人物保存成功后动态更新app中的树节点,保持前端显示与数据库一致,如果未保存成功则不更新树节点,并给与提示;
55.s4、节点拖曳挂接,即更改人物关系,将节点拖至另一个节点下,服务器程序自动将前一节点更改为后一节点的子节点。
56.进一步的,所述世系体例图包括多种行传和多种吊线模板,每种模板都用可扩展样式表语言xsl文件控制样式,用可扩展标记语言xml文件保存世系体例图生成过程的中间数据,且不同模板的xsl和xml文件格式不同,所述行传样式是由多行多列内容组成的表格,表头是父亲谱名、本世派名和间接,且所述行传中每个人物简介占表格中的一行,简介内容根据xml中的元信息生成,所述元信息包括人物的详细信息以及父亲、子女和配偶的基本信息,所述xml中的元信息生成算法包括以下步骤:
57.s1、输入族谱基本信息,输出xml数据文件;
58.s2、查询数据库,得到分房人物根节点集合s;
59.s3、对s中每一个人物,创建xml人物节点,获取人物基本信息以及其父亲、配偶和
子女信息,并根据该信息构造节点,并将子节点信息添加到集合r中;
60.s4、集合s循环完毕,如果r不空则将其赋值给s,返回s3步骤中,否则进入s5步骤中;
61.s5、保存xml文件。
62.对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨再将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1