收藏 分销(赏)

学位论文—排号系统论文.doc

上传人:快乐****生活 文档编号:5122699 上传时间:2024-10-26 格式:DOC 页数:36 大小:674.54KB
下载 相关 举报
学位论文—排号系统论文.doc_第1页
第1页 / 共36页
学位论文—排号系统论文.doc_第2页
第2页 / 共36页
学位论文—排号系统论文.doc_第3页
第3页 / 共36页
学位论文—排号系统论文.doc_第4页
第4页 / 共36页
学位论文—排号系统论文.doc_第5页
第5页 / 共36页
点击查看更多>>
资源描述

1、学校代码: 10128学 号: 040201039 本科毕业设计说明书(题 目:基于C/S的JAVA多线程牌号系统开发与应用学生姓名:邬丽珍学 院:信息工程学院系 别:计算机系专 业:计算机科学与技术班 级:计算机04-2指导教师:李 雷 孝 研 究 生 李 爽 工 程 师二八年六月内蒙古工业大学本科毕业设计说明书摘 要牌号系统是为解决一些服务业营业大厅排队问题而设计的,它能够有效地提高工作人员的工作效率,也能够使顾客合理的安排等待时间,让顾客感到服务的公平公正。论文首先讨论了牌号系统的背景、意义、应用现状以及研究与开发现状。本文在对C/S架构、Socket网络编程技术、Java线程编程等相关

2、技术理论做了简单的论述。结合工程项目,具体论述了牌号系统的需求分析、整体设计以及系统数据库的设计,其中包括业务流程图、系统用例图、功能结构图、数据流程图、以及系统数据库的E-R图的分析和描述。其次,论文着重讨论了C/S架构的牌号系统的设计和实现。在论文中详细地论述了牌号系统的数据库设计与系统实现的各个步骤,并对原型系统作了简要介绍。最后,论文对主要完成的工作进行了总结,并提出了研究的不足之处以及对今后研究的展望。关键词:C/S架构;Java多线程;牌号系统;Socket网络编程;开发AbstractGrade system is designed to solve problems of qu

3、euing in Hall of bussiness services. It can effectively improve the staffs efficiency, and make the customers reasonably arrange the waiting time, then supply fair and just service for the customers.Firstly, background, significance, development and application of grades system were discussed in thi

4、s paper. The C/S structure, Socket network programming technology, Java-thread programming, and other related technologies were also simply dissertated. The requirements of the trademark system analysis, system design and database design were well-documented, which included the operational flow char

5、t, the system use case plans, functional structure, data flow chart, and the ER system database analysis and description of the plan.Secondly, the design and implementation of C/S structure was discussed in this paper, which mainly concerned the design of database system, the various steps of the Gr

6、ade system, and the introduction of prototype system.Finally, the main conclusion was summarized in this paper. Moreover, the inadequacy of this study was suggested as well as the prospects for the future research.Keywords: C/S structure; Java multi-threaded; grade system; Socket network programming

7、; development内蒙古工业大学本科毕业设计说明书目 录引 言1第一章 系统分析21.1 系统初步调查21.2 系统可行性分析21.2.1 经济可行性21.2.2 操作可行性21.2.3 技术可行性21.3 系统开发环境概述31.3.1 硬件环境31.3.2 软件环境31.4 系统需求分析31.4.1 业务流程分析31.4.2 系统体系结构设计41.4.3 系统逻辑模型41.5 系统需求定义51.5.1 客户用例图51.5.2 业务员用例图5第二章 系统总体设计72.1 系统设计目的与任务72.2 开发设计思想72.3 系统总体设计框架82.4 系统功能详细设计8第三章 数据库设计10

8、3.1 数据库需求分析103.2 数据库概念设计103.3 数据库逻辑结构设计123.4 系统安全性设计13第四章 系统的实现144.1 系统的总体概述144.2 系统相关技术简介144.2.1 C/S的简介144.2.2 Socket的简介154.2.3 JAVA多线程技术154.3 系统的执行流程图164.4 系统主界面的实现174.4.1 服务器主界面的实现174.4.2 客户端界面的实现184.5 服务器端取号的实现204.6 客户端业务处理的实现214.7Dao层的实现244.8 配置模块的实现24第五章 原型系统的介绍265.1 服务器端265.2 客户端28结 论30参考文献31

9、谢 辞32内蒙古工业大学本科毕业设计说明书引 言时间等于金钱,这句话是这个飞速发展时代的真实写照,随着科技的不断发展,人们越来越要求办事的效率,讨厌把宝贵的时间花在一些排队的事情上。我国是一个人口众多的国家,各大银行,邮局,医院等营业大厅常常人满为患,排着长队等着办理业务,这种局面常常使人们怨声载道。随着社会的发展,特别是信息技术的发展,计算机已经在社会的各个方面凸显出来。原始呆板固化的排队等候方式转变为基于计算机管理与控制的舒适、休闲的等候方式。由于原始的排队等候方式存在不方便、不安全等缺点,而基于计算机管理与控制的舒适、休闲的等候方式完全可以解决这些弊端,人们不仅可以自由安排等待时间,而且

10、可以轻松的享受其他服务,这方式不仅提高了业务员的工作效率,也提高了其业务素质。牌号系统在现今的服务行业还是个比较新鲜的名词,利用这种先进的牌号系统管理模式将网络技术、通信技术相结合,采用TCP/IP通信连接,使企业的服务机构通过网络与顾客通信,完成对顾客的管理。牌号系统实现每个客户端可以迅速建立与服务器端的实时通信连接,并且操作互动的业务。顾客不仅可以进行取号业务,还可以进行一些其它操作,业务员除了进行业务处理还可以对数据库进行一些增删改查等操作。随着网络编程技术研究的不断深入和完善,国内外越来越多的企业己经开始使用牌号系统,中国建设银行,上海长海医院等地方已开始使用,并且取得了相当的业绩和成

11、果。论文的第一章介绍了系统分析,重点介绍了系统的可行性分析,系统的需求分析,其中包括业务流程图、系统用例图、逻辑模型图、体系结构图等;第二章介绍了系统的整体设计,重点介绍了开发设计思想,系统详细功能设计及系统总体框架等;第三章介绍了系统的数据库设计,重点介绍了数据库的概念设计及逻辑结构设计等,其中包括ER图、数据字典表等;第四章介绍了系统的实现,主要介绍了一些所用到的关键技术、系统程序执行流程、以及系统的实现,其中分别介绍了系统主界面实现、服务端取号的实现、客户端业务处理的实现、Dao层实现、配置模块的实现等,文中详细论述了系统实现的各个步骤;第五章对原型系统的简要介绍;第六章对本人的工作做出

12、了总结并展望后继的工作。第一章 系统分析1.1 系统初步调查社会生产力的发展与进步,积极推动了人类思想的革新与创造,从而一系列新生事物的诞生接踵而来。但是新生事物的生存与延续取决于人类的检验,因而它的可行性至关重要。万事求得发展的根本保障是物质基础,经济的飞速发展推动生活水平显著提高。所以,生活质量的标准化、多样化使市场需求处于必不可少的地位,而市场规模也随之扩大,因此,经过详细的调查,目前在我国,虽然服务行业蓬勃地发展起来,但是基本上都还在使用排队方式办理业务。在此方式下,不仅秩序混乱,还效率低下,顾客还怨声载道。显然,随着服务行业的发展,这种形式已不再适合新型服务行业的要求,对行业的发展也

13、有一定的限制,直接导致了工作人员的工作效率低下。因此本文设计了这个功能实用的牌号系统,解决服务行业里混乱的场面。1.2 系统可行性分析1.2.1 经济可行性该系统对操作环境没有太多要求,系统的开发不需要很强的经济支持,就其功能和给企事业单位带来的方便来说,是完全可行的。1.2.2 操作可行性目前计算机已经普及到所有的单位及大部分家庭,不仅在企事业单位,即使足不出户也能通过网络对单位和人员进行统一管理。本系统的使用者有三类人,第一是客户;第二是银行柜员;第三是银行管理人员,对于这三类人员使用本系统都是可行的。本系统操作非常简单,不需要进行培训只需阅读说明书就可以进行操作。1.2.3 技术可行性本

14、系统采用Java语言编写,它是一种简单的,面向对象的编程语言,具有多线程,分布式,跨平台等特性。它有自己的安全机制,并且移植性很好。在数据库方面采用了Oracle 10g,其灵活性,安全性和易用性为数据库编程提供了良好的条件。在数据持久化层,选用了JDBC,开发者掌握这些技术就可以具备开发此系统的能力,另外,此系统对开发环境的要求,都是大部分Java程序员进行软件开发使用的开发环境,所以,技术方面也是可行的。1.3 系统开发环境概述1.3.1 硬件环境本系统采用单机操作方式,基本配置如下;机型:DELL Inspiron 6000处理器:Intel(R) Pentium(R) M 786MHz

15、 2.13GHz硬盘空间:80GB内存:512MB显示器:ATI X301.3.2 软件环境采用C/S架构,使用Eclipse运行环境开发平台:Eclipse+salories10操作系统:Linux数据库服务器:Oracle9i/10g使用技术:Java GUI、JDBC、Socket、Xml1.4 系统需求分析1.4.1 业务流程分析在调研过程中,已了解到所涉及的业务流程如图1-1所示图1-1业务流程图表示层业务逻辑层数据访问层JavaGUIService层Dao层pojo类JDBC数据持久化层调用调用数据库1.4.2 系统体系结构设计图 1-2系统体系结构1.4.3 系统逻辑模型图 1-

16、3 系统逻辑模型1.5 系统需求定义1.5.1 客户用例图图 1-4 客户用例图1.5.2 业务员用例图图 1-5 业务员用列图第二章 系统总体设计2.1 系统设计目的与任务系统设计阶段的主要目的是,将系统分析阶段所提出的、充分反映用户信息需求的系统逻辑方案转换成可以实施的、基于计算机和网络技术的物理方案。这一阶段的主要任务是从信息系统的总体目标出发,根据系统分析阶段对系统的逻辑功能的需要,并考虑到经济、技术和运行环境等方面的条件,确定系统的整体结构和系统各组成部分的技术方案,合理选择计算机和通信的软件、硬件设备,提出系统的实施计划。2.2 开发设计思想牌号系统从界面上看主要实现两个方面的功能

17、:(1)取号 客户按键反馈给服务器,然后服务器从数据库获得一个号反馈给顾客,这就完成了取号的过程,在顾客取号的可视化界面上顾客可以查询当前取号总人数,也可查询到已处理的人数,在顾客想放弃当前的号票时也可以对号票进行删除,顾客还可以在可视化界面看到自己的取票信息和需要等待的人数。(2)叫号 业务员按键反馈给服务器,服务器拿到取号时存储在数据库中的数据,进行业务处理,在这个过程中业务员可以进行对顾客人数的查询,还可以对不需要进行处理的票号进行删除,也可已充当管理员的角色对数据库进行删除。业务员还可以查看顾客的取票情况,以及票号的业务的处理情况。牌号系统的特点:(1)可操作性界面简易,使用通用的菜单

18、式风格,使用直观,操作简便。(2) 容量大支持联网,不限制取号数量,可满足大型客流场所的使用。(3)高性能系统的所有对象都存放到数据库中,表示逻辑与业务逻辑相互分离,保证系统的处理能力。(4)伸缩性它能适应不同的应用环境,对于只实现基本功能的服务大厅,如银行系统,可以采用微机控制的牌号系统,无需单独配置系统电脑,即可实现自动排队叫号的功能。(5)可靠性能保证长时间的正常运行,同时系统有比较好的安全机制,提高了安全性能。2.3 系统总体设计框架据以上章节所做需求分析对系统进行功能设计,见系统功能模块图如图2-1所示:取号功能统计功能弃号功能查询功能通知功能叫号功能查询功能移除功能牌号系统客户端服

19、务器端登录功能统计功能图2-1 系统的总体功能模块图2.4 系统功能详细设计该系统功能从服务器端和客户端角度来说可分以下两大模块,具体每一个模块又分为几个小模块:(1)服务器端1)取号功能:打开服务器与终端进行通信。由于把服务器设置到了用户的一端,所以在服务器端进行取号,然后把号存到数据库中。2)统计功能:数据访问层从数据库中查出所有取票人数和等待人数在服务器端界面显示。3)删除功能:删除当前取票顾客的牌号。4)查询功能:顾客可以从此处了解到所有顾客的取票情况及被处理状况。5)通知功能:从服务器端获得牌号,通过服务器端通知*用户到*工作台办理业务。(2) 客户端同一时刻允许多个工作台办理业务。

