网吧计费管理系统设计_第1页
网吧计费管理系统设计_第2页
网吧计费管理系统设计_第3页
网吧计费管理系统设计_第4页
网吧计费管理系统设计_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

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

文档简介

1、网吧计费管理系统设计 本科毕业设计(论文)目 录 中文摘要1 英文摘要2 1 绪 论3 1.1选题的背景和意义3 1.2 研究目的3 1.3 研究内容3 1.3.1 服务器端4 1.3.2 客户端4 1.4 系统开发技术与工具简介4 1.4.1 c/s结构简介5 1.4.2 java语言6 1.4.3 sql server 2000数据库7 1.4.5 开发工具jbuilder98 2 系统分析10 2.1 可行性分析10 2.1.1 经济可行性10 2.1.2 时间可行性10 2.1.3 技术可行性11 2.1.4 社会可行性11 2.2 系统需求分析11 2.2.1 系统非功能性需求12

2、2.2.2 功能性需求13 2.3系统模块分析14 3 数据库设计19 3.1 数据库的需求分析19 3.2 数据库e-r图和数据库表19 3.3 数据库连接20 4 系统的设计和实现23 5 系统调试与安装29 5.1 网吧计费系统登录测试29 5.2 用户进入测试结果截图29 6 总结32 6.1 系统的不足与前景32 致 谢33 参考文献34 网吧计费管理系统摘要 本课题研究的网吧计费系统是一款基于c/s结构,采用sql server2000 数据库,利用java设计开发的网吧计费系统。文中主要介绍了系统的基本功能和系统结构组成情况,内容包括系统需求分析、系统设计原则、系统设计思想、系统

3、功能模块描述、数据库设计、系统通信过程、通信协议等,同时还对开发环境jbuilder9 ,sqlserve2000数据库、java技术的使用进行简单介绍,并列出了一些程序代码以说明该系统应用程序设计的实现过程。本系统要求由服务器端、客户端2个模块组成,它们分别实现不同的功能,服务器端的功能有卡号管理、信息管理、帮助、退出系统等4个主要功能。各个功能有分别实现不同的子功能。客户端的功能与其雷同。 关键字 c/s 结构/sql server 2000 /java fee-charging and management systemon net bar abstract the research o

4、f the internet is a billing system based on c / s structure, using sql server2000 database, using java design and development of the internet billing system. the article introduces the basic functions of the system structure and composition of the system, including system requirements analysis, syst

5、em design principles, system design, system function module description, database design, system communication, communication protocols, etc., but also on the development environment jbuilder9, sql serve2000 database, java technology, the use of a brief introduction and a list of some code to illust

6、rate the application of the system design process to achieve. this paper introduces an internet cafe charging system based on java. by analyzing the java technology of socket, thread, vector, jdbc and the function and characteristic of the system, we propose designing thought and designing model and

7、 designing method. thus, the system is more secure and fault tolerant.keywords c/s structure,sql server2000,java1 绪 论1.1选题的背景和意义 网吧的存在既然有如此重要的意义,通过网络扩大网吧的对外宣传,树立网吧的自身的新形象,改进一向给人“小、散、乱、差”印象的网吧行业形象,有着非同寻常的意义。飞扬网吧是现今主流网吧的一个缩影,具有一定的规模,网吧为网民营造明亮、宽敞、舒适的上网环境,管理规范化,是网吧发展的趋势所在。“打造新视听,创造新享受。打造新娱乐,创造新体验。打造新教育,

8、创造新理念。打造新网吧,创造新形象。”这是第二届中国国际网络文化博览会根据我国网络文化市场的发展特点,以及国内外网络文化市场的现状和发展趋势,得出的我国网吧行业未来发展的四个核心内容。利用网吧本身具有的网络优势,实施网络化管理,将是网吧管理的主要形式。1.2 研究目的 随着计算机技术的日月更新,越来越多的人们注重加强对计算机知识的学习,为了满足学校学生或者社会学员的需求,许多网吧都纷纷对外开放,实行计时收费。但随着上机人数的增多,网吧的管理成了一个非常困难的问题。首先,人工计时收费是非常繁琐的一项工作,耗费人力物力,而且极容易出错;最后的统计工作更是一项费时费力的苦差事,甚至不能统计。其次,上

