1、 本科毕业论文(设计)题 目 通讯录管理系统 1目 录文 献 综 述 .2第一章 引言 .3通讯录的现状和背景 .3第二章 开发技术及技术 .52.1 开发技术 .52.2 开发工具 .6第三章 系统的需求分析 .83.1 系统功能分析 .83.2 系统用例分析 .93.3 数据库分析 .12第四章 系统实现 .154.1 数据库的实现 .154.2 系统功能实现 .164.3 功能模块的实现 .18第五章 系统测试 .255.1 登陆用例的程序设计 .255.2 登录成功:登录用户登录成功后转向主窗体 .285.3 登录用户对联系人信息的管理操作 .30第六章 总 结 .42致 谢 .43参
2、 考 文 献 .442文献综述通讯录管理系统的设计与实现李本城西南大学荣昌校区信息管理系 重庆荣昌 402460摘要: 随着社会的发展,人际关系变得越来越重要,为了保持良好的人际关系,必须经常与亲戚、朋友、同学、同事保持联系,但是有时候存在着许多的限制条件,比如怎样找到交流对象的各种信息?可能你会想到现实生活中的手机等通讯工具,由于这些工具的单一性,不可能在第一时间找到自己想要的信息资料,因此,为了能够快速查找到联系人的信息,节省查找时间,开发通讯录管理系统。通讯录管理系统是一个基于 C/S 模式的个人通讯录管理系统。它是将自己的联系人的具体信息集中管理,成为一个方便人们使用的小软件。在开发过
3、程中主要运用Java,JDK,MySQL,SWING 等技术,由于开发工具和数据库之间的良好使用,可以为开发带来方便,使之成为一个可施行的系统。从而达到开发的目的-实现对通讯录信息的管理。 “优秀的人际关系是一个人成功的重要因素”这已经成为不争的事实,这些日益繁多的人际交往使得我们很难搞清楚与每个人具体的联系方式,这严重影响了一个人的发展,所以通讯录管理系统的建立已是必要的了,此次课程设计我利用了数据结构中的知识以及 JAVA 语言的知识设计的通讯录管理系统能够达到快速了解联系人信息,通讯录管理系统主要包括:1通讯录链表的建立 2通讯者结点的插入 3通讯者结点的查询 4通讯者结点的删除 5通讯
4、录链表的输出 0退出通讯录管理系统。你能够通过本系统了解联系人的姓名、手机、家庭地址,你也可以根据自己的需要改变系统的信息,也可以浏览全部通讯的联系人,并且可以根据数据表的各字段来查询你所要找的联系人等功能。相信通过使用该通讯录管理系统能够更加便利你的生活,为你的良好的人际关系添砖加瓦,帮助你走向成功。目前的信息通信能力已经走超出了我们的想象,越来越多的通信工具出现,但无论是何种工具,其基本的一项功能就是记录通信者的信息,也便在需要时进行查寻。 关 键 词:个人通讯录管理系统、添加、删除、查找、数据库3第一章 引言1.1 通讯录的现状和背景俗话说:”海内存知己,天涯若比邻”,在现在竞争激烈,快
5、节奏的生活中,人们之间的交流变得十分重要。随着计算机技术的飞速发展,计算机在企业管理和个人生活中的应用越来越普及,越来越重要。利用计算机实现公司往来通讯或个人的通讯管理显得越来越重要。对于用户来说,利用计算机高效率地完成通讯录的查询,是适应现代通讯录管理制度要求,而销售管理是一项琐碎、复杂而又十分细致的工作,一般不允许出错,如果实行手工操作,须手工填制大量的表格数据,这就会耗费工作人员大量的时间和精力,计算机进行销售管理工作,不仅能够保证工作准确无误、快速完成,而且还可以利用计算机对有关商品的各种信息进行管理,服务于企业的各个部门,同时计算机具有手工管理所无法比拟的优点.例如:检索迅速、查找方
6、便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高企业销售管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。 在现代社会中管理的作用越来越显得重要和突出。一般来讲,管理通过计划、组织、指导与领导、控制等手段,为组织制定目标,应用组织的各种要素,以实现组织的目标。本世纪以来,由于社会生产力的迅速发展和科学技术的突飞猛进,人们进行信息交流的深度和广度不断增加,管理所需要的信息量急剧增长,同时对信息的处理要求及时、准确,这导致了传统的信息处理方法和手段已不能适应现代管理的需要;传统的企业管理活动中,把人、才、物作为企业的主要资源。但是随着社会化大生产的不断扩大和
7、社会对产品多样化的需求,人们越来越重视信息在生产经营及企业管理中的作用,并把它当作企业的一种极其重要的资源,人们称之为“信息资源” ,信息资源的处理已经成为当今世界上一项主要的社会活动。电子计算机的诞生 “信息时代”的开始,它使企业管理现代化成为可能。 随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。 作为计算机应用的一部分,使用计算机对通讯录进行管理,有着手工管理所无法比拟的优点.例如: 浏览迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高人事劳资管理的效率,也是企业的科学化、
8、正规4化管理,与世界接轨的重要条件。 因此,开发这样一套软件成为很有必要的事情,在下面的正文中我们将以开发通讯录管理系统系统为例,谈谈其开发过程和所涉及到的问题及解决方法。5第二章 开发技术及技术2.1 开发技术2.1.1 MVCMVC 全名是 Model View Controller,是模型(model)视图(view)控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。MVC 被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形
9、化用户界面的结构中。MVC 开始是存在于桌面程序中的,M 是指业务模型,V 是指用户界面,C 则是控制器,使用 MVC 的目的是将 M 和 V 的实现代码分离,从而使同一个程序可以使用不同的表现形式。比如一批统计数据可以分别用柱状图、饼图来表示。C 存在的目的则是确保 M 和 V 的同步,一旦 M 改变,V 应该同步更新。模型视图控制器(MVC)是 Xerox PARC 在二十世纪八十年代为编程语言Smalltalk80 发明的一种软件设计模式,已被广泛使用。后来被推荐为 Oracle 旗下Sun 公司 Java EE 平台的设计模式,并且受到越来越多的使用 ColdFusion 和 PHP
10、的开发者的欢迎。模型视图控制器模式是一个有用的工具箱,它有很多好处,但也有一些缺点。2.1.2 JDKJDK(Java Development Kit)是 Sun Microsystems 针对 Java 开发员的产品。自从Java 推出以来,JDK 已经成为使用最广泛的 Java SDK(Software development kit) 。JDK 是整个 Java 的核心,包括了 Java 运行环境,一堆 Java 工具和 Java 基础的类库(rt.jar)。不论什么 Java 应用服务器实质都是内置了某个版本的 JDK。因此掌握 JDK是学好 Java 的第一步。最主流的 JDK 是
11、Sun 公司发布的 JDK,除了 Sun 之外,还有很多公司和组织都开发了自己的 JDK,例如 IBM 公司开发的 JDK,BEA 公司的Jrocket,还有 GNU 组织开发的 JDK 等等。其中 IBM 的 JDK 包含的 JVM 运行效率要比 Sun JDK 包含的 JVM 高出许多。而专门运行在 x86 平台的 Jrocket 在服务端运行效率也要比 Sun JDK 好很多。从 SUN 的 JDK5.0 开始,提供了泛型等非常实用的功能,其版本信息也不再延续以前的 1.2,1.3,1.4,而是变成了 5.0,6.0 了。从 7.0 开始,其运行效率得到了非常大的提高,现在已有 8.0
12、问世了。62.1.3 SWING图形用户界面(Graphical User Interface,GUI) 。Swing 是一个用于开发 Java 应用程序用户界面的开发工具包。它以抽象窗口工具包(AWT)为基础使跨平台应用程序可以使用任何可插拔的外观风格。Swing 开发人员只用很少的代码就可以利用Swing 丰富、灵活的功能和模块化组件来创建优雅的用户界面。 工具包中所有的包都是以 swing 作为名称,例如 javax.swing,javax.swing.event2.1.4 JavaJava 语言是一种面向对象的编程语言,是 Sun Microsystems 开发的编程平台。Java 技
13、术基于单一 Java 虚拟机(JVM)的概念,JVM 是编程语言与机器底层软件和硬件之间的翻译器。编程语言的所有实现都必须模拟 JVM,从而使 Java 程序可以在具有 JVM 版本的任何系统上运行。Java 编程语言是与众不同的,因为 Java 程序需要经过编译(翻译为叫做 Java 字节码的中间语言)和解释(通过 JVM 分析和运行字节码) 。编译只进行一次,而解释则在每次运行程序时都要进行。Java 语言具有简单、面向对象、分布性、解释型、安全性、平台无关性、可移植性、高性能、支持语言级多线程等优点。广泛应用于个人 PC、数据中心、游戏控制台、 科学超级计算机 、移动电话和互联网,同时拥
14、有全球最大的开发者专业社群。Java 自问世以来,以其得天独厚的优势,在 IT 业界掀起了研究、开发它的浪潮,显示出了美好的发展前景。作为一种与底层硬件无关的、 “编写一次,到处运行” 的高级语言和计算平台,Java 天生就具有将网络上的各个平台连成一体的能力,真正实现了“网络就是计算机 ”的理念。 在全球云计算和移动互联网 的产业环境下,Java 更具备了显著优势和广阔前景。2.2 开发工具2.1.1 MyElipse MyEclipse 企业级工作平台(MyEclipseEnterprise Workbench ,简称MyEclipse)是对 EclipseIDE 的扩展,利用它我们可以在
15、数据库和 JavaEE 的开发、发布以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的 JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts,JSP ,CSS ,Javascript ,Spring,SQL,Hibernat 。7MyEclipse 是一个十分优秀的用于开发 Java, J2EE 的 Eclipse 插件集合,MyEclipse 的功能非常强大,支持也十分广泛,尤其是对各种开源产品的支持十分不错。MyEclipse 目前支持JavaServlet, AJAX,JSP,JSF,Struts,Spring,Hibernate,
16、EJB3,JDBC 数据库链接工具等多项功能。可以说 MyEclipse 是几乎囊括了目前所有主流开源产品的专属eclipse 开发工具。2.1.2 MySQL 及MySQL 是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,目前属于Oracle 公司。MySQL 是最流行的关系型数据库管理系统,在 WEB 应用方面MySQL 是最好的 RDBMS(Relational Database Management System:关系数据库管理系统)应用软件之一。MySQL 是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并
17、提高了灵活性。MySQL 所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策(本词条“授权政策 ”) ,它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。由于其社区版的性能卓越,搭配 PHP 和Apache 可组成良好的开发环境。2.1.3 Navicat for MySQLNavicat for MySQL 是一款强大的 MySQL 数据库管理和开发工具,它为专业开发者提供了一套强大的足够尖端的工具,但对于新用户仍然易于学习。Navicat for MySQL 基
18、于 Windows 平台,为 MySQL 量身订作,提供类似于 MySQL 的用管理界面工具。此解决方案的出现,将解放 PHP、J2EE 等程序员以及数据库设计者、管理者的大脑,降低开发成本,为用户带来更高的开发效率。Navicat for MySQL 使用了极好的图形用户界面( GUI),可以用一种安全和更为容易的方式快速和容易地创建、组织、存取和共享信息。 用户可完全控制 MySQL 数据库和显示不同的管理资料,包括一个多功能的图形化管理用户和访问权限的管理工具,方便将数据从一个数据库转移到另一个数据库中(Local to Remote、Remote to Remote、Remote to
19、 Local),进行档案备份。 Navicat for MySQL 支援 Unicode,以及本地或远程 MySQL 服务器多连线,用户可浏览数据库、建立和删除数据库、编辑数据、建立或执行 SQL queries、管理用户权限(安全设定)、将数据库备份/复原、汇入/汇出数据(支援 CSV, TXT, DBF 和 XML 档案种类)等。软件与任何 MySQL 5.0.x 伺服器版本兼容,支援 Triggers,以及 BINARY VARBINARY/BIT 数据种类等的规范。8第三章 系统的需求分析3.1 系统功能分析由于计算机科学技术的快速发展,开发一个通讯录管理系统管理自己联系人信息非常必要
20、,可以提高我们办事的效率。经过多方面的思考与查询,系统的设计出通讯录系统的功能。系统分为四大模块:用户登录,联系人信息维护,查找联系人,用户信息维护。功能模块:Pig.3-1 Function module图 3-1 功能模块3.2.1 用户登录模块据用户名和初始密码进行登录,验证通过后进入主窗体,输入有误则提示错误消息,要求用户重新输入,直到成功登录。在用户登录前,其他人无法对联系人信息进行操作。3.1.1 联系人信息维护模块(1)修改联系人信息:可以修改联系人信息,如:由于联系人更换电话或则家庭住址等等,进行修改操作。通讯录系统联系人信息删除联系人信息排序联系人信息添加按编号查询按编号排序
21、按姓名排序联系人信息浏览联系人信息查询按姓名查询9(2)删除联系人信息:可以删除这个联系人的具体信息。如:这个联系人的联系方式已经改变而暂时找不到新的方式时,可以删除这个。(3)增加联系人信息:可以增加新的联系人的联系方式,包括姓名,电话,邮箱家庭住址等等。3.1.2 查找联系人可以按数据库任意字段名查找联系人,将查询结果显示在软件主界面的表格中,以便查看联系人详细信息。按姓名排序、按姓名查询、快速查询。3.1.3 用户信息维护将用户的操作请求发送至客户端,客户端收到用户操作请求,验证通过,对数据库中的数据进行操作,然后返回提示信息。若验证没有通过,则返回主窗体.3.2 系统用例分析 3.2.
22、2 参与者分析3.2.1.1 该系统的参与者为 Administrator,Printer,DB, 各自的主要任务为:(1)Administrator:该参与者为系统登录用户,主要工作是对通讯录中的联系人的更新与维护,包括通讯录中的联系人的信息维护等。(2)Printer:该参与者主要工作是把用户所需要的信息显示在界面上,如用户查询的列表信息显示。(3)DB:该参与者为数据库系统,主要工作是搜集信息,提供搜索功能,方便用户对联系人的信息查找,更新,删除,增加等。3.2.1.2 该系统的参与者在 UML 中的描述如图所示:Printer 显示数据库管理员系统管理员Pig.3-2 Schematic diagram of the participants图 3-2 参与者示意图