20、用户通过在服务器端的通知功能知道去哪个工作台办理业务,工作台显示正在为哪个号码的用户办理业务。1) 登录功能:业务员从此处登录,业务员的姓名,密码是事先录入数据库的。2) 叫号功能:业务员点击处理按钮触发事件发送信息给服务器,服务器从数据库拿到号票,返回给业务员进行业务处理。3)统计功能:数据访问层从数据库查询总取票人数和查询未处理人数在业务端显示。4) 删除功能:业务员可以删除数据库中所有的记录,也可以选择删除某条记录。5) 查询功能:业务员可以查询所有顾客的取票情况及业务员对号票的处理情况,这块主要为了能够及时掌握顾客取票信息及业务员处理情况。第三章 数据库设计3.1 数据库需求分析通过对

21、牌号系统内容和数据流程分析,设计的数据项和数据结构如下:(1)顾客信息。包括的数据项有顾客ID,顾客牌号、取号时间、服务类型、状态标志等。(2)业务端信息。包括的数据项有业务ID、处理时间、服务台编号、属于那种服务类型,服务的顾客票号。(3)业务员信息。包括的数据项有业务员姓名、业务员密码。(4)自动出号信息。包括的数据项有ID、服务类型。有了上面的数据结构、数据项和数据流程,就可以进行下面的数据库设计。3.2 数据库概念设计这一设计阶段是在需求分析的基础上,设计出能够满足用户需求的各种实体,以及它们之间的关系,为后面的逻辑结构设计打下基础。根据上面的设计规划出的实体有顾客信息实体、业务端信息