9、机过程中,每个网吧都需要值班人员值班,耗费了管理人员的很多时间。随着计算机各种外围设备技术的发展,以上工作通过计算机就可以很方便地实现。 为了适应当前网吧管理无人化的需求,本人试图利用自己大学所学专业知识并结合教学管理中的实际情况和其它类似计费软件的优点,开发了一套网吧收费系统软件。本系统可以解决网吧管理中存在的几个实际问题: 1. 减少值班人员、维护人员,降低管理人员费用,甚至可以做到网吧无需人员值守管理。 2. 增加网吧的开放时间,提高设备的利用率。 3. 解决目前网吧管理中的人情免费上机、脱逃费问题。 1.3 研究内容 利用jbuilder9、sql server 2000 等开发工具开

10、发一套基于c/s框架结构的网吧计费管理系统软件, 该系统要求由服务端、客户端2个部分组成。各部分主要实现以下功能:1.3.1服务器端: 1.卡号管理 主要包括:新建卡号、修改密码、用户充值。这其中大部分是标准数据的维护,包括新增、修改等; 2.信息管理 主要包括:删除用户信息、修改用户信息、查询用户信息、费率调整等。这里对是对用户全部信息进行管理的主要模块,以及对网吧费率的调整。 3.退出系统 主要用于管理员安全退出系统,让服务端系统安全退出,保持系统稳定性。 4.帮助 主要提示网吧系统版权,开发等相关信息。1.3.2客户端 首先要求将客户端的桌面、任务管理器、系统状态栏等系统功能锁定,桌面上

11、只有客户登录程序界面,要求用户输入用户名和下机注销后,系统自动结算用户消费,更新数据库,并在桌面上显示登录窗口,等待下密码进行登录。登录信息发送到“服务器端”,由“服务器端”来判断其合法性,并反馈一个信息给客户端,如果一切合法的话,再将桌面、任务管理器等功能解锁,让用户正常使用,转入用户主界面。用户可以在用户主界面进行余额查询,密码修改等操作,用户一位用户登陆。1.4系统开发技术与工具简介 系统涉及java语言,数据库知识以及c/s结构,运用jbuilder9,sql server 2000等开发工具进行开发。java是目前最流行的编程语言之一,sun基于java?语言推出的sunone和微软

12、基于vb/vc+/c#语言推出的.net是当今世界软件领域的两大阵营,所以,掌握java就等于掌握了软件开发的半壁河山。jbuilder是borland公司出品的开发java应用的集成开发环境,它是业力量最流行的,也是最好的集成开发环境之一,下面将对以上技术进行详细介绍。1.4.1 c/s结构简介 在系统的性能方面,b/s占有优势的是其异地浏览和信息采集的灵活性。任何时间、任何地点、任何系统,只要可以使用浏览器上网,就可以使用b/s系统的终端。? 不过,采用b/s结构,客户端只能完成浏览、查询、数据输入等简单功能,绝大部分工作由服务器承担,这使得服务器的负担很重。采用c/s结构时,客户端和服务

13、器端都能够处理任务,这虽然对客户机的要求较高,但因此可以减轻服务器的压力。而且,由于客户端使用浏览器,使得网上发布的信息必须是以6html格式为主,其它格式文件多半是以附件的形式存放。而html格式文件(也就是web页面)不便于编辑修改,给文件管理带来了许多不便。本系统采用了c/s结构进行开发,c/s结构主要应用于构造数据库系统,它包括连接在一个网络中的多台计算机。处理应用程序并请求另一台计算机服务的计算机为客户机(client),处理数据库的计算机称为服务器(server).c/s结构的特点是客户端只装载应用程序,而把数据库放在服务器上,这样就可以使客户端不存储数据,从而简化客户端软件。 j

