JAVA电话薄管理系统设计与实现本科毕业论文_第1页
JAVA电话薄管理系统设计与实现本科毕业论文_第2页
JAVA电话薄管理系统设计与实现本科毕业论文_第3页
JAVA电话薄管理系统设计与实现本科毕业论文_第4页
JAVA电话薄管理系统设计与实现本科毕业论文_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、本科毕业论文(设计)题 目通讯录管理系统 1 / 45目录目录文献综述文献综述 2 2第一章引言第一章引言 3 3通讯录的现状和背景 3第二章开发技术与技术第二章开发技术与技术 5 52.1 开发技术 52.2 开发工具 6第三章系统的需求分析第三章系统的需求分析 8 83.1 系统功能分析 83.2 系统用例分析 93.3 数据库分析 12第四章系统实现第四章系统实现 15154.1 数据库的实现 154.2 系统功能实现 164.3 功能模块的实现 18第五章系统测试第五章系统测试 25255.1 登陆用例的程序设计 255.2 登录成功:登录用户登录成功后转向主窗体 285.3 登录用户

2、对联系人信息的管理操作 30第六章总结第六章总结 4242致致 4343参考文献参考文献 4444 2 / 45文献综述通讯录管理系统的设计与实现本城西南大学荣昌校区信息管理系 荣昌 402460摘要:摘要:随着社会的发展,人际关系变得越来越重要,为了保持良好的人际关系,必须经常与亲戚、朋友、同学、同事保持联系,但是有时候存在着许多的限制条件,比如怎样找到交流对象的各种信息?可能你会想到现实生活中的手机等通讯工具,由于这些工具的单一性,不可能在第一时间找到自己想要的信息资料,因此,为了能够快速查找到联系人的信息,节省查找时间,开发通讯录管理系统。通讯录管理系统是一个基于 C/S 模式的个人通讯

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

4、:1通讯录链表的建立 2通讯者结点的插入 3通讯者结点的查询 4通讯者结点的删除 5通讯录链表的输出 0退出通讯录管理系统。你能够通过本系统了解联系人的、手机、家庭地址,你也可以根据自己的需要改变系统的信息,也可以浏览全部通讯的联系人,并且可以根据数据表的各字段来查询你所要找的联系人等功能。相信通过使用该通讯录管理系统能够更加便利你的生活,为你的良好的人际关系添砖加瓦,帮助你走向成功。目前的信息通信能力已经走超出了我们的想象,越来越多的通信工具出现,但无论是何种工具,其基本的一项功能就是记录通信者的信息,也便在需要时进行查寻。 关 键 词:个人通讯录管理系统、添加、删除、查找、数据库 3 /

5、45第一章第一章 引言引言1.11.1 通讯录的现状和背景通讯录的现状和背景俗话说:”海存知己,天涯若比邻”,在现在竞争激烈,快节奏的生活中,人们之间的交流变得十分重要。随着计算机技术的飞速发展,计算机在企业管理和个人生活中的应用越来越普与,越来越重要。利用计算机实现公司往来通讯或个人的通讯管理显得越来越重要。对于用户来说,利用计算机高效率地完成通讯录的查询,是适应现代通讯录管理制度要求,而销售管理是一项琐碎、复杂而又十分细致的工作,一般不允许出错,如果实行手工操作,须手工填制大量的表格数据,这就会耗费工作人员大量的时间和精力,计算机进行销售管理工作,不仅能够保证工作准确无误、快速完成,而且还

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

7、法和手段已不能适应现代管理的需要;传统的企业管理活动中,把人、才、物作为企业的主要资源。但是随着社会化大生产的不断扩大和社会对产品多样化的需求,人们越来越重视信息在生产经营与企业管理中的作用,并把它当作企业的一种极其重要的资源,人们称之为“信息资源” ,信息资源的处理已经成为当今世界上一项主要的社会活动。电子计算机的诞生 “信息时代”的开始,它使企业管理现代化成为可能。 随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。 作为计算机应用的一部分,使用计算机对通讯录进行管理,有着手工管理所无法比拟的优点.例如: 浏览迅速