22、实体、业务员信息实体、自动出号信息实体。各个实体的E-R图及其关系描述如下:业务端信息状态标志顾客票号服务类型处理时间业务端ID服务台编号图 3-1 业务端信息实体E-R图业务员信息业务员姓名业务员密码业务员ID图 3-2 业务员信息实体E-R图顾客信息服务类型状态标志取号时间顾客牌号顾客IDID业务类型自动出号信息图 3-3顾客信息实体E-R图图 3-4 自动出号信息实体E-R图实体之间关系E-R图:顾客信息业务端信息基于自动出号基于图 3-5 实体之间关系E-R图3.3 数据库逻辑结构设计在上面的实体以及实体之间关系的基础上,形成各个表格之间的关系。牌号系统数据库中的各个表的设计结果如下面

23、的几个表格所示,每个表格表示数据库中的一个表。(1) 顾客信息表customer_tbl表customer_tbl用来保存顾客取票信息,结构如表3-1所示。表 3-1 customer_tbl的结构字段名字段类型中文描述备注非空主键IdNUMBER唯一标识nextIdNUMBER顾客牌号UniquetakeDateDate取票日期typeNUMBER服务类型1:vip 2:普通flagNUMBER处理标记Unique(2) 业务端信息表work_tbl表work_tbl用来保存业务端信息,结构如表3-2所示。表 3-2 work_tbl的结构字段名字段类型中文描述备注非空主键IdNUMBER唯