14、dbc支持两层模型。两层模型中,一个java applet或者一个应用程序直接同数据库连接,这就需要有能直接连接数据库的jdbc驱动器。用户的sql语句被传送给数据库,而这些语句执行的结果将被传回给用户。数据库可以再同一机器上,也可以在另外机器上通过网络连接(本系统数据库在同一机器上)。这就是c/s结构,用户的计算机作为client,运行数据库的计算机作为server。这个网络可以是intranet,比如连接全体雇员的企业内部网,当然也可以是internet。 c/s架构软件的优势:应用服务器运行数据负荷较轻;数据的储存管理功能较为透明;能充分发挥客户端pc的处理能力,很多工作可以在客户端处理

15、后再提交给服务器。对应的优点就是客户端响应速度快。 c/s体系结构可以如图1.4.1-1: 图1.4.1-1 c/s结构1.4.2 java语言 java是由sun microsystems公司于1995年5月推出的java程序设计语言(以下简称java语言)和java平台的总称。 java主要特性: 1.java语言是简单的,java语言的语法与c语言和c+语言很接近, java语言不使用指针,并提供了自动的废料收集,使得程序员不必为内存管理而担忧。 2、java语言是一个纯的面向对象程序设计语言。 3、java语言是分布式的。java语言支持internet应用的开发,在基本的java应用

16、编程接口中有一个网络应用编程接口(j) 4、java的强类型机制、异常处理、废料的自动收集等是java程序健壮性的重要保证。java的安全检查机制使得java更具健壮性。 5、java语言是安全的。java提供了一个安全机制以防恶意代码的攻击。 6、java语言是体系结构中立的。java程序在java平台上被编译为体系结构中立的字节码格式,可以在实现这个java平台的任何系统中运行。 7、java语言是可移植的。这种可移植性来源于体系结构中立性,另外,java还严格规定了各个基本数据类型的长度。java系统本身也具有很强的可移植性, 8、java是解释型,高性能的。与那些解释型的

17、高级脚本语言相比,java的确是高性能的。 9、java语言是多线程的。java语言支持多个线程的同时执行,并提供多线程之间的同步机制(关键字为synchronized)。 10、java语言是动态的。java语言的设计目标之一是适应于动态变化的环境。java程序需要的类能够动态地被载入到运行环境,也可以通过网络来载入所需要的类。 java语言的优良特性使得java应用具有无比的健壮性和可靠性,这也减少了应用系统的维护费用。java对对象技术的全面支持和java平台内嵌的api能缩短应用系统的开发时间并降低成本。java的编译一次,到处可运行的特性使得它能够提供一个随处可用的开放结构和在多平台

18、之间传递信息的低成本方式。1.4.3 sql server 2000数据库 sql server 2000 是microsoft 公司推出的sql server 数据库管理系统的最新版本该版本继承了sql server 7.0 版本的优点同时又比它增加了许多更先进的功能具有使用方便可伸缩性好与相关软件集成程度高等优点可跨越从运行microsoft windows 98 的膝上型电脑到运行microsoft windows 2000 的大型多处理器的服务器等多种平台使用。 sql server 2000 的特性包括: 1、internet 集成 sql server 2000 数据库引擎提供完整

19、的 xml 支持。 2、可伸缩性和可用性 同一个数据库引擎可以在不同的平台上使用,从运行 microsoft windows? 98 的便携式电脑,到运行 microsoft windows 2000 数据中心版的大型多处理器服务器。 3、企业级数据库功能 sql server 2000 关系数据库引擎支持当今苛刻的数据处理环境所需的功能。数据库引擎充分保护数据完整性,同时将管理上千个并发修改数据库的用户的开销减到最小。 4、易于安装、部署和使用 sql server 2000 中包括一系列管理和开发工具,这些工具可改进在多个站点上安装、部署、管理和使用 sql server 的过程。sql