8、、查找方便、可靠性高、存储量大、性好、寿命长、成 4 / 45本低等。这些优点能够极提高人事劳资管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。 因此,开发这样一套软件成为很有必要的事情,在下面的正文中我们将以开发通讯录管理系统系统为例,谈谈其开发过程和所涉与到的问题与解决方法。 5 / 45第二章第二章 开发技术与技术开发技术与技术2.12.1 开发技术开发技术.1MVCMVCMVC 全名是 Model View Controller,是模型(model)视图(view)控制器(controller)的缩写,一种软件设计典,用一种业务逻辑、数据、界面显示分离的

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

10、k80 发明的一种软件设计模式,已被广泛使用。后来被推荐为 Oracle 旗下 Sun 公司 Java EE 平台的设计模式,并且受到越来越多的使用 ColdFusion 和 PHP的开发者的欢迎。模型视图控制器模式是一个有用的工具箱,它有很多好处,但也有一些缺点。.2JDKJDK JDK(Java Development Kit)是 Sun Microsystems 针对 Java 开发员的产品。自从Java 推出以来,JDK 已经成为使用最广泛的 Java SDK(Software development kit) 。JDK 是整个 Java 的核心,包括了 Java 运行

11、环境,一堆 Java 工具和 Java 基础的类库(rt.jar)。不论什么 Java 应用服务器实质都是置了某个版本的 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 的

12、 JDK5.0 开始,提供了泛型等非常实用的功能,其版本信息也不再延续以前的 1.2,1.3,1.4,而是变成了 5.0,6.0 了。从 7.0开始,其运行效率得到了非常大的提高,现在已有 8.0 问世了。 6 / 4.3SWINGSWING图形用户界面(Graphical User Interface,GUI) 。Swing 是一个用于开发 Java 应用程序用户界面的开发工具包。它以抽象窗口工具包(AWT)为基础使跨平台应用程序可以使用任何可插拔的外观风格。Swing 开发人员只用很少的代码就可以利用Swing 丰富、灵活的功能和模块化组件来创建优雅的用户界面。 工具包中

13、所有的包都是以 swing 作为名称,例如 javax.swing,javax.swing.event.4JavaJavaJava 语言是一种面向对象的编程语言,是 Sun Microsystems 开发的编程平台。Java 技术基于单一 Java 虚拟机(JVM)的概念,JVM 是编程语言与机器底层软件和硬件之间的翻译器。编程语言的所有实现都必须模拟 JVM,从而使 Java 程序可以在具有 JVM 版本的任何系统上运行。Java 编程语言是与众不同的,因为 Java 程序需要经过编译(翻译为叫做 Java字节码的中间语言)和解释(通过 JVM 分析和运行字节码) 。编译只进

14、行一次,而解释则在每次运行程序时都要进行。Java 语言具有简单、面向对象、分布性、解释型、安全性、平台无关性、可移植性、高性能、支持语言级多线程等优点。广泛应用于个人 PC、数据中心、游戏控制台、科学超级计算机、移动和互联网,同时拥有全球最大的开发者专业社群。Java 自问世以来,以其得天独厚的优势,在 IT 业界掀起了研究、开发它的浪潮,显示出了美好的发展前景。作为一种与底层硬件无关的、 “编写一次,到处运行”的高级语言和计算平台,Java 天生就具有将网络上的各个平台连成一体的能力,真正实现了“网络就是计算机”的理念。在全球云计算和移动互联网的产业环境下,Java 更具备了显著优势和广阔

15、前景。2.22.2 开发工具开发工具.1MyElipseMyElipseMyEclipse 企业级工作平台(MyEclipseEnterprise Workbench ,简称MyEclipse)是对 EclipseIDE 的扩展,利用它我们可以在数据库和 JavaEE 的开发、发布以与应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的 JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts,JSP,CSS,Javascript,Spring,SQL,Hibernat 。 7 / 45MyEclipse 是一个十分优秀的用于开发