24、一标识processDateDate处理日期workIdNUMBER服务台编号typeNUMBER服务类型1:vip 2:普通nextIdNUMBER顾客牌号Unique(3) 业务员信息表workmen_tbl表workmen_tbl用来表示业务员信息,结构如表3-3所示。表 3-3 workmen_tbl的结构字段名字段类型中文描述备注非空主键IdNUMBER唯一标识namevarchar2(20)用户名passwordvarchar2(20)密码(4) 自动出号信息srt_tbl表srt_tbl用来产生唯一的号票信息,表结构如表3-4所示表3-4 srt_tbl的结构字段名字段类型中文描

25、述备注非空主键nextIdNUMBER(20)顾客牌号tyepNUMBER(7)服务类型Unique3.4 系统安全性设计(1) 数据因素:系统数据库中包含多个表信息,所以在系统与数据库的连接上,直接封装到代码中,由于java的安全机制比较好,所以数据信息在存储和传递过程中不可见。(2)硬件及物理因素:系统硬件及安全环境安全可靠,包括机房设施、计算机主体、存储系统、数据通信设备设施等方面是安全的。(3) 存储安全:通过oracle的数据库安全设置,连接数据库需要用户名和密码,保证了数据库的安全性14。第四章 系统的实现4.1 系统的总体概述牌号系统采用java GUI设计的界面,它通过scok