20、server 2000 还支持基于标准的、与 windows dna 集成的程序设计模型,使 sql server 数据库和数据仓库的使用成为生成强大的可伸缩系统的无缝部分。 5、数据仓库 sql server 2000 中包括析取和分析汇总数据以进行联机分析处理 olap 的工具。sql server 中还包括一些工具,可用来直观地设计数据库并通过 english query 来分析数据。 sql server 2000共有4个版本,分别是个人版,标准版,企业版和开发版,本系统开发采用的是sql server2000开发版。1.4.4 jdbc简介 jdbc是一种可用于执行sql语句的jav

21、a api。它由一些java语言写的类,界面组成。jdbc给数据库应用开发人员,数据库前台工具开发人员提供了一种标准的应用程序设计接口,使开发人员可以用纯java语言编写完整的数据库应用程序。通过jdbc,开发人员可以很方便地将sql语句传送给几乎任何数据库,不但如此,使用java编写的应用程序可以在任何支持java的平台上运行.由于该系统采用java语言实现,所以选择jdbc连接将使程序更健壮,移植性高。 现在需要找到一种能使java应用与各种不同数据库对话的方式,而jdbc正是实现这种对话的一种机制。 jdbc扩充了java的应用范围。ims管理员希望java与jdbc结合,因为这有助于更

22、容易、更经济地发布企业信息。而各个公司可以不断地使用已安装的数据库,方便地存取信息,不必顾及这些数据库是在何种dbms系统下存储的。有助于缩短新应用的开发时间,并可大大简化数据库的安装与版本控制。另外,在商业销售信息服务领域,java与jdbc则可以更好地向外界客户提供最新信息。 1.4.5 开发工具jbuilder9 jbuilder9是borland公司开发的,功能强大的可视化java集成开发工具,可以快速开发包括复杂企业级应用系统的各种java程序,包括独立运行程序、applet程序、servlet、jsp、ejb、web service等,最新的jbuilder 9版本支持sun的j2

23、se 1.4和j2ee 1.4。 使用可视化工具开发程序有很多好处,其中最显著的是能够快速生成程序框架、设计图形界面、调试程序等,此jbuilder 9内置了对一些企业级服务器的支持,包括borland服务器、bea公司的weblogic服务器、ibm的websphere服务器和iplanet服务器。jbuilder 9在以前版本的基础上,增强和增加了许多功能。 jbuilder 9 之图形使用者接口是以标准 jfc/swing 为基础开发而成,swing 框架中允许开发人员客制化外观 look and feel 以符合各图形使用者接口系统之风格。过去版本中 jbuilder 已经支持标准 w

24、indows、cde./motif 与 metal 三种外观,由于自 2003 年起 jbuilder 整合开发环境中核心部分将被用于 borland 公司其它跨平台工具中,因此 jbuilder 9 中增添 borland 特有之外观,以便于未来各跨平台工具中能保有统一之风格。 在jbuilder9中提供了大量gui控件和类,例如awt和swing控件等。用户可以直接对控件拖放,以及通过控件实现事件的处理,开发程序所见即所得,节省了大量的开发时间,让开发者的开发过程更加轻松。这正好适合本系统界面的开发工作。2 系统分析 根据软件工程设计的高内聚、低耦合的原则确定系统的层次结构,具体可描述如下

25、: 服务端: 1. 操作员管理 主要包括:操作用户管理、操作员登录、修改密码、设置上机费用 。这其中大部分是标准数据的维护,包括新增、修改、删除、查询等; 2. 用户信息管理 主要包括:用户充值、查询用户费用、删除用户信息、添加用户信息、修改用户信息。这里区分不同的用户类型,按照不同用户类型设置上机费用等; 客户端:首先要求将客户端的桌面、任务管理器、系统状态栏等系统功能锁定,桌面上只有客户登录程序界面,要求用户输入用户代码和密码进行登录。登录信息要求以网络数据包的形式发送到“服务器端”,由“服务器端”来判断其合法性,并反馈一个信息给客户端,如果一切合法的话,再将桌面、任务管理器等功能解锁,让

