ImageVerifierCode 换一换
格式:DOCX , 页数:45 ,大小:441.80KB ,
资源ID:9538464      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/9538464.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(JAVA通讯录管理系统设计与实现毕业论文.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

JAVA通讯录管理系统设计与实现毕业论文.docx

1、JAVA通讯录管理系统设计与实现毕业论文 本科毕业论文(设计)题 目 通讯录管理系统 系 别 网络与继续教育部 专 业 计算机科学技术与应用 年 级 2011级 学 号 * 姓 名 李本城 指 导 教 师 丁华锋 成 绩 2014年 11 月 11 日 文献综述通讯录管理系统的设计与实现李本城西南大学荣昌校区信息管理系 重庆荣昌 402460摘要: 随着社会的发展,人际关系变得越来越重要,为了保持良好的人际关系,必须经常与亲戚、朋友、同学、同事保持联系,但是有时候存在着许多的限制条件,比如怎样找到交流对象的各种信息?可能你会想到现实生活中的手机等通讯工具,由于这些工具的单一性,不可能在第一时间

2、找到自己想要的信息资料,因此,为了能够快速查找到联系人的信息,节省查找时间,开发通讯录管理系统。 通讯录管理系统是一个基于C/S模式的个人通讯录管理系统。它是将自己的联系人的具体信息集中管理,成为一个方便人们使用的小软件。在开发过程中主要运用Java,JDK,MySQL,SWING等技术,由于开发工具和数据库之间的良好使用,可以为开发带来方便,使之成为一个可施行的系统。从而达到开发的目的-实现对通讯录信息的管理。“优秀的人际关系是一个人成功的重要因素”这已经成为不争的事实,这些日益繁多的人际交往使得我们很难搞清楚与每个人具体的联系方式,这严重影响了一个人的发展,所以通讯录管理系统的建立已是必要

3、的了,此次课程设计我利用了数据结构中的知识以及JAVA语言的知识设计的通讯录管理系统能够达到快速了解联系人信息,通讯录管理系统主要包括:1通讯录链表的建立2通讯者结点的插入3通讯者结点的查询4通讯者结点的删除5通讯录链表的输出0退出通讯录管理系统。你能够通过本系统了解联系人的姓名、手机、家庭地址,你也可以根据自己的需要改变系统的信息,也可以浏览全部通讯的联系人,并且可以根据数据表的各字段来查询你所要找的联系人等功能。相信通过使用该通讯录管理系统能够更加便利你的生活,为你的良好的人际关系添砖加瓦,帮助你走向成功。目前的信息通信能力已经走超出了我们的想象,越来越多的通信工具出现,但无论是何种工具,

4、其基本的一项功能就是记录通信者的信息,也便在需要时进行查寻。关 键 词:个人通讯录管理系统、添加、删除、查找、数据库第一章 引言1.1 通讯录的现状和背景俗话说:”海内存知己,天涯若比邻”,在现在竞争激烈,快节奏的生活中,人们之间的交流变得十分重要。随着计算机技术的飞速发展,计算机在企业管理和个人生活中的应用越来越普及,越来越重要。利用计算机实现公司往来通讯或个人的通讯管理显得越来越重要。对于用户来说,利用计算机高效率地完成通讯录的查询,是适应现代通讯录管理制度要求,而销售管理是一项琐碎、复杂而又十分细致的工作,一般不允许出错,如果实行手工操作,须手工填制大量的表格数据,这就会耗费工作人员大量

5、的时间和精力,计算机进行销售管理工作,不仅能够保证工作准确无误、快速完成,而且还可以利用计算机对有关商品的各种信息进行管理,服务于企业的各个部门,同时计算机具有手工管理所无法比拟的优点.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高企业销售管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。在现代社会中管理的作用越来越显得重要和突出。一般来讲,管理通过计划、组织、指导与领导、控制等手段,为组织制定目标,应用组织的各种要素,以实现组织的目标。本世纪以来,由于社会生产力的迅速发展和科学技术的突飞猛进,人们进行信息交流的深度和广度不断增加

6、,管理所需要的信息量急剧增长,同时对信息的处理要求及时、准确,这导致了传统的信息处理方法和手段已不能适应现代管理的需要;传统的企业管理活动中,把人、才、物作为企业的主要资源。但是随着社会化大生产的不断扩大和社会对产品多样化的需求,人们越来越重视信息在生产经营及企业管理中的作用,并把它当作企业的一种极其重要的资源,人们称之为“信息资源”,信息资源的处理已经成为当今世界上一项主要的社会活动。电子计算机的诞生“信息时代”的开始,它使企业管理现代化成为可能。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部

7、分,使用计算机对通讯录进行管理,有着手工管理所无法比拟的优点.例如:浏览迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高人事劳资管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。因此,开发这样一套软件成为很有必要的事情,在下面的正文中我们将以开发通讯录管理系统系统为例,谈谈其开发过程和所涉及到的问题及解决方法。第二章 开发技术及技术2.1开发技术2.1.1MVCMVC全名是Model View Controller,是模型(model)视图(view)控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的

8、方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。MVC开始是存在于桌面程序中的,M是指业务模型,V是指用户界面,C则是控制器,使用MVC的目的是将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式。比如一批统计数据可以分别用柱状图、饼图来表示。C存在的目的则是确保M和V的同步,一旦M改变,V应该同步更新。模型视图控制器(MVC)是Xerox PARC在二十世纪八十年代为编程语言Smalltalk80发明的一种软件设计模式,已被广泛使用

9、。后来被推荐为Oracle旗下Sun公司Java EE平台的设计模式,并且受到越来越多的使用ColdFusion和PHP的开发者的欢迎。模型视图控制器模式是一个有用的工具箱,它有很多好处,但也有一些缺点。2.1.2JDK JDK(Java Development Kit)是Sun Microsystems针对Java开发员的产品。自从Java推出以来,JDK已经成为使用最广泛的Java SDK(Software development kit)。JDK 是整个Java的核心,包括了Java运行环境,一堆Java工具和Java基础的类库(rt.jar)。不论什么Java应用服务器实质都是内置了某

10、个版本的JDK。因此掌握 JDK是学好Java的第一步。最主流的JDK是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问世了。

11、2.1.3SWING 图形用户界面(Graphical User Interface,GUI)。Swing是一个用于开发Java应用程序用户界面的开发工具包。它以抽象窗口工具包(AWT)为基础使跨平台应用程序可以使用任何可插拔的外观风格。Swing开发人员只用很少的代码就可以利用Swing丰富、灵活的功能和模块化组件来创建优雅的用户界面。 工具包中所有的包都是以swing作为名称,例如javax.swing,javax.swing.event2.1.4Java Java语言是一种面向对象的编程语言,是Sun Microsystems开发的编程平台。Java技术基于单一Java虚拟机(JVM)的

12、概念,JVM是编程语言与机器底层软件和硬件之间的翻译器。编程语言的所有实现都必须模拟JVM,从而使Java程序可以在具有JVM版本的任何系统上运行。 Java编程语言是与众不同的,因为Java程序需要经过编译(翻译为叫做Java字节码的中间语言)和解释(通过JVM分析和运行字节码)。编译只进行一次,而解释则在每次运行程序时都要进行。Java语言具有简单、面向对象、分布性、解释型、安全性、平台无关性、可移植性、高性能、支持语言级多线程等优点。广泛应用于个人PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。 Java自问世以来,以其得天独厚的优势,在I

13、T业界掀起了研究、开发它的浪潮,显示出了美好的发展前景。作为一种与底层硬件无关的、“编写一次,到处运行”的高级语言和计算平台,Java天生就具有将网络上的各个平台连成一体的能力,真正实现了“网络就是计算机”的理念。在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。2.2开发工具2.1.1MyElipse MyEclipse企业级工作平台(MyEclipseEnterprise Workbench ,简称MyEclipse)是对EclipseIDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的Java

14、EE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts,JSP,CSS,Javascript,Spring,SQL,Hibernat。MyEclipse 是一个十分优秀的用于开发Java, J2EE的 Eclipse 插件集合,MyEclipse的功能非常强大,支持也十分广泛,尤其是对各种开源产品的支持十分不错。MyEclipse目前支持JavaServlet,AJAX,JSP,JSF,Struts,Spring,Hibernate,EJB3,JDBC数据库链接工具等多项功能。可以说MyEclipse是几乎囊括了目前所有主流开源产品的专属eclipse开发工具

15、。2.1.2MySQL及MySQL是一个关系型数据库管理系统,由瑞典MySQLAB公司开发,目前属于Oracle公司。MySQL是最流行的关系型数据库管理系统,在WEB应用方面MySQL是最好的RDBMS(Relational Database Management System:关系数据库管理系统)应用软件之一。MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。MySQL所使用的SQL语言是用于访问数据库的最常用标准化语言。MySQL软件采用了双授权政策(本词条“授权政策”),它分为社区版和商业版,由于其体

16、积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL作为网站数据库。由于其社区版的性能卓越,搭配PHP和Apache可组成良好的开发环境。2.1.3Navicat for MySQL Navicat for MySQL是一款强大的 MySQL 数据库管理和开发工具,它为专业开发者提供了一套强大的足够尖端的工具,但对于新用户仍然易于学习。Navicat for MySQL 基于Windows平台,为 MySQL 量身订作,提供类似于 MySQL 的用管理界面工具。此解决方案的出现,将解放 PHP、J2EE 等程序员以及数据库设计者、管理者的大脑,降低开发成本

17、,为用户带来更高的开发效率。Navicat for MySQL 使用了极好的图形用户界面(GUI),可以用一种安全和更为容易的方式快速和容易地创建、组织、存取和共享信息。 用户可完全控制 MySQL 数据库和显示不同的管理资料,包括一个多功能的图形化管理用户和访问权限的管理工具,方便将数据从一个数据库转移到另一个数据库中(Local to Remote、Remote to Remote、Remote to Local),进行档案备份。 Navicat for MySQL 支援 Unicode,以及本地或远程 MySQL 服务器多连线,用户可浏览数据库、建立和删除数据库、编辑数据、建立或执行 S

18、QL queries、管理用户权限(安全设定)、将数据库备份/复原、汇入/汇出数据(支援 CSV, TXT, DBF 和 XML 档案种类)等。软件与任何 MySQL 5.0.x 伺服器版本兼容,支援 Triggers,以及 BINARY VARBINARY/BIT 数据种类等的规范。第三章 系统的需求分析3.1系统功能分析 由于计算机科学技术的快速发展,开发一个通讯录管理系统管理自己联系人信息非常必要,可以提高我们办事的效率。经过多方面的思考与查询,系统的设计出通讯录系统的功能。系统分为四大模块:用户登录,联系人信息维护,查找联系人,用户信息维护。功能模块:Pig.3-1 Function

19、module图3-1 功能模块3.2.1用户登录模块据用户名和初始密码进行登录,验证通过后进入主窗体,输入有误则提示错误消息,要求用户重新输入,直到成功登录。在用户登录前,其他人无法对联系人信息进行操作。3.1.1联系人信息维护模块 (1)修改联系人信息:可以修改联系人信息,如:由于联系人更换电话或则家庭住址等等,进行修改操作。 (2)删除联系人信息:可以删除这个联系人的具体信息。如:这个联系人的联系方式已经改变而暂时找不到新的方式时,可以删除这个。 (3)增加联系人信息:可以增加新的联系人的联系方式,包括姓名,电话,邮箱家庭住址等等。3.1.2查找联系人可以按数据库任意字段名查找联系人,将查

20、询结果显示在软件主界面的表格中,以便查看联系人详细信息。按姓名排序、按姓名查询、快速查询。3.1.3用户信息维护将用户的操作请求发送至客户端,客户端收到用户操作请求,验证通过,对数据库中的数据进行操作,然后返回提示信息。若验证没有通过,则返回主窗体.3.2系统用例分析 3.2.2参与者分析3.2.1.1该系统的参与者为Administrator,Printer,DB,各自的主要任务为: (1)Administrator:该参与者为系统登录用户,主要工作是对通讯录中的联系人的更新与维护,包括通讯录中的联系人的信息维护等。 (2)Printer:该参与者主要工作是把用户所需要的信息显示在界面上,如

21、用户查询的列表信息显示。 (3)DB:该参与者为数据库系统,主要工作是搜集信息,提供搜索功能,方便用户对联系人的信息查找,更新,删除,增加等。3.2.1.2该系统的参与者在UML中的描述如图所示: Pig.3-2 Schematic diagram of the participants图3-2 参与者示意图通讯录管理系统程序流程图:Pig.3-3 The program flow chart图3-3 程序流程图3.2.3系统主用例识别3.2.2.1通过认真分析与思考,我认为自己的系统按照设计图大致将该系统的参与者,主用例和主用例的功能描述如下: (1)联系人信息维护: 该主用例主要是对联系人

22、的详细信息进行维护,通过对信息的维护可以确保自己人际交往的良好,保证日常生活的次序。 (2)查找联系人:3.2.2.2该用例主要方便用户在第一时间可以很快提取到想要的联系人的各种信息,方便,快捷。系统的主用例图如图所示: Pig.3-4 The main intention with instantiation图3-4主用例示意图3.2.4系统子用例识别联系人信息维护主用例主要包含以下子用例,各子用例描述如下:(1)增加联系人功能:该功能主要是针对用户在人际交往中认识新的朋友和伙伴,为了更好的相处及增进友谊,对方留下自己的各种联系方式,包括电话,手机,邮箱,家庭住址等等。(2)更新联系人功能:

23、该功能主要是针对用户在于朋友,亲戚的友好相处中,由于对方更换联系方式,并且及时告诉用户信息,用户可以根据对方告知的信息进行更新,方便日后联系。(3)删除联系人功能:该功能主要是对联系人信息的删除。该主用例与子用例之间的关系描述如图所示:Pig.3-5 The main case and son with exemplary intention图3-5主用例与子用例示意图3.3数据库分析通讯录管理系统是方便大众日常生活的工具,为了迎合大众需求,具体有浏览信息、查询信息、添加和删除信息,及排序等功能。这就要求数据库结构能充分满足各种信息的输入与输出,实现有组织地,动态储存大量关联数据,方便用户访问

24、系统中的数据。3.3.1概念结构设计根据需求分析抽象出信息结构,可得该系统的E-R图。(1). 用户E-R图Pig.3-6 The user E-R diagram 图3-6用户E-R图根据分E-R图和需求分析,可得到总E-R图Pig.3-7 The overall E-R diagram图3-7总体E-R图3.3.2逻辑结构设计 基本信息表Friend用来保存姓名、电话、家庭住址、邮箱信息。表Friend的结构如表3-1所示。Table 3-1 Structure for table Friend 表3-1 表Friend的结构编号字段名称数据结构说明1NameChar联系人姓名2TeleC

25、har联系人电话3AdderChar联系人家庭住址4MailChar联系人邮箱5SexChar性别6Ageint年龄3.3.3数据库表的建立在设计数据库表结构之前,首先要创建一个数据库。本系统使用的数据库为Friend。创建表Friend(基本信息表),它的代码如下:CREATE TABLE Friend (Name char (20) PRIMARY KEY , Tele char(20), Addr char(30), Mail char(20) ) GO第四章 系统实现4.1数据库的实现 数据库连接package connect_sql;import java.sql.Connectio

26、n;import java.sql.DriverManager;import java.sql.SQLException;public class Connects private String dbDriver = com.mysql.jdbc.Driver; private String url = jdbc:mysql:/localhost/new_db; private Connection con = null; public Connects() try Class.forName(dbDriver).newInstance(); /数据库驱动 try con = DriverMa

27、nager.getConnection(url, root, 123); System.out.println(提示:数据库加载成功!); /加载数据库 catch (SQLException e) e.printStackTrace(); catch (InstantiationException e) e.printStackTrace(); catch (IllegalAccessException e) e.printStackTrace(); catch (ClassNotFoundException e) e.printStackTrace(); public Connection

28、 getConnection() return con; 4.2系统功能实现4.2.1系统登录界面:4.2.1.1登录功能:private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) int i = 0; flag0 = 1; UserDao user = new UserDao(); if (user.queryUser(jTextField1.getText().trim(), jPasswordField1 getText().trim() MainFrom fr = new MainFrom(); fr.se

29、tVisible(true); this.dispose(); else i+; if (i = 3) JOptionPane.showMessageDialog(this, 用户名或密码请重新登录!); jTextField1.setText(); jPasswordField1.setText(); else this.dispose(); 4.2.1.2重置功能(代码):private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) jTextField1.setText(); jPasswordField1.se

30、tText(); 4.2.2系统主界面:4.2.2.1浏览联系人信息:private void jButton6ActionPerformed(java.awt.event.ActionEvent evt) View ft = new View(); ft.setVisible(true); 4.2.2.2查询联系人信息:private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) Search fr = new Search(); fr.setVisible(true); 4.2.2.3添加联系人信息:private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) Add ft = new Add(); ft.setVisible(true); 4.2.2.4删除联系人信息:private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) Delete ft = new Delete(); ft.setVisible(true); 4

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1