家谱管理系统.docx
《家谱管理系统.docx》由会员分享,可在线阅读,更多相关《家谱管理系统.docx(47页珍藏版)》请在第壹文秘上搜索。
1、江西农业大学科技用用评fl/家谱管理系疣小组戚员;陈江、易侪、段浩级7M7拉志氏、#f与I2023.、BO目录1 .问题陈述12 .设计方法阐述12. 1总体规划13. 2功能分析与实现3主界面介绍3增加成员功能5显示家族成员信5删除功能6查询功能7查询第n代所有人得信息8修改成员信息8连接数据库9绘制图形家谱10小结113.总结114.代码115.家族成员44L问题陈述家谱用于记录某家族历代家族成员的情况与关系。现编制一个家谱资料管理软件,实现对一个家族所有的资料进行收集整理。支持对家谱的存储、更新、查询、统计等操作。并用计算机永久储存家族数据,方便随时调用。2.设计方法阐述2.1 总体规划
2、在动手编制程序之前,先要做好程序的规划,包括程序储存数据所用的结构,数据类型等等,只有确定了数据类型和数据结构,才能在此根底上进行各种算法的设计和程序的编写。首先是考虑数据类型。在家谱中,家族成员是最根本的组成局部,对于家族管理中,已经不能再进行细分了,所以选定家族成员作为数据的根本类型,并在程序中定义Person类。ClassPersonStringname;/姓名intage;年龄Stringsex;/T生别Birthdayymd;/出生口期StringfatherName;StringmotherName;StringSpouseName;intchildNum;intleveITemp
3、;/代数BooleanisAlive;是否健在)为方便计算机进行比拟,在Person类的某些属性中用数字代替了某些不会改变的字符串,譬如判断是否健在ItrUe为是,false为否)。在设置日期上,为方便以后的计算与比拟,也将日期用整型数字表示1999-05-05表示1999年5月5日,这种表示方法只需在输入和输出上作少许的运算便可方便地与日期进行转换。在设计家谱以图谱的形式来显示时,从直观来说,选择树型结构无疑是最直观易懂的,我在一开始构思的时候也是从树型结构去想的,但是二叉树不能满足我的要求,我的家谱中的一个节点有父亲,母亲,孩子(个数任意),配偶,兄弟姐妹(个数任意).于是我自己设计了一个
4、存储结构,一个节点有四个指针域,指向父亲(或母亲,指向配偶,指向兄弟姐妹。Familyparents;指向父亲的引用FamilySPoUSe/指向配偶的引用FamilyChild;指向孩子的引用Familybro_sis;指向兄弟姐妹StaticFamilyroot;祖先节点难题就是如何将所有的家族成员同过祖先节点连接起来。我的思路是先将所有的家族成员的信息用一个TXT文本存储起来,然后读出来,用一个数组mem存起来,之后初始化祖先节点,根据祖先节点的数据域的信息来添加,先添加祖先的父(母)亲,假设有那么从数组中读出来添加,否那么添加兄弟姐妹,再添加配偶,最后添加孩子,最重要的是每添加一个节点
5、时应该判断该节点是否己经在家族树中了,假设存在那么直接重家族树中找出来对其进行相应的操作,假设不在那么从数组mem中读取,之后遍历创立其兄弟姐妹,配偶,孩子。2 .2功能分析与实现设想好总体规划之后,便开始设计程序中需要用到的各个功能函数,初步设想是要先实现最根本的几项功能,其中数据操作的有:增加成员,修改成员资料,删除成员,数据查询的有:查看某代信息,按姓名查找,按生日查找,查看成员关系以及显示查看家族成员信息表,还有就是绘制家谱图以及连接数据库的操作。主界面介绍主界面由三局部组成:菜单、生日公告栏以及欢送封面。下面为主界面图:图1主界面图2菜单1图3菜单2说明:(1)菜单中主要包括三大子菜
6、单:文件、编辑、帮助。其中文件菜单中有连接数据库以及退出的操作,编辑中有所有功能实现操作。(2)生日公告栏为系统自动获取当日时间以判断今日家族中是否有人生日,如果有那么会自动发出祝福,本功能为创新功能。(3)特别说明:在每一个功能界面中都设有带图标的快捷功能键,便于操作。(4)主界面的代码位于:FTFrame.java中,下面将介绍功能。实现主界面的方法:位于PubIiCclassFTFrame类中增加成员功能我设计了两种添加方式,首先,添加进去的人要与家族里的某一个或某几个有联系,比方是某个人的孩子啊,或配偶,不然是无法参加进这个家族的。(1)根据要添加人的父亲添加,父亲必须在家族中找到。(
7、2)根据添加人的配偶。假设这个配偶已有配偶那么不允许添加,不允许三妻四妾。实现增加成员的方法:publicStringaddMember(Personp)代码省略该方法位于familyTest类中图4添加功能界面显示家族成员信家族成员信息表是用于显示及查看家族所有成员信息以及及时查看新增及删除后的情况,进入界面点击显示按钮即可完成功能。实现显TK成员信息表的方法:PubIiCVOidinitrOWData(FamiIyroot)代码省略/该方法位于FTFr三e类中;实现显示成员信息表界面的方法:位于AddMember类中;图5家庭信息表删除功能删除功能执行时,会将本人及其后代及配偶全部删除。实
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 家谱 管理 系统