16、Java, J2EE 的 Eclipse 插件集合,MyEclipse 的功能非常强大,支持也十分广泛,尤其是对各种开源产品的支持十分不错。MyEclipse 目前支持JavaServlet,AJAX,JSP,JSF,Struts,Spring,Hibernate,E3,JDBC 数据库工具等多项功能。可以说 MyEclipse 是几乎囊括了目前所有主流开源产品的专属eclipse 开发工具。.2MySQLMySQL 与与MySQL 是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,目前属于Oracle 公司。MySQL 是最流行的关系型数据库管理系统,在 WEB

17、 应用方面 MySQL 是最好的 RDBMS(Relational Database Management System:关系数据库管理系统)应用软件之一。MySQL 是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库,这样就增加了速度并提高了灵活性。MySQL 所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策(本词条“授权政策” ) ,它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型的开发都选择 MySQL作为数据库。由于其社区版的性能卓越,搭配 PHP 和 Apa

18、che 可组成良好的开发环境。.3NavicatNavicat forfor MySQLMySQLNavicat for MySQL 是一款强大的 MySQL 数据库管理和开发工具,它为专业开发者提供了一套强大的足够尖端的工具,但对于新用户仍然易于学习。Navicat for MySQL 基于 Windows 平台,为 MySQL 量身订作,提供类似于 MySQL 的用管理界面工具。此解决方案的出现,将解放 PHP、J2EE 等程序员以与数据库设计者、管理者的大脑,降低开发成本,为用户带来更高的开发效率。Navicat for MySQL 使用了极好的图形用户界面(GUI),可