26、用户正常使用。客户端程序要求正常停靠在系统托盘中,用户下机时要求点击此图标进行下机,客户端将下机信息发送到“服务器端”,然后重新弹出登录界面,等待下一个用户登录。 在分析网吧计费管理系统的过程中,关键在于参考了计算机毕业设计网第七版的/0.2.1 可行性分析 任何一个系统或一项工程在建立之前,必须首选进行可行性分析,可行性分析包括两层含义,一是可能性,二是必要性。可能性指开发信息系统的条件是否具备,必要性是指客观上是否真正需要,通过可行性研究,可避免盲目投资,减少损失。下面从三方面来讨论:2.1.1 经济可行性 主要是只指算一个新的系统开发所需要的投资费用和运算费用,并与估计的新系统收益进行比

27、较,看是否有利。本系统所需的软硬件成本比较低,投资小,具有一定的通过性,因此 ,在经济上是可行的。2.1.2 时间可行性 主要包括系统在目前环境下能否正常运行,运行后所引起的各方面,以及这些变化对社会或人的因素所产生的影响。本系统对网吧日常的管理比较全面,可长期使用。2.1.3 技术可行性 利用现有的设备,软件及技术人员,新系统的目标能否达到,这也是可行性研究中需要考虑的一个问题。关系型数据库的高速发展使管理信息系统具备了良好的开发环境。本系统使用的java普及性好,操作简单,用户可以很快掌握使用方法,因此,在技术上是完全可行的。2.1.4 社会可行性 人类社会文明的发展已进入信息化的高速发展

28、时期,传统的手工方式支持下的管理模式,已经不能满足各方面的需要。开发本系统的目标不仅是提高工作效率,减轻劳动强度,而且减少出错率,具有很好的社会意义。2.2 系统需求分析 需求分析是指开发人员要准确理解用户的要求进行细致的调查分析,将用户非形式的需求陈述转化为完整的需求定义,再由需求定义转换到相应的形式功能规约需求规格说明的过程。需求分析虽然处于软件开发过程的开始阶段,但它对于整个软件开发过程以及软件产品质量是至关重要的。 近几年来已提出许多软件需求分析与说明的方法如结构化分析方法和面向对象分析方法,结构化分析(structured analysis,简称sa)是面向数据刘进行需求分析的方法。

29、sa也是一种建模活动,该方法使用简单易读的符号,根据软件内部数据传递、变换的关系,自顶向下逐层分解,描绘出满足功能要求的软件模型。 结构化分析步骤: 了解当前系统的工作流程,获得当前系统的物理模型。当前系统是指目前正在运行的系统,可能是需要改进的正在计算机上运行的软件系统,也可能是人工处理系统。 抽象出当前系统的逻辑模型。物理模型反映了系统“怎样做”的具体实现,去掉物理模型中非本质的因素,归纳出本质的因素。本质因素是指系统固有的、不依赖运行环境变化而变化的因素,任何实现均可这样做。非本质因素不是固有的,随环境不同而不同,随实践不同而不同。 建立目标系统的逻辑模型。目标系统指待开发的系统。分析、

30、比较目标系统与当前系统逻辑上的差别,然后对“变化的部分”重新分解,分析人员根据自己的经验,采用自顶向下逐步求精的分析策略,逐步确定变化部分的内部结构,从而建立目标系统的逻辑模型。 作进一步补充和优化。为了完整描述目标系统,还要做一些补充:说明目标系统的人机界面;说明至今尚未详细考虑的细节。 根据本系统的实现功能,分为以下几方面来进行讨论。2.2.1 系统非功能性需求 1.用户需求 由于网吧日常管理需要很繁琐的操作,如果人工进行的话,容易导致工作效率低下,用户消费计算不正确甚至错误,同时也不能进行有效地统计用户的上网情况,管理者不能正确的作出决策,这使网吧的经营管理混乱。 要改变这种落后低下的管