26、et实现点对点的通信,在实现过程中,客户取号的一端设置成了server端,业务员处理一端设置成了client端,所以必须先启动server端,才能启动client端。在整个系统中server端实现了顾客的取号功能和一些查询删除功能,client端实现了业务员登录和叫号处理以及一些查询删除功能。4.2 系统相关技术简介4.2.1 C/S的简介 传统的应用体系结构模式主要有两种:C/S(Client/Server)结构模式B/S(Browser/ Server)结构模式。C/S(Client/Server)结构,即大家熟知的客户机和服务器结构。它是软件系统体系结构,通过它可以充分利用两端硬件环境的

27、优势,将任务合理分配到Client端和Server端来实现,降低了系统的通讯开销。目前大多数应用软件系统都是C/S形式的两层结构,由于现在的软件应用系统正在向分布式的Web应用发展,Web和Client/Server应用都可以进行同样的业务处理,应用不同的模块共享逻辑组件;因此,内部的和外部的用户都可以访问新的和现有的应用系统,通过现有应用系统中的逻辑可以扩展出新的应用系统。这也就是目前应用系统的发展方向C/S体系结构的优点: (1) 应用服务器运行数据负荷较轻。 最简单的C/S体系结构的数据库应用由两部分组成,即客户应用程序和数据库服务器程序。二者可分别称为前台程序与后台程序。运行数据库服务

28、器程序的机器,也称为应用服务器。一旦服务器程序被启动,就随时等待响应客户程序发来的请求;客户应用程序运行在用户自己的电脑上,对应于数据库服务器,可称为客户电脑,当需要对数据库中的数据进行任何操作时,客户程序就自动地寻找服务器程序,并向其发出请求,服务器程序根据预定的规则作出应答,送回结果,应用服务器运行数据负荷较轻。 (2) 数据的储存管理功能较为透明。 在数据库应用中,数据的储存管理功能,是由服务器程序和客户应用程序分别独立进行的,前台应用可以违反的规则,并且通常把那些不同的(不管是已知还是未知的)运行数据,在服务器程序中不集中实现,例如访问者的权限,编号可以重复、必须有客户才能建立定单这样

29、的规则。所有这些,对于工作在前台程序上的最终用户,是“透明”的,他们无须过问(通常也无法干涉)背后的过程,就可以完成自己的一切工作。在客户服务器架构的应用中,前台程序不是非常“瘦小”,麻烦的事情都交给了服务器和网络18 。4.2.2 Socket的简介Socket 是一种软件形式的抽象,用于表达两台机器间一个连接的“终端”。在java中创建一个Socket,用它建立与其他机器的连接。从Socket得到的结果是一个InputStream以及OutputStream或Reader和Writer,以便将连接作为一个I/O流对象对待。这有两个基于数据流的套接字类:一个是ServerSocket,服务器