19、以用一种安全和更为容易的方式快速和容易地创建、组织、存取和共享信息。 用户可完全控制 MySQL 数据库和显示不同的管理资料,包括一个多功能的图形化管理用户和访问权限的管理工具,方便将数据从一个数据库转移到另一个数据库中(Local to Remote、Remote to Remote、Remote to Local),进行档案备份。 Navicat for MySQL 支援 Unicode,以与本地或远程 MySQL 服务器多连线,用户可浏览数据库、建立和删除数据库、编辑数据、建立或执行 SQL queries、管理用户权限(安全设定)、将数据库备份/复原、汇入/汇出数据(支援 CSV, T

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

21、ule图图 3-13-1 功能模块功能模块.1用户登录模块用户登录模块据用户名和初始密码进行登录,验证通过后进入主窗体,输入有误则提示错误消息,要求用户重新输入,直到成功登录。在用户登录前,其他人无法对联系人信息进行操作。.1联系人信息维护模块联系人信息维护模块(1)修改联系人信息:可以修改联系人信息,如:由于联系人更换或则家庭住址等等,进行修改操作。通讯录系统联系人信息删除联系人信息排序联系人信息添加按编号查询按编号排序按 XX 排序联系人信息浏览联系人信息查询按 XX 查询 9 / 45(2)删除联系人信息:可以删除这个联系人的具体信息。如:这个联系人的联系

22、方式已经改变而暂时找不到新的方式时,可以删除这个。(3)增加联系人信息:可以增加新的联系人的联系方式,包括, ,家庭住址等等。.2查找联系人查找联系人可以按数据库任意字段名查找联系人,将查询结果显示在软件主界面的表格中,以便查看联系人详细信息。按排序、按查询、快速查询。.3用户信息维护用户信息维护将用户的操作请求发送至客户端,客户端收到用户操作请求,验证通过,对数据库中的数据进行操作,然后返回提示信息。若验证没有通过,则返回主窗体.3.23.2系统用例分析系统用例分析.2参与者分析参与者分析 该系统的参与者为 Administrat

23、or,Printer,DB,各自的主要任务为:(1)Administrator:该参与者为系统登录用户,主要工作是对通讯录中的联系人的更新与维护,包括通讯录中的联系人的信息维护等。(2)Printer:该参与者主要工作是把用户所需要的信息显示在界面上,如用户查询的列表信息显示。(3)DB:该参与者为数据库系统,主要工作是搜集信息,提供搜索功能,方便用户对联系人的信息查找,更新,删除,增加等。 该系统的参与者在 UML 中的描述如图所示:Printer 显示数据库管理员系统管理员Pig.3-2Pig.3-2 SchematicSchematic diagramdiagram ofo

24、f thethe participantsparticipants图图 3-23-2 参与者示意图参与者示意图 10 / 45通讯录管理系统程序流程图:通讯录管理系统程序流程图:Pig.3-3ThePig.3-3The programprogram flowflow chartchart图图 3-33-3 程序流程图程序流程图.3系统主用例识别系统主用例识别通过认真分析与思考,我认为自己的系统按照设计图大致将该系统的参与者,主用例和主用例的功能描述如下:(1)联系人信息维护: 该主用例主要是对联系人的详细信息进行维护,通过对信息的维护可以确保自己人际交往的良好,保

25、证日常生活的次序。(2)查找联系人: 该用例主要方便用户在第一时间可以很快提取到想要的联系人的各种信息,方便,快捷。系统的主用例图如图所示: 按编号查询按XX查询通讯录管理系统浏览信息查询信息添加信息排序信息删除信息按编号查询按XX查询 11 / 45Printer 显示系统管理员联系人信息查询联系人信息维护Pig.3-4Pig.3-4 TheThe mainmain intentionintention withwith instantiationinstantiation图图 3-43-4 主用例示意图主用例示意图.4系统子用例识别系统子用例识别联系人信息维护

26、主用例主要包含以下子用例,各子用例描述如下:(1)增加联系人功能:该功能主要是针对用户在人际交往中认识新的朋友和伙伴,为了更好的相处与增进友谊,对方留下自己的各种联系方式,包括,手机, ,家庭住址等等。(2)更新联系人功能:该功能主要是针对用户在于朋友,亲戚的友好相处中,由于对方更换联系方式,并且与时告诉用户信息,用户可以根据对方告知的信息进行更新,方便日后联系。(3)删除联系人功能:该功能主要是对联系人信息的删除。该主用例与子用例之间的关系描述如图所示: 12 / 45系统管理员联系人信息维护添加联系人信息更新联系人信息删除联系人信息Pig.3-5Pig.3-5 TheThe mainmai

27、n casecase andand sonson withwith exemplaryexemplary intentionintention图图 3-53-5 主用例与子用例示意图主用例与子用例示意图3.33.3数据库分析数据库分析通讯录管理系统是方便大众日常生活的工具,为了迎合大众需求,具体有浏览信息、查询信息、添加和删除信息,与排序等功能。这就要求数据库结构能充分满足各种信息的输入与输出,实现有组织地,动态储存大量关联数据,方便用户访问系统中的数据。.1概念结构设计概念结构设计根据需求分析抽象出信息结构,可得该系统的 E-R 图。(1). 用户 E-R 图Pig.3-6T

28、hePig.3-6The useruser E-RE-R diagramdiagram图图 3-63-6 用户用户 E-RE-R 图图登陆用户用户名密码 13 / 45根据分 E-R 图和需求分析,可得到总 E-R 图联系人年龄 性别XX邮政编码家庭住址邮箱Pig.3-7Pig.3-7 TheThe overalloverall E-RE-R diagramdiagram图图 3-73-7 总体总体 E-RE-R 图图.2逻辑结构设计逻辑结构设计基本信息表 Friend 用来保存、 、家庭住址、信息。表 Friend 的结构如表 3-1 所示。TableTable 3-1Str

29、ucture3-1Structure forfor tabletable FriendFriend表表 3-13-1 表表 FriendFriend 的结构的结构编号字段名称数据结构说明1NameChar联系人2TeleChar联系人3AdderChar联系人家庭住址4MailChar联系人5SexChar性别6Ageint年龄 14 / 4.3数据库表的建立数据库表的建立在设计数据库表结构之前,首先要创建一个数据库。本系统使用的数据库为Friend。创建表 Friend(基本信息表) ,它的代码如下:CREATE TABLE Friend (Name char (20) P

30、RIMARY KEY , Tele char(20), Addr char(30), Mail char(20) ) GO 15 / 45第四章第四章 系统实现系统实现4.14.1 数据库的实现数据库的实现数据库连接数据库连接package connect_sql;import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;public class Connects private String dbDriver = .mysql.jdbc.Driver;private String

31、 url = jdbc:mysql:/localhost/new_db;private Connection con = null;public Connects()try Class.forName(dbDriver).newInstance(); /数据库驱动try con = DriverManager.getConnection(url, root, 123);System.out.println(提示:数据库加载成功!); /加载数据库 catch (SQLException e) e.printStackTrace(); catch (InstantiationException

32、e) e.printStackTrace(); catch (IllegalAccessException e) 16 / 45e.printStackTrace(); catch (ClassNotFoundException e) e.printStackTrace();public Connection getConnection()return con;4.24.2 系统功能实现系统功能实现.1系统登录界面:系统登录界面:登录功能:登录功能:privatevoidprivatevoid utton1ActionPerformed(java.a

33、wt.event.ActionEvent evt) intint i = 0;flag0 = 1;UserDao user = newnew UserDao();ifif (user.queryUser(jTextField1.getText().trim(), jPasswordField1getText().trim() MainFrom fr = newnew MainFrom();fr.setVisible(truetrue);thisthis.dispose(); elseelse i+;ifif (i = 3)JOptionPane.showMessageDialog(thisth

34、is, 用户名或密码请重新登录!);jTextField1.setText();jPasswordField1.setText();elseelse 17 / 45thisthis.dispose();重置功能(代码):重置功能(代码):privatevoidprivatevoid utton2ActionPerformed(java.awt.event.ActionEvent evt) jTextField1.setText();jPasswordField1.setText();.2系统主界面:系统主界面:浏览联系人信

35、息:浏览联系人信息:privatevoidprivatevoid utton6ActionPerformed(java.awt.event.ActionEvent evt) View ft = newnew View();ft.setVisible(truetrue);查询联系人信息:查询联系人信息:privatevoidprivatevoid utton1ActionPerformed(java.awt.event.ActionEvent evt) Search fr = newnew Search();fr.setVisible(truetrue);4.2.2.

36、添加联系人信息:添加联系人信息:privatevoidprivatevoid utton2ActionPerformed(java.awt.event.ActionEvent evt) Add ft = newnew Add();ft.setVisible(truetrue);删除联系人信息:删除联系人信息:privatevoidprivatevoid utton3ActionPerformed(java.awt.event.ActionEvent evt) Delete ft = newnewDelete();ft.setVisible(truet

37、rue); 18 / 4排序联系人信息:排序联系人信息:privatevoidprivatevoid utton4ActionPerformed(java.awt.event.ActionEvent evt) Sort ft = newnewSort();ft.setVisible(truetrue);4.34.3 功能模块的实现功能模块的实现.1 浏览联系人信息功能:浏览联系人信息功能:privatevoidprivatevoid utton1ActionPerformed(java.awt.event.ActionEvent evt) Obje

38、ct title = 编号, , 性别, , 年龄, 邮政编码, 家庭住址, ;String str = (String) jComboBox1_view.getSelectedItem();String sql = SELECT * FROM STUINFO;ResultSet rs1 = choose.dataSelect(sql);intint i = 0;trytry whilewhile (rs1.next() i+; catchcatch (SQLException e) e.printStackTrace();Object data = newnew Objecti + 18;i

39、fif (str.equals(全部信息) sql = SELECT * FROM STUINFO; elseelsesql = SELECT * FROM STUINFO WHERE = + str + ;ResultSet rs = choose.dataSelect(sql);intint j = 0;trytry 19 / 45whilewhile (rs.next() dataj0 = rs.getString(1);dataj1 = rs.getString(2);dataj2 = rs.getString(3);dataj3 = rs.getString(4);dataj4 =

40、rs.getString(5);dataj5 = rs.getString(6);dataj6 = rs.getString(7);dataj7 = rs.getString(8);j+; catchcatch (SQLException e) e.printStackTrace();JTable table = newnew JTable(data, title);jScrollPane1.setViewportView(table);jScrollPane1.revalidate();.2 查询联系人查询联系人信息功能:privatevoidprivatevoid utto

41、n_Search1ActionPerformed(java.awt.event.ActionEvent evt) Object title = 编号, , 性别, , 邮政编码, 家庭住址, ;String str1 = (String) jComboBox_Search1.getSelectedItem();String str2 = jTextField_Search1.getText();String sql = nullnull;ifif (str1.equals(编号) sql = SELECT * FROM STUINFO WHERE 编号= + str2 + ; elseifel

42、seif (str1.equals() 20 / 45sql = SELECT * FROM STUINFO WHERE = + str2 + ; elseifelseif (str1.equals( ) sql = SELECT * FROM STUINFO WHERE = + str2 + ;ResultSet rs = choose.dataSelect(sql);Object datas = newnew Object508;trytry intint j = 0;whilewhile (rs.next() datasj0 = rs.getString(1);datasj1 = rs.

43、getString(2);datasj2 = rs.getString(3);datasj3 = rs.getString(4);datasj4 = rs.getString(5);datasj5 = rs.getString(8);datasj6 = rs.getString(6);datasj7 = rs.getString(7);j+; catchcatch (SQLException e1) e1.printStackTrace();JTable table = newnew JTable(datas, title);jScrollPane1.setViewportView(table

44、);jScrollPane1.revalidate(); 21 / 4.3 添加联系人信息功能:添加联系人信息功能:添加:添加:privatevoidprivatevoid utton1ActionPerformed(java.awt.event.ActionEvent evt) String option = 添加, 修改 ;intint n = JOptionPane.showOptionDialog(thisthis, 请仔细检查信息,确定添加?, 添加信息,JOptionPane.YES_NO_OPTION, JOptionPane.WAR

45、NING_MESSAGE, nullnull,option, option1);ifif (n = 0) /获取添加的容String acctnum = jTextField1.getText();String name = jTextField2.getText();String sex = jTextField3.getText();String mobile = jTextField4.getText();String academy = jTextField5.getText();String major = jTextField6.getText();String adress =

46、jTextField7.getText();String classes = jTextField8.getText();/插入容String sql = INSERT INTO STUINFO VALUES( + acctnum + , + name + , + sex + , + mobile + , + academy+ , + major + , + adress + , + classes+ );choose.dataInsert(sql);JOptionPane.showMessageDialog(thisthis, 添加成功!, 提示,JOptionPane.INFORMATIO

47、N_MESSAGE);utton2ActionPerformed(evt); 22 / 4重置:重置:privatevoidprivatevoid utton2ActionPerformed(java.awt.event.ActionEvent evt) jTextField1.setText();jTextField2.setText();jTextField3.setText();jTextField4.setText();jTextField5.setText();jTextField6.setText();jTextField7.setText();jTe

48、xtField8.setText();.4 删除联系人信息功能:删除联系人信息功能:privatevoidprivatevoid utton1ActionPerformed(java.awt.event.ActionEvent evt) String str = (String) jComboBox1_view.getSelectedItem();String str2 = jTextField1.getText();String sql = nullnull;ifif (str.equals(编号) sql = SELECT * FROM stuinfo where 编号=

49、+ str2 + ; elseelsesql = SELECT * FROM stuinfo where = + str2 + ;ResultSet rs = choose.dataSelect(sql);trytry whilewhile (rs.next() jTextField2_acctnum.setText(rs.getString(1);jTextField9_name.setText(rs.getString(2);jTextField3_sex.setText(rs.getString(3);jTextField4_mobile.setText(rs.getString(4);

50、 23 / 45jTextField5_academy.setText(rs.getString(5);jTextField6_major.setText(rs.getString(6);jTextField7_address.setText(rs.getString(7);jTextField8_class.setText(rs.getString(8); catchcatch (SQLException e) e.printStackTrace();String option = 删除, 修改 ;intint n = JOptionPane.showOptionDialog(thisthi

51、s, 请仔细核对信息,确认删除?, 删除信息,JOptionPane.YES_NO_OPTION, JOptionPane.WARNING_MESSAGE, nullnull,option, option1);ifif (n = 0) ifif (str.equals(编号) sql = DELETE FROM stuinfo WHERE 编号= + str2 + ; elseelsesql = DELETE FROM stuinfo WHERE = + str2 + ;choose.dataDelete(sql);JOptionPane.showMessageDialog(thisthis,

52、 删除成功!, 提示,JOptionPane.INFORMATION_MESSAGE);jTextField2_acctnum.setText();jTextField9_name.setText();jTextField3_sex.setText();jTextField4_mobile.setText();jTextField5_academy.setText();jTextField6_major.setText();jTextField7_address.setText(); 24 / 45jTextField8_class.setText();.5 排序排序联系人信息

53、功能联系人信息功能privatevoidprivatevoid utton1ActionPerformed(java.awt.event.ActionEvent evt) String str = (String) jComboBox1.getSelectedItem();Object title = , 编号, ;String sql = nullnull;ifif (str.equals(编号) sql = SELECT * FROM stuinfo ORDER BY 编号 ASC; elseifelseif (str.equals() sql = SELECT * FROM stuinf

54、o ORDER BY ASC; elseelsesql = SELECT * FROM stuinfo ORDER BY ASC;ResultSet rs = choose.dataSelect(sql);Object datas = newnew Object518;trytry intint j = 0;whilewhile (rs.next() datasj0 = rs.getString(1);datasj1 = rs.getString(2);datasj2 = rs.getString(3);datasj3 = rs.getString(4);datasj4 = rs.getStr

55、ing(5);datasj5 = rs.getString(6);datasj6 = rs.getString(7);datasj7 = rs.getString(8);j+; 25 / 45 catchcatch (SQLException e1) e1.printStackTrace();JTable table = newnew JTable(datas, title);jScrollPane1.setViewportView(table);jScrollPane1.revalidate();第五章第五章 系统测试系统测试5.1 登陆用例的程序设计登陆用例的程序设计 登陆界面如图所示:P

56、ig.5-1Pig.5-1 LoginLogin interfaceinterface diagramdiagram图图 5-15-1 登录界面图登录界面图在窗体上分别设置它们属性:窗体的标题为“login” ,两个文本框分别对应“username”和“password” ,其它部分是由 Swing 的图形完成设置的。界面设置代码为:private static final long serialVersionUID = -63L;ClientContext clientContext;Label labname=new Label(username:);Label labload=new L

57、abel(password:);/TextField texfload=new TextField(10);JTextField texfname=new JTextField(10); 26 / 45utton butlogin=new utton(login);utton butcancel=new utton(canel);JPasswordField jpass=new JPasswordField(10);public LoginFrame()super(login);Container c=getContentPane();BorderLayout d=new BorderLayo

58、ut();c.setLayout(d);jpass.setEchoChar(*);getRootPane().setDefaultButton(butlogin);/默认按钮可以相应回车请求butlogin.addActionListener(this);butcancel.addActionListener(this);Panel p1=new Panel();Panel p2=new Panel();Panel p3=new Panel();p1.add(labname);p1.add(texfname);p2.add(labload);p2.add(jpass);p3.add(butlo

59、gin);p3.add(butcancel);c.add(p1,BorderLayout.NORTH);c.add(p2,BorderLayout.CENTER);c.add(p3,BorderLayout.SOUTH);this.setSize(280,150);this.setLocation(450,300); 27 / 45当点击登陆所触发事件代码为:public void actionPerformed(ActionEvent e) if(e.getSource()=butlogin)clientContext.load(texfname, jpass);else if(e.getS

60、ource()=butcancel)clientContext.cancel();public void setClientContext(ClientContext clientContext) this.clientContext = clientContext;/* * 登录控制函数 * param texfname * param pass */public void load(JTextField texfname,JPasswordField pass) if(成功.equals(service.load(texfname, pass)loadFrame.setVisible(fa

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论