31、理状况,把工作人员从枯燥乏味的重复劳动中解脱出来,用计算机系统进行管理是一个明智的选择。利用计算机这一工具,不但能成百倍地提高工作效率,还能及时准确地得到有关信息,有效排除人为造成的失误,避免许多不必要的损失。让网吧计费管理更精确省时。 2.性能要求 在性能方面要求系统核算准确,使每日的实收金额与用户的消费金额相吻合,管理员能够在服务器端对机器的开关,用户的注销,修改查询,删除用户信息进行操作,并能及时存入数据库;用户能及时查看自己的消费情况,修改相关信息,下机时候自动计算余额等。 3.运行要求 1)服务器要求:(安装服务器版) cpu:奔腾166以上; 显示器分辨率:1024*768以上;

32、显示器色彩解析度:256色以上; 指定固定ip地址,与客户机及internet能 硬盘可用空间100兆以上; 内存:32兆以上 2)客户机要求:(安装客户版) cpu:奔腾166以上; 内存:32兆以上; 显示其色彩解析度:256色以上; 指定固定ip地址,与客户机及internet能正常联网; 3)软件要求: 操作系统:win98/win2000/winxp 数据库:sql server2.2.2 功能性需求 在实际开发中,系统功能分析需要开发小组的系统分析及设计人员与用户进行全面、深入的交流,切实了解用户期望整个系统所应具有的功能,并分析用户行业营运特点,与用户共同决定系统的具体功能。我们

33、按照上述过程分析得出以下结论: 本系统的功能模块主要包括一下功能: 1.卡号管理:管理员可以新建用户信息,完成对用户密码进行修改等操作,能够对用户的卡号进行充值。 2.信息管理:管理员对用户相关信息修改,查询与删除等,也可对网吧上网的费率进行调整,以满足当时的需要。 3.用户消费信息:系统允许的用户操作,例如密码操作,余额查询等 4.注销退出:用于用户注销退出系统结算等 图2.2.2-1表示了网吧计费管理系统的功能需求,网吧计费管理系统主要包括:服务器端和客户端,期中服务器端又包括以下功能:网吧费率调整、用户充值相关、修改用户相关信息、删除用户信息、新建用户信息等;客户端则主要包括:用户消费查

34、询、用户密码修改、用户注销登录等图2.2.2-1 功能需求 2.3系统模块分析 1.功能模块图2.3-1:以下用例表示系统有两个主要角色管理员和用户。管理员主要对系统进行:卡号管理、信息管理、用户消费信息、注销退出。用户也能对系统进行:用户消费信息、注销退出。 图2.3-1功能模块 2.子模块介绍 1卡号管理设计:该模块主要管理员新建用户,修改密码,以及给用户充值,调用该模块进行操作,并将结果存入数据库。 管理员要对系统进行卡号管理可以进行:新建卡号、修改密码、充值等操作。系统与服务器进行连接,进行信息操作,即对信息进行充值和修改。数据库进行验证,并将信息反馈回去。该模块流程图如下图2.3.2

35、: 图2.3-2卡号管理 2信息管理:该模块实现管理员对用户信息进行修改,删除与查询,并且可以设置网吧费率,通过该模块将自动调用数据库相关操作,检查输入合法性,将结果显示给管理员或更新数据库。管理员要对系统进行信息管理主要包括:删除卡号、修改信息、查询信息、设置费率等。系统与服务器连接后,对信息进行:查询、修改、删除、设置等操作。数据库要对用户以及输入进行验证,并将信息反馈回去,同时对数据库进行更新。该模块的流程图如下2.3-3:图2.3-3信息管理 3用户消费信息:该模块主要实现用户对自己信息的管理,包括查询余额消费信息,修改密码等,用户进行信息管理,首先输入用户信息和相关请求,系统对用户信

