版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、江西师范大学成人高等教育毕业论文毕业论文题题 目目 家族信息管理系统家族信息管理系统 thethe managementmanagement informationinformation systemsystem ofof familyfamily 家族信息管理系统家族信息管理系统thethe managementmanagement informationinformation systemsystem ofof familyfamily摘摘 要要本文主要介绍家族信息管理系统的设计和开发过程。首先,简单介绍了 java 语言和使用 jbuilder 开发工具的优越性,关系数据库等基本理论数据
2、库知识。然后详细讨论了家族信息管理系统的具体设计与实现,包括开发计划,需求分析,系统目标及具体功能模块的划分。最后详细阐述了本系统在开发过程中遇到的一些实际问题及解决办法。该系统基本满足了家庭用户在族谱管理方面的需求,用户界面友好。部分功能十分贴近现实,系统降低了人工劳动并增加了信息的准确性。本系统的开发完善将明显提高家庭族谱管理水平。关键词:数据库关键词:数据库 家族信息管理家族信息管理 jbuilderjbuilderabstractabstractthis article mainly concerns the management information system of famil
3、y. first it discusses briefly about the advantages of java and using good tools such as jbuilder, relational database. then it introduces the primary and overall design of this system which including exploiture design system of object database design, hardware and software design. at last, it discus
4、ses in details the main technology used in this object and the difficulties concerning this system. this system basically satisfy the needs of the users in family management. the user interface is friendly. some functions are close to praxis. it loosen the burden of manal work and enhance the correc
5、tness of information as well. the development and betterment will obviously improve e level in corporation manpower management.keykey words:words: database,database, familyfamily management,management, jbuilderjbuilder目目 录录第一章第一章 绪论绪论.1 11.1 系统简介 .11.2 主要技术简介 .1第二章第二章 需求分析需求分析.5 52.1 用户需求分析 .52.2 数据
6、概念设计 .62.3 模块功能分析 .8第三章第三章 总体设计总体设计.11113.1 系统设计目标 .113.2 开发设计思想 .113.3 系统功能设计 .12第四章第四章 数据库设计数据库设计.16164.1 设计总体思想 .164.2 关系模型建立 .17第五章第五章 系统实现系统实现.19195.1 登录窗口 .195.2 录入功能 .205.3 查询功能 .225.4 删除功能 .275.5 欢迎和帮助界面 .28第六章第六章 总结总结.2929参考文献参考文献.错误!未定义书签。1第一章第一章 绪论绪论 绪论首先对“家族信息管理系统”进行简单介绍,然后对开发过程中所用到的主要技术
7、进行简单介绍。1.11.1 系统简介系统简介随着信息技术的飞速发展和计算机在管理方面应用的普及,人们已不再满足于传统的族谱记录模式。高科技时代的来临,使传统的以纸笔为中心的信息管理模式发展到现代的以计算机为中心的信息管理模式,利用计算机实现用户对家族信息的管理已经势在必行。基于对如上现实背景的分析,本学期开始着手开发家族信息管理系统。家族信息管理系统主要是面向家庭用户制作的,是智能化家用系统重要的组成部分。本系统用sql server 2000 关系型数据库和 java 的集成开发工具 jbuilder 来实现,是一个典型的小型家用型系统:实现的是对家族信息的管理,提高记录家谱的工作效率。本系
8、统设计理念始终是把用户放在首位,可以实现信息的录入、删除以及比较复杂的查找。在界面的制作上,尤其是颜色的选择和搭配比较讲究,可以给人以美的享受,有一种清新淡雅的家的温馨感觉。1.21.2 主要技术简介主要技术简介1.2.11.2.1 javajava 简介简介 java 语言的出现为推动 web 数据库技术的发展提供了有力的支持。java 发明者sun 公司的子公司 javasoft 及时制定了 java 与数据库的连接规范jdbc(java database connectivity) ,jdbc 实现了 java 程序与数据库系统的无缝连接。jdbc 是一个支持基本 sql 功能的通用底层
9、 api,它在不同的数据库功能模块层次上提供了一个统一的用户接口,为 java 程序员提供了独立于特定的数据库系统而实现与网络数据库互连的方式。自从 1995 年 5 月 23 日,sun microsystem 公司正式对外发布 java 语言规范以来,其发展势不可挡,在 internet 高速发展的今天显示出神奇的魅力。java 具有简单、灵活和功能强大等优点。用 java 设计的 internet 上的应用程序,具有十分快速的实时性、精简性、安全性和完全开放性。1.2.21.2.2关系数据库关系数据库第一代数据库系统就是支持层次和网状数据模型的数据库系统。这种数据库系统虽然还有用户在使用
10、,但显然已退出主流。2第二代数据库系统就是关系型数据库模型。60 年代后期,ibm 的研究员 e.f.codd博士提出了关系数据库模型。1970 年 6 月他在发表的名为“关于大型共享数据库数据的关系模型”一文中,首先概述了关系数据模型及其原理,并把它用于数据库系统中。在关系数据库中信息被存放在二维表结构的表中,表由行和列组成。关系模型使用数学法则于数据库领域,使关系模型成为数学化模型。关系是表的数学术语,表是一个集合,因此集合论、数理逻辑等知识可以引入到关系模型中来。关系模型的数据结构简单灵活,易学易懂,便于掌握和使用。因此,关系数据库模型很快流行起来,具有创新精神的数据库厂商纷纷投入大量的
11、人力和财力研制关系数据库管理系统及与之配套的应用开发工具,为关系数据库的应用提供了一种完整的解决方案。在关系数据库中,信息被存放在表中,表由行和列组成,每行描述实体的一个实例,每列描述实体的一个属性。下面简单介绍一下关系数据库元素的三个术语和关系模型的完整性约束规则。实体-实体是客观存在和相互区分的“事物” 。联系联系是描述实体之间的存在的对应关系或连接关系。键键是一种逻辑结构,它被用于实现实体间的联系。主键标识在表中的每一行,外键反映两个表之间的联系,外键与主表中的主键值相匹配。实体性-实体完整性是指关系中的元组在组成主键的属性上,不能为空值,也不能有空值。参照完整性参照完整性涉及控制跨越两
12、个或两个以上表的数据一致性规则。参照完整性通过主键和外键数据之间保持一致性来保证。用户定义的完整性用户定义的完整性是针对某一具体关系数据库的约束条件。它反映某一具体应用所涉及的数据必须满足的语义要求。1.2.31.2.3sqlsql serverserver 20002000 简介简介sql server 按 client/server 结构而设计。凡是像输入和显示数据这样需要用户频繁干预的任务都集中在客户端上完成,而对于数据库的存取和控制任务则由服务器完成。当用户需要读取数据库中的数据时,就会通过网络管道向服务器提出申请,服务器对客户端的数据库请求作出处理,然后仅传给客户端索要的结果,大大减
13、少了网络流量。sql server 提供了 db-library 和 odbc 两种访问数据库的程序接口。odbc 与sql server 的连接如图 1.1 所示。3 图 1.1 odbc 与 sql server 的连接示意图sql server 2000 是 microsoft 公司推出的 sql server 数据库管理系统的较新版本,应用十分广泛。该版本继承了 sql server 7.0 版本的优点同时又比它增加了许多更先进的功能具有使用方便可伸缩性好与相关软件集成程度高等优点可跨越从运行 microsoft windows 98 的膝上型电脑到运行 microsoft windo
14、ws 2000 的大型多处理器的服务器等多种平台使用。对于关系型数据库管理系统来说,sql 语言是他的标准语言,所有关系型数据库管理系统都对其提供了完整的支持。常用的 sql 语句有 select, insert, update, create, delete, drop 等。1.2.41.2.4 jbuilderjbuilder 简介简介borland jbuilder 是业界领先的 java 可视化开发环境,可用于构建基于 java 2 平台的应用程序、applets、jsp/serverlets、javabeanstm、enterprise javabeans,以及分布式 j2ee 应用
15、。 jbuilder 2005 加速企业 javabeans,web 服务器,xml,移动产品和数据库应用开发,双向可视化设计工具和迅速调用 j2ee 应用服务器,这些应用服务器包括 bea weblogic, ibm websphere, sybase easerver, jboss, 和 integrated borland enterprise server。拥有创新强大的 javaserver faces, struts, 和 web 服务设计工具,支持 j2se 5.0 (jdk 1.5), uml 代码可视化,分布式因子分解,代码审核,企业单位测试,支持多语控制系统。sqlserv
16、erodbc驱动程序sqlsercer 数据库客户程序informixodbc驱动程序odbc 管理器access odbc驱动程序odbcaccess 数据库informix数据库4第二章第二章 需求分析需求分析为了开发出真正满足用户需求的系统,首先必须知道用户的需求。不论开发人员把系统制作得多么出色,不能满足用户需求的程序只会令用户失望。所以在设计制作系统的准备工作中,需求分析是必不可少的内容,它的基本任务是准确的回答“系统必须做什么?”这个问题。2.12.1 用户需求分析用户需求分析在系统制作的前期准备工作中,本人对许多家庭进行了走访,特别是一些有记录族谱习惯的家庭。在走访中,本人了解到
17、随着人民生活水平的不断提高,现在越来越多的家庭开始着手准备记录自己的族谱。与传统的用纸笔记录的模式相比较,人们更倾向于使用日益普及的计算机来记录。所需要的功能大体分为三个部分:一是对个人信息的记录,如姓名、生卒年、学历、从事工作、简历等等;二是对婚姻情况的记录,如配偶姓名,是首婚还是再婚,如果是再婚,再婚的原因是什么,有无子女;三是对个人家庭情况(涉及到多个成员的关系问题)的查询:如父母姓名,配偶姓名,配偶人数,子女姓名,子女是亲生还是领养或者是过继等等。大多数家庭都希望系统保密性好一些,因为家族信息涉及到了很多家事,不喜欢让不相干的人员了解。经过对家庭用户比较深入的访谈,结合自身家庭经验,系
18、统主要设计七个功能模块:用户登录、个人信息录入、家庭信息录入、个人信息查询、婚姻信息查询、家庭信息查询和信息删除。家庭用户不可能像企业或者事业单位那样,有专门的系统管理人员和系统维护人员,过于复杂的系统可能会给家庭用户带来许多麻烦。所以考虑到家庭用户的实际特点,本系统功能设计的比较简单,而且加入了系统帮助模块,基本可以让所有家庭成员短时间内学会如何操作。系统实用性很强,基本可以满足普通家庭用户对家族信息管理的需要。登录模块主要是满足用户对安全性的要求。52.22.2 数据概念设计数据概念设计在系统的需求分析阶段,数据概念设计是不可缺少的。数据概念设计是用概念数据模型表示数据及其相互间的关系,这
19、种数据模型是与 dbms 无关的、面向现实世界的、易于理解的数据模型,是独立于计算机的数据模型,独立于计算机的软硬件系统,与用户进行交流十分方便。概念性数据模型关心的是如何完整、正确地反映客观实际情况,不关心在数据库中如何实现。这种数据模式能真实地反映用户要求的实际情况,是一种容易被人们理解的直观的数据库结构模式。同时也是一种相对稳定统一的数据模式,一般情况下很少变动。概念性数据在用户和设计者之间建立了桥梁。是设计数据库结构的基础。概念设计中自顶向下的实体分析方法,即常用的实体联系模型(简称 e-r 模型) ,对具体数据进行抽象加工,将实体集合抽象成实体类型。用实体间联系反映现实世界事物间的内
20、在联系。根据用户对系统所含实体的需求分析,给出各实体的 e-r 图。根据用户对登录模块的需求,登录用户实体主要设立了两个属性:用户名和密码。这样的实体属性设计就可以基本满足用户的安全性需求。如图 2.1图 2.1 登录用户实体图根据用户对个人信息存储方面的需求,个人信息实体主要设立了姓名、性别、学历、生卒年、简历等属性。这样的实体属性设计就可以基本满足用户对个人信息的需求。根据用户对婚姻情况存储方面的需求,婚姻情况实体主要设立了男女方姓名、结婚形式、结婚时间等属性。这样的实体属性设计就可以基本满足用户对婚姻情况记载的需求。经过如上分析,作 e-r 图如图 2.2:学历性别生卒年个人简历用户名密
21、码登录用户姓名6 n 1 1 1图 2.2 系统 e-r 图虽然数据库中只设计了两个表,但这两个表之间的连接可以进行许多较为复杂的查询。同时这两个表之间的联系也是家族血缘关系的体现,可以将若干个个体家族成员结合成一个有机的整体。表之间的联系主要体现在以下三方面:1.父母与子女的关系。每一对父母都可以有一个或者多个子女,但是每一个子女却有唯一一对父母。这个联系是将个人信息中的“父母婚姻序号”与婚姻情况中的“序号”连接在一起,构成了父母与子女的关系。2.男性家族成员的婚姻关系。每一个家族成员都可以有自己的婚姻关系。在对应的时候应该首先判断家族成员的性别,如果是男性,那么个人信息中的姓名与婚姻情况中
22、的男方相对应便构成了男性家族成员的婚姻关系。3.女性家族成员的婚姻关系。每一个家族成员都可以有自己的婚姻关系。在对应的时候应该首先判断家族成员的性别,如果是女性,那么个人信息中的姓名与婚姻情况中的女方相对应便构成了女性家族成员的婚姻关系。表与表之间的联系使得整个家族信息网十分严谨、明确。而且能够进一步拓展系统的功能,为用户提供方便和实效。个人信息男女方姓名结婚形式结婚时间属于构成家庭婚姻情况父母子女配偶72.32.3 模块功能分析模块功能分析本着以用户为本的思想,结合本人的技术水平,家族信息管理系统精心设计了以下模块,作到简洁明了,以方便用户使用。图 2.3 是家族信息管理系统的功能结构图。
23、用户登录本系统为家族信息管理系统, 具有一定的保密性, 因此必须要有一定的权限才能使用本系统, 要使用本系统就必须先登录。登录之后进入系统的主界面, 在主界面可以选择用户想要执行的功能模块。 个人信息录入在维护本系统时, 要不断更新系统的数据, 其中家族成员的信息是不断增加的, 当新增加成员时, 要保证家族信息的同步更新。本模块可将新增加成员的个人信息录入保存在系统的数据库中。它为用户录入新成员的个人信息提供接口。家族信息管理系统录入婚姻情况模块查询个人信息模块查询婚姻情况模块查询家庭信息模块录入个人信息模块登陆模块信息录入功能信息查询功能信息删除功能选择删除信息模块帮助界面欢迎界面8图 2.
24、3 家族信息管理系统的功能结构图 婚姻信息录入家族成员的婚姻信息是在不断更新的, 当新增加婚姻信息时, 要保证系统关于婚姻的信息同步更新。本模块可将新增加的婚姻信息录入保存在系统的数据库中。它为用户录入新的婚姻信息提供接口。 个人信息查询本模块是用来查询已经录入家族成员的个人信息,为用户查询家族成员的个人信息提供接口。包括已故成员的信息。 婚姻信息查询本模块是用来查询已经录入家族成员的婚姻信息,为用户查询家族成员的婚姻信息提供接口。包括已故成员的信息。 家庭信息查询本模块是用来查询家族成员的家庭信息,为用户查询家族成员的血缘关系提供接口。包括已故成员的信息。 家族信息删除在已经录入的家族成员信
25、息里面,由于管理员操作的失误,造成成员信息错误的时候,可以删除错误信息,并重新录入正确的信息。本模块主要是提供这样一个删除的接口。 欢迎界面在成功登录之后,用户将首先看到欢迎界面。本界面体现了以人为本的理念,充分给用户以亲切的感受。主要内容包括指导教师,制作人姓名,系统版本等信息。 帮助界面使用者可以在本模块学习怎么使用本系统, 以方便操作。它是为用户使用本系统而建立的模块。9第三章第三章 总体设计总体设计经过了需求分析阶段的工作,系统需要做什么已经清楚了,在总体设计里主要是决定怎样做。本章主要解决三个问题:系统的设计目标,系统的开发设计思想,系统的功能设计。3.13.1 系统设计目标系统设计
26、目标家族信息管理系统的系统设计目标是能帮助家庭成员更快、更好的管理家族信息,其中家族信息包括个人信息、婚姻信息和家庭信息,如家庭成员的姓名、性别、生年、卒年、学历、从事工作、与其家族成员的关系等。通过这样一个家庭信息管理系统,使用户对家庭信息的日常管理能够系统化、规范化、自动化,从而达到提高管理效率的目的。个人的信息安全是特别重要的,尤其是在当今的社会背景。为保证这种需求,系统设计了系统登录模块,只有输入正确的用户名和密码,才能进入主菜单,对系统信息进行管理。这个设计充分考虑到了用户的隐私权,以及家族信息的保密。使用户得到最大的方便并且在使用系统时有一份愉悦的心情是每一位系统制作人员永恒的追求
27、,这也正是本系统追求的设计目标。在实际制作过程中,系统也是按照这个目标进行设计的。3.23.2 开发设计思想开发设计思想1.尽量采用现有的软硬件环境,及先进的管理系统开发方案,从而达到充分利用现有资源,提高系统开发水平和应用效果的目的。2.系统应符合家族信息管理的需要,并达到操作过程中的直观、方便、实用、安全等要求。3.系统采用模块化程序设计方法,既便于系统功能的各种组合和修改,又便于将来的功能补充和维护。4.系统应具备数据库维护的功能,及时根据用户需求进行数据的添加、删除、修改等操作。5.制作人员的技术水平也是系统设计中不得不考虑的因素,所以在技术可以提供支撑的最大限额内,尽量开发出功能比较
28、强大的令用户满意的系统。3.33.3 系统功能设计系统功能设计在需求分析阶段,已经对家族信息管理系统所需要的功能做了大体的阐述,这里10对功能的实现方法作以具体描述。1) 用户登录 检验用户的身份,给系统最大程度上的保密性。通过数据库对已有用户名和密码的存储来检验用户身份。如图 3.1: 错误正确图 3.1 用户登录示意图2) 欢迎界面 主要内容包括指导教师,制作人姓名,系统版本等信息。这个界面的信息完全是代码实现,不需要与数据库连接。3) 个人信息录入 在家族成员个人信息录入的过程中,由于信息量相对较大,所以在用代码实现的时候可能会遇到麻烦。这个模块需要和数据库连接,在制作的过程中要十分认真
29、,这样才能确保信息录入数据库的相应表格和相应列。4) 婚姻信息录入 家族成员婚姻信息录入模块需要和数据库连接,在制作的过程中十分认真,这样才能确保信息录入数据库的相应表格和相应列。如图 3.2: 不匹配 用户登录重新登录登录婚姻录入报错重新录入检验数据类型进行验证传入数据库输入用户名和密码11 类型匹配图 3.2 婚姻信息录入示意图5) 个人信息查询 用代码实现功能,提取出要查询的关键信息,在数据库中检索到相应结果后返回,在界面上体现出来。6) 婚姻信息查询 用代码实现功能,提取出要查询的关键信息,在数据库中检索到相应结果后返回,在界面上体现出来。7) 家庭信息查询 这个模块是整个系统查询功能
30、的核心,它涉及到数据库中除登录表之外的所有表格。8) 信息删除 用代码实现功能,提取出要删除的关键信息,在数据库中检索到相应结果后删除。可以实现对个人信息的删除以及对婚姻信息的删除。如图 3.3: 失败成功 图 3.3 信息删除示意图输入关键字删除删除数据库信息提示重新输入成功保存在数据库中查找信息删除129) 帮助界面 主要是对用户在操作过程中遇到的一些问题提供设计者尽可能提供的帮助信息,用来指导用户使用系统。 经过上述分析,各个模块的功能已经基本清晰。整个系统是各个模块组合的有机的整体,一共包含了七个功能模块和两个提示界面,把各个模块和界面组合起来,绘制系统流程图如图 3.4 所示。该流程
31、图描述了整个家族信息管理系统的整体流程,它大致描述了系统使用的全过程。图 3.4 家族信息管理系统流程图系统登录身份验证选择功能录入个人录入婚姻查询个人查询婚姻查询家庭信息删除帮助界面欢迎界面退出正确错误是否是否退出13第四章第四章 数据库设计数据库设计数据库的设计与实现关系到管理系统的最终能否顺利实现,本章主要介绍家族信息管理系统的数据库总体设计思想以及关系模型的建立。4.14.1 设计总体思想设计总体思想家族信息管理系统是一个数据库应用系统,家族成员的所有信息都保存在数据库中。在数据库应用系统开发的过程中,数据库结构是一个非常重要的问题,这里所说的数据库结构设计是指数据库中各个表结构的设计
32、。包括信息保存在哪些表格中,各个表的结构如何以及各个表之间的关系。数据库结构设计的好坏直接对应用系统的效率以及实现的效果产生影响,好的数据库设计会减少数据库的存储量,数据的完整性和一致性比较高,系统具有较快的响应速度,简化基于此数据库的应用程序的实现等等。数据库的设计路线如图 4.1 所示: 图 4.1 数据库设计实现过程示意图依据功能分析,设计数据库的数据项和数据结构如下: 登录用户信息表。包括数据项有用户名和密码。 家族成员个人信息表。包括数据项有成员姓名、性别、生年、卒 年、学历、从事工作等。 家族成员婚姻情况表。包括配偶姓名、结婚形式、结婚时间等。4.24.2 关系模型关系模型建立建立
33、关系模型的建立首先要解决的问题是如何确定这些关系模式的属性和码。经过仔细的考虑,利用如下表结构将数据关系在表中实现,完成前期建表工作。现实世界需求分析概念数据库设计逻辑数据库设计物理数据库设计实现14在登录表中共设置了两列:用户名和密码。没有设置主码,两列都允许为空,也就是说允许用户不设置用户名和密码而只需要在弹出的登录窗口中点击“确定”进入系统。数据库表中各列的数据类型及长度定义如表 4-1 所示:表 4-1 登录表列名数据类型长度允许空用户名varchar50允许密码varchar50允许在个人信息表中,设置了“序号” 、 “姓名” 、 “性别” 、 “生年” 、 “卒年” 、 “学历”
34、、“父母婚姻序号” 、 “与父母关系” 、 “从事工作” 、 “个人简历”等十列。其中把“序号”列设置为表的主码。数据库表中各列的数据类型及长度定义如表 4-2 所示:表 4-2 个人信息表列名数据类型长度允许空序号int4主码不允许姓名char10允许性别char10允许生年int4允许卒年int4允许学历char10允许父母婚姻序号int4允许与父母关系char10允许从事工作char10允许个人简历varchar1000允许在婚姻情况表中,设置了“序号” 、 “结婚时间” 、 “男方” 、 “女方” 、 “婚配形式” 、“再婚原因” 、 “离婚时间” 、 “儿女人数”等八列。其中把“序号
35、”列设置为表的主码。数据库表中各列的数据类型及长度定义如表 4-3 所示:表 4-3 婚姻情况表列名数据类型长度允许空序号int4主码不允许结婚时间int4允许男方char10允许女方char10允许婚配形式char10允许15再婚原因char10允许离婚时间int4允许儿女人数int4允许16第五章第五章 系统实现系统实现系统采用 jbuiler 这个优秀的软件开发工具实现,共制作了两个框架(frame)和八个面板(panel)。本章主要介绍模块功能的具体实现。5.15.1 登录窗口登录窗口当程序启动后,系统首先弹出一个登录对话框,此时系统要求输入用户名和密码。登录窗口有两个按钮:“确定”和
36、“重置” 。用户输入用户名和密码后单击“确定”按钮,如果输入的用户名和密码与数据库中存储的信息一致,用户将进入系统的主界面。如果输入的用户名或密码有误,系统就会提示“用户名或密码错误” ,要求重新输入用户名和密码。如果由于用户大意,输入的用户名和密码出现了失误,可以点击“重置”按钮重新输入。界面如图 5.1:图 5.1 登陆窗口界面事件处理:本界面有两个按钮,都有相应的事件处理。确定按钮是用来处理用户登录,如果登录成功则进入系统的主界面,否则将提示重新登录;重置按钮则可以将已经输入的信息清除,以便用户重新输入。当单击“确定”时,确定按钮的事件处理首先要打开数据库,然后将用户输入的用户名、密码同
37、数据库中的记录进行比较,如果与记录相符,则开始登录,否则返回登录界面提示重新输入。jbuilder 对登录模块的设计:在窗体上添加了三个 jlable 构件、一个jtextfield 构件、一个 jpasswordfield 构件和两个 jbutton 构件。jtextfield 构件和 jpasswordfield 构件用来输入用户名和口令。功能说明:维护系统的安全,防止非法用户进入本系统。175.25.2 录入功能录入功能关于家族信息的录入,系统分为两个部分:个人信息录入和婚姻情况录入。5.2.15.2.1 个人信息录入模块个人信息录入模块在进入系统时,在左边的目录中单击录入个人,便进入了
38、个人信息录入的模块,可以录入家族成员的个人信息。界面如图 5.2:图 5.2 录入个人界面可以看到窗口中有十个输入框,分别用来输入家族成员的序号、父母序号、姓名、生年、卒年、性别、与父母关系、学历、从事工作和个人简历。当输入完要录入的个人信息后,单击“确定”按钮将输入的家族成员信息保存到本系统的数据库中。系统数据库的个人信息表是以序号作为主码的,因此家族成员序号是唯一的,在输入家族成员序号时不能有重复。为了充分方便用户使用,让用户尽量减小工作强度,在该面板的设计上,系统加入了很多下拉选框(jcombobox 组件) ,如性别、与父母关系等。这样的好处有两点:第一是可以减少用户的工作量,第二是规
39、范用户的填写,使用户填写的信息尽量模式化,为信息准确的满足数据库的类型要求打下坚实基础。其中性别下拉选框内容有男、女;与父母关系下拉选框内容有亲生、领养、过继、私生;学历下拉选框内容有小学、中学、学士、硕士、博士、其他;从事工作下拉选框内容有农民、工人、教师、军人、医生、其他。如 jcombobox2 组件内容设置为:jcombobox2.additem(农民);jcombobox2.additem(工人);jcombobox2.additem(教师);jcombobox2.additem(军人);18jcombobox2.additem(医生);jcombobox2.additem(其他);
40、5.2.25.2.2 婚姻情况录入模块婚姻情况录入模块在进入系统时,在左边的目录中单击录入婚姻,便进入了婚姻情况录入的模块,可以录入家族成员的婚姻情况。界面图略。在界面中可以看到窗口中有八个输入框,分别用来输入婚姻的序号、结婚时间、男方姓名、女方姓名、婚配形式、再婚原因、离婚时间和儿女人数。当输入完要录入的婚姻信息后,单击“确定”按钮将输入的家族成员婚姻信息保存到本系统的数据库中。系统数据库的婚姻情况表是以序号作为主码的,因此婚姻序号是唯一的,在输入婚姻序号时不能有重复。在该面板的设计上,系统加入了很多下拉选框(jcombobox 组件) ,如婚配形式、再婚原因等。其中婚配形式下拉选框内容有首
41、婚、二婚、三婚、四婚、多婚;再婚原因下拉选框内容有离异、丧偶。5.35.3 查询功能查询功能关于家族信息的查询,系统分为三个部分:个人信息查询、婚姻情况查询和家庭信息(血亲关系)查询。查询模块与数据库的连接涉及到访问数据库和把数据从数据库中返回两个部分,相对来说较为复杂,用图 5.3 说明这个过程查询界面数据库查询界面图 5.3 查询模块与数据库连接示意图5.3.15.3.1 个人信息查询模块个人信息查询模块个人信息查询模块的主要功能是检索已经录入本系统的成员的个人信息。在目录中单击查询个人,便进入了查询个人界面,如图 5.4:本模块需要输入家族成员的姓名作为关键字进行查询。输入成员姓名之后,
42、点击访问数据库从数据库返回19确定,该成员的信息就会在相应的框格中显示出来。如果数据库中没有要查询的成员,系统将提示“查无此人” 。这时用户可以单击“重置”按钮将所有项目清空,重新输入要查询的信息。void jbutton2_actionperformed(actionevent e) /重置的功能 jtextfield1.settext();fumu.settext();shengnian.settext();zunian.settext();xingbie.settext();xueli.settext();jianli.settext();gongzuo.settext();guanxi
43、.settext();xuhao.settext();图 5.4 查询个人界面综合上面的陈述,结合在系统总体设计阶段对查询个人模块的分析,绘制该模块具体实现的流程图如图 5.5:查询开始输入要查询人员的姓名是否存在返回界面输出输出查无此人否是结束20图 5.5 查询个人模块流程图5.3.25.3.2 婚姻情况查询模块婚姻情况查询模块婚姻情况查询模块的主要功能是检索已经录入本系统的家族成员的婚姻情况。在目录中单击查询婚姻,便进入了婚姻情况查询模块。界面图略。 本模块需要输入婚姻的序号作为关键字进行查询。输入婚姻序号之后,点击确定,该婚姻的信息就会在相应的框格中显示出来。如果数据库中没有要查询的婚
44、姻,系统将提示“查无此婚姻” 。这时用户可以单击“重置”按钮将所有项目清空,重新输入要查询的信息。综合上面的陈述,结合在系统总体设计阶段对查询婚姻模块的分析,绘制该模块具体实现的流程图如图 5.6:图 5.6 查询婚姻模块流程图5.3.35.3.3 家庭信息查询模块家庭信息查询模块家庭信息查询模块的主要功能是综合已经录入的个人信息和婚姻信息检索成员的家庭信息。该模块的功能比较强大,实现起来也比较复杂,在代码的书写上使用了大量的 sql 语言。在目录中单击查询家庭,便进入了家庭信息查询模块。界面如图 5.7所示。查询开始输入要查询婚姻的序号是否存在返回界面输出查无此婚姻否是结束21图 5.7 查
45、询家庭界面本模块需要输入要查询的个人的序号作为关键字进行查询。输入个人序号之后,点击确定,所输入个人的家庭信息就会在相应的框格中显示出来。如果数据库中没有要查询的个人序号,系统将提示“查无此家庭” 。这时用户可以单击“重置”按钮将所有项目清空,重新输入要查询的信息。在查询本人姓名、父亲姓名和母亲姓名时,首先将个人信息表和婚姻情况表连接,使个人信息表的父母婚姻序号与婚姻情况表的序号相等。再进行查询男方姓名、女方姓名和个人姓名。当然,本人姓名可以根据用户输入的序号在个人信息表中直接查询,但是为了代码简化,系统设计时将本人姓名查询与父母姓名放在一起查询。在查询结婚次数、配偶姓名和子女姓名时,首先要分
46、清输入的家族成员的性别,根据输入的序号在个人信息表中查询性别。确定性别之后再进行其他查询。在查询成员结婚次数时,首先把个人信息表和婚姻情况表连接,按照要查询人员的姓名分组,然后用集函数统计元组个数即可实现。在查询成员配偶姓名时,首先把个人信息表和婚姻情况表连接,个人序号与输入相同,并且个人姓名与婚姻情况表中男(女)方的姓名相同,然后输出女(男)方的姓名即可实现。一个人的配偶可以有多个,系统支持多个配偶姓名同时输出。在查询成员子女姓名时,运用嵌套查询,首先查出个人婚姻情况序号,使之与子女的个人信息表中父母婚姻序号相同,然后输出子女的个人信息表中的姓名即可实现。一个人可以有多个子女,系统支持多个子
47、女姓名同时输出。模块流程如图 5.8 所示:查询开始22 女 男图 5.8 查询婚姻模块流程图由于该模块的查询量比较大,为了把查询功能描述的更加清晰,作家庭信息查询方式表示意。如表 5-1 所示:表 5-1 家庭信息查询方式表:查询项目应用的 sql 方法方法关键字本人姓名父母婚姻序号=婚姻序号,两表连接表连接父亲姓名父母婚姻序号=婚姻序号,两表连接表连接母亲姓名父母婚姻序号=婚姻序号,两表连接表连接结婚次数两表连接,按姓名分组,集函数分组配偶姓名姓名=婚姻中男(女)方,两表连接判断性别子女姓名应用 sql 语言嵌套查询实现嵌套5.45.4 删除功能删除功能删除模块的主要功能是删除录入时有错误
48、的成员信息,以便用户修改和维护系统。输入要查询家庭成员的序号是否存在返回界面输出本人姓名及父母姓名查无此婚姻否是结束表连接查询判断性别查询输出男方结婚次数、配偶姓名和子女姓名查询输出女方结婚次数、配偶姓名和子女姓名23为了充分方便用户使用,让用户尽量减小工作强度,在该面板的设计上,系统同样加入了下拉选框(jcombobox 组件):类型,内容包括个人信息和婚姻情况。这个模块,共设置了两个输入框:类型和序号,分别对应数据库中的表格名称和主码名称,使用户能够准确的完成删除动作。设置了两个按钮:“删除”和“重置” ,来完成相应的功能。其中删除按钮上的“删除”两个字设置为了醒目的红色,提示用户在删除的时候要慎重,信息一旦删除将无法恢复。在目录中单击信息删除,便进入了信息删除功能模块。界面如图 5.9 所示。在系统功能的实现上,删除模块的程序设计主要应用了分支模式。在下拉选框选择要删除的信息类别之后,程序按照不同的类别进行设计,根据信息的主码序号,准确的在数据库中删除用户想要删除的部分。与前几个模块相比,该模块的功能实现比较简单,在
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 简单随机抽样课件好
- 家纺导购专业知识培训课件
- 酒店物业管理服务合同三篇
- 社团活动对学生发展的影响计划
- 秋季学期学生学习成果展示计划
- 促肝细胞生长素相关项目投资计划书
- 前台文员的个人发展规划计划
- 销售心理学与客户洞察培训
- 张紧装置相关项目投资计划书范本
- 输尿管癌的护理查房
- 2022年专业技术职称等级分类
- DB37 5155-2019 公共建筑节能设计标准
- 商务英语翻译之合同翻译
- 申办继承权亲属关系证明
- 钢筋统计表(插图有尺寸)
- T∕CTES 1033-2021 纺织定形机废气治理技术规范
- 关于购置64排128层CT考察报告
- 各种反时限保护计算公式
- 呼和浩特城规划管理技术规定
- 替票使用管理规定
- 供应商基本资料表格模板
评论
0/150
提交评论