30、用它“侦听”进入的连接;另一个是Socket,客户用他初始化一次连接。一旦客户(程序)申请建立一个套接字连接,ServerSocket就会返回(通过accept()方法)一个对应的服务器端套接字,以便进行直接通信。可以利用getInputStream()以及getOutputStream()每个套接字产生对应的InputStream和OutputStream对象。这些数据流必须封装到缓冲区内。在牌号系统中采用了TCP/IP协议,这样实现了点对点通信等功能3。4.2.3 JAVA多线程技术(1)多线程17多线程编程技术是Java语言的重要特点。多线程编程的含义是将程序任务分成几个并行的子任务。特

31、别是在网络编程中,你会发现很多功能是可以并发执行的。比如网络传输速度较慢、用户输入速度较慢,你可以用两个独立的线程去完成这两个功能,而不影响正常的显示或其它功能。多线程是与单线程比较而言的,普通的Windows采用单线程程序结构,其工作原理是:主程序有一个消息循环,不断从消息队列中读入消息来决定下一步所要干的事情,一般是针对一个函数,只有等这个函数执行完之后,主程序才能接收另外的消息来执行。比如子函数功能是在读一个网络数据,或读一个文件。只有等读完这个数据或文件才能接收下一个消息。在执行这个子函数过程中你什么也不能干。但往往读网络数据和等待用户输入有很多时间处于等待状态,多线程利用这个特点将任

32、务分成多个并发任务后,就可以解决这个问题。(2)线程创建的方法161)从一个自定义的类中创建一个对象,这个类扩展了Thread类。2)使用接口。在java中,用于创建线程的接口是Runable。(3) 多线程在牌号系统中的应用为了实现多用户同时在线服务采用了多线程机制,在实际应用中启动一个业务端产生一个线程。业务端分布在不同的机器上,同时进行业务处理。多线程解决了并发执行造成的死锁问题。并实现了多用户同时在线处理。4.3 系统的执行流程图以下是系统的执行流程如4-1所示图4-1 服务器端系统执行流程(一)用户选择业务vip业务普通业务取号退出查询统计弃号业务员登录普通服务vip用户id=1id

33、!=11号vip服务台2号普通服务台3号普通服务台.查询等待人数退出选择服务台号叫号处理图4-1 客户端系统执行流程(二)4.4 系统主界面的实现4.4.1 服务器主界面的实现用户在取号的时候必须先启动服务器,才能进行取号。服务器端主界面如图 4-2所示图4-2 服务器端主界面服务器端主界面采用菜单式风格,用户可以根据需求进行取号,查询,删除等功能。界面主要采用了Grid Layout,Flow Layout,BorderLayout等布局管理器来对界面进行布局的。4.4.2 客户端界面的实现客户端是为业务员设计的以下是客户端登录界面如图4-3所示图4-3 业务员登录界面客户端业务处理界面如图

34、4-4所示图4-4 业务处理界面客户端业务处理界面也采用了菜单式风格,采用了布局管理器对界面进行布局管理,其中在显示这一项里采用了JTable设计的设计界面如下图4-5所示图4-5 员工处理情况界面部分实现代码如下:界面信息的显示的实现,在这里调用了Dao层的方法获得需要的信息String colHeads = 服务台编号, 服务类型, 处理时间, 顾客票号 ;IWorkDao dao = (IWorkDao) BeanFactory.getPojo(workDao);List list = dao.loadAllWork();Object data = new Objectlist.size

35、()4;for (int i = 0; i list.size(); i+) datai0 = list.get(i).getWorkId();datai1 = list.get(i).getType();if(list.get(i).getType()=1)datai1=vip用户;elsedatai1=普通用户;datai2 = list.get(i).getProcessDate();datai3 = list.get(i).getNextId();JTable table = new JTable(data, colHeads);4.5 服务器端取号的实现在整个系统中取号是一个至关重要

36、的环节,也是设计它的目的所在。它的实现与其他模块紧密相连,它在Server端实现的,取号分为两个服务类型:vip业务和普通业务。首先在数据库里建立srt_tbl这张表,它用来存储自动生成的客户牌号。它里面设置两个字段,一个是nextId,一个是type类型。nextId是用来标识顾客的牌号的,而type则是用来表示顾客所要选取的服务类型,vip业务和普通业务。当点击其中的一个业务时它就会产生一个牌号,这个牌号是通过在dao层的一个方法实现的,dao层通过JDBC连接数据库实现数据的持久化。在取完号的同时调用Dao层的saveID()方法把这个信息保存在cuntomer_tbl表中。(1)vip