36、息进行验证;系统与服务器进行连接,系统将用户信息:密码、卡号,输入数据库,数据库对上述客户信息进行验证,反馈验证信息,并将结果显示给用户该模块的流程图如下2.3-4;图2.3-4用户消费信息 4注销退出:该模块实现用户下机自动结账,并将新的余额存入数据库,同时删除此次用户上机记录,然后转到用户登陆框。该模块流程图如下2.3-5: 用户向系统提出注销申请,系统与数据库进行连接,发送注销信息,数据库删除上次上机记录,更新数据。图2.3-5注销退出2.4 业务流程分析 本小组在调查网吧的管理业务流程中,本着实事求是的精神,按照原有信息流动过程,逐个地调查所有环节的处理业务、处理内容、计算方法、提供信

37、息的时间和信息形态等。经过调查分析,我们初步了解网吧计费管理的基本业务流程,并绘制了详细的业务流程图。流程图是软件开发者比较熟悉的一种系统表达方式,它独立于程序,可以比较直观和清晰的描述过程的控制流程。 网吧计费管理系统的服务器端系统流程图如图2.4-1: 启动本系统程序后,管理员进行系统登录,管理员输入管理口令,系统对其输入信息进行验证,如果口令不正确则重新进入登陆界面,提示口令错误;口令输入正确后进入系统本界面,对系统进行管理。主要包括:卡号管理、信息管理、退出、帮助。卡号管理主要是:新建卡号、修改密码、充值;信息管理包括:删除信息、查询信息、修改信息、费率调整。图2.4-1服务器业务流程

38、图 网吧计费管理系统客户端流程图如图2.4-2: 客户端使用流程为,客户要使用本系统首先要进行登录,打开终端电脑后会出现客户端登陆界面,并提示用户输入口令,用户输入口令后,系统对其进行验证。如果口令错误返回登录界面重新登录;如果验证通过,则进入用户界面。用户可以使用本系统进行:用户信息管理、寻求系统帮助、退出系统。其中用户信息管理中用户可以进行修改密码和查询余额。 图2.4-2客户端业务流程图3 数据库设计3.1数据库的需求分析 本系统的数据库管理是核心业务,管理员登陆管理系统,用户登陆都要到数据库中进行验证,合法才允许进入系统或使用机器。新增用户信息时需要到数据库中验证用户是否存在并合法,验

39、证通过后新建成功并存入数据库相关用户信息表中;同样在删除,修改用户信息时要通过数据库来验证用户信息判断操作合法性;通过数据库用户能及时查询自己相关信息,以及充值,上下机结算。3.2数据库e-r图和数据库表 根据数据库的设计需求,主要考虑用户信息,上网业务,这里设计了数据库的e-r图,如图3.2-1: 图3.2-1数据库e-r图 数据库表的设计:在本系统设计了3张数据库表,分别是管理员口令表,用户信息表,用户上机记录表。系统所需要的表格设计如下: 1.保存管理员登陆口令以及系统费率的表admin如图3.2-2,表中数据如图3.2-3 字段名 数据类型 是否为空 备注 adminid char10

40、 否管理员号,关键字 adminpw char10 是 管理员密码 rate float8 是 费率 2.保存用户信息的表userin,该表设计了5个字段:userid用户卡号,userpw用户密码,username用户名字,userd用户身份证,leavemoney余额。该表的具体数据库表描述如下: 表3.3-3用户信息表 字段名 数据类型 是否为空 备注 userid char10 否用户卡号,主关键字 userpw char10 是 用户密码 username char10 是 用户姓名 userd varchar50 是 用户身份证 leavemoney float8 是 余额 3.记

41、录用户上机信息的表pay,该表设计了两个字段:userid用户卡号,begintime开始时间,用来临时保存用户上机信息的,便于用户下机自动结算。具体的数据库表描述如下: 表3.3-4上机信息表 字段名 数据类型 是否为空 备注 userid char10 是用户卡号 begintime smalldatetime(4) 是开始时间3.3 数据库连接 在利用jbuilider9进行开发应用程序时,不可避免的要用到数据库的连接,java连接数据库主要有两种方式: 方式一:使用jdbc-odbc桥连接:这种方式是不需要jdbc驱动程序的,只需在控制面板中建立一个odbc数据源就可以了。注意的是,建