37、会员取号如图4-6图4-6 vip用户取号界面实现代码如下:1) 产生号票num = dao.nextID(1);Customer customer = new Customer(num, 1);2) 把顾客取到的号票存储到数据库中,调用findUprocess()方法查找没有被处理的号票并在界面上显示。dao.saveID(customer);dao.findCustomer(num, 1);List list = dao.findUprocess(1);int num1 = list.size() - 1;);(2) 普通会员取号如图4-7图4-7普通用户取号界面普通会员的取号的实现跟vi

38、p会员一样这里就不详细标注说明。4.6 客户端业务处理的实现这个模块的实现主要是在不同的业务员登录后选择了服务台以后才开始业务处理,业务处理的实现首先是server端调用socketThread这个多线程类,在这个类的run方法里调用了service层的unProcess(int type)方法从数据库中拿到nextId(牌号),client端从server端的输出流里获得牌号,进行处理。处理的时候会显示提示信息。因为各个单位所有的服务台是不确定的,所以在这里采用了多线程,可以按需求增加服务台数量。每增加一个服务台就启动一个线程,实现了多用户同时在线服务。由于采用了TCP协议,也实现了点对点通

39、信。在服务台界面设计时,把id=1设为vip服务台,id1的设为普通服务台。当取vip业务的牌号大于2时候,普通服务台优先处理vip业务,当处理的低于2的时候就处理普通业务,如没有需要处理的普通的业务就停止业务处理。以下是实现界面和实现代码:1)业务处理如图4-8所示(1)当vip人数大于2时图4-8 业务处理界面(一)(2)当vip人数小于2时图 4-8 业务处理界面(二)主要实现代码如下:1) 如果输入的服务台编号为1,服务台专门处理vip业务。并且客户端通过流输入把信息传到服务器端获得相应的信息再返回给客户端if (id = 1)pw.println(vip + id);ICustome

40、rDao dao = (ICustomerDao) BeanFactory.getPojo(customerDao);IWorkDao workdao = (IWorkDao) BeanFactory.getPojo(workDao);2) 从服务器端读入信息int num = Integer.parseInt(br.readLine();if (num 0) 3) 把业务员的信息保存到数据库中Work work = new Work(1, 1, num);workdao.saveWork(work);4) 查找未处理的vip业务人数并且在标签里显示List list = dao.findUp

41、rocess(1);int num1 = list.size();lbl.setText(正在为Vip业务 + num + 号顾客办理业务! + 有+ num1 + 人等待)5) id不等于1为普通用户同样通过流输入把信息传递给服务器端获得相应的信息if (id != 1) pw.println(normals + id);String temp = br.readLine();int index = 0;int num = 0;6) 判断是否为vip用户,如果是,在普通服务台进行优先业务处理。if (index = temp.indexOf(vip) != -1) ICustomerDao

42、dao = (ICustomerDao) BeanFactory.getPojo(customerDao);IWorkDao workdao = (IWorkDao) BeanFactory.getPojo(workDao);num = Integer.parseInt(temp.substring(index + 3);if (num 0) Work work = new Work(id, 1, num);workdao.saveWork(work);7) 查询还有多少vip号票没有处理List list = dao.findUprocess(1);int num1 = list.size(

43、); 8) 判断是否为普通会员else if (index = temp.indexOf(normals) !=-1) ICustomerDao dao = (ICustomerDao) BeanFactory.getPojo(customerDao);IWorkDao workdao = (IWorkDao) BeanFactory.getPojo(workDao);num = Integer.parseInt(temp.substring(index + 7);4.7Dao层的实现Dao层是整个系统的关键所在,它是实现与数据库交互的桥梁,在这层里,主要是对一些数据的增删改查,它使用了JDBC作为与数据库连接的桥梁,配合一些pojo类来完成与数据库的交互,使业务

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服