42、立数据源是系统dsn中进行的,但请切记所建立的数据源的名称。 方式二:使用sql-server专用的驱动程序即sql server 2000 driver for jdbc进行连接,或称非jdbc-odbc桥连接方式。还需下载sql server 2000的补丁sql2000-kb884525-sp4-x86- chs.exe和sql server 2000 driver for jdbc。使用专用连接方式访问速度比较快一些,而且不需要再控制面板中添加数据源。 本系统采用的是jdbc驱动来连接数据库。 在连接数据库前,我们需要配置安装microsoft sql server 2000 driv

43、er for jdbc,在开发工具jbuilder9配置库里导入jdbc驱动(msbase.jar,mssqlserver.jar,msutil.jar),配置测试成功后可以在开发中直接通过jdbc直接连接数据库。 由于系统各个模块都需要连接数据库,所以按照面向对象思想,我们可以在服务器端和客户端各建立一个建立数据库连接类(barconnect,barconnect2),此类提供一个静态方法getconn用来得到数据库对象,所有访问数据库的操作,都必须通过此类得到一个连接,这样做可以很好的实现封装性和可维护性,当以后需要用别的数据库或者采用数据库连接时,只需要修改getconn方法即可。下面给

44、出服务器端数据库连接类barconnect类部分代码: 服务器端数据库连接模块(barconnect)实现代码如下: public class barconnect public barconnect try/加载数据库驱动 class.forname/./.serverdriver; catchclassnotfoundexception ee public static connection getconn throws sqlexception string url jdbc:microsoft:/. string username sa; string password sa; ret

45、urn drivermanager.getconnectionurl,username,password; public static void closeresultset rs try rs.close; catchexception ex public static void closestatement stmt try stmt.close; catchexception ex public static void closeconnection conn tryconn.close; catchexception ex /建立一个连接类对象 private static barco

46、nnect dbconn new barconnect; 4 系统的设计和实现 该模块实现验证用户登陆信息。系统验证输入不为空,通过数据库查询用户合法且输入密码正确,则允许用户进入系统开始上机,并将用户卡号通过变量传给主界面相关模块使用,将此刻用户登陆时间存入用户记录pay表,以便用户结算使用,然后显示用户主界面,用户可以进行消费以及相关操作。 该模块为客户端的密码修改和余额查询两个模块,主要实现代码(clientloginframe.java,clientlogin.java)如下: 1. 客户端登录验证代码实现如下: connection conbarconnect2.getconn; l

47、oginqueryselect * from userin where userid? and userpw?; loginstmtcon.preparestatementloginquery; useidjtextfield1.gettext; loginstmt.setstring1,useid; string usepw; forint i0;ijpasswordfield1.getpassword.length;i+ usepw+jpasswordfield1.getpasswordi; loginstmt.setstring2,usepw; rsloginstmt.executequ

48、ery; 2. 密码错误系统发出警告的实现: jtextfield1.settext卡号或密码错误; jpasswordfield1.settext; 3. 用户登陆成功后转入该页面,用户在该页面可以进行余额查询,密码修改,注销等操作。 客户输入合法进入客户主界面的代码成功实现: clientmainframe cmmnew clientmainframeuseid; cmm.setsizenew dimension600,600; this.dispose; dimension /.screensize; dimension framesizecmm.getsize; /.mal; /.th-framesize.width/2, screensize.height-framesize.height/2; cmm.show; 4.该模块实现用户对自己密码修改的功能,首先系统验证用户输入是否为空以及两次新密码输入是否一致,若通过验证,则修改成功,将该用户的新密码代替旧密码存入数据库。 客户修改密码的代码实现 /确定按钮事件 void jbutton1_actionperformedactionevent e string s2

温馨提示

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

评论

0/150

提交评论