银行排号系统学士学位论文.docx

上传人:b****1 文档编号:1603394 上传时间:2023-05-01 格式:DOCX 页数:75 大小:329.15KB
下载 相关 举报
银行排号系统学士学位论文.docx_第1页
第1页 / 共75页
银行排号系统学士学位论文.docx_第2页
第2页 / 共75页
银行排号系统学士学位论文.docx_第3页
第3页 / 共75页
银行排号系统学士学位论文.docx_第4页
第4页 / 共75页
银行排号系统学士学位论文.docx_第5页
第5页 / 共75页
银行排号系统学士学位论文.docx_第6页
第6页 / 共75页
银行排号系统学士学位论文.docx_第7页
第7页 / 共75页
银行排号系统学士学位论文.docx_第8页
第8页 / 共75页
银行排号系统学士学位论文.docx_第9页
第9页 / 共75页
银行排号系统学士学位论文.docx_第10页
第10页 / 共75页
银行排号系统学士学位论文.docx_第11页
第11页 / 共75页
银行排号系统学士学位论文.docx_第12页
第12页 / 共75页
银行排号系统学士学位论文.docx_第13页
第13页 / 共75页
银行排号系统学士学位论文.docx_第14页
第14页 / 共75页
银行排号系统学士学位论文.docx_第15页
第15页 / 共75页
银行排号系统学士学位论文.docx_第16页
第16页 / 共75页
银行排号系统学士学位论文.docx_第17页
第17页 / 共75页
银行排号系统学士学位论文.docx_第18页
第18页 / 共75页
银行排号系统学士学位论文.docx_第19页
第19页 / 共75页
银行排号系统学士学位论文.docx_第20页
第20页 / 共75页
亲,该文档总共75页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

银行排号系统学士学位论文.docx

《银行排号系统学士学位论文.docx》由会员分享,可在线阅读,更多相关《银行排号系统学士学位论文.docx(75页珍藏版)》请在冰点文库上搜索。

银行排号系统学士学位论文.docx

银行排号系统学士学位论文

 

毕业设计(论文)

 

题目:

银行排号系统

 

学生姓名

学号201022030122

班级计算机102201H

所属院(系)华科学院计算机系

指导教师

2014年5月20日

银行排号系统

摘要

牌号系统是为解决一些服务业营业大厅排队问题而设计的,它能够有效地提高工作人员的工作效率,也能够使顾客合理的安排等待时间,让顾客感到服务的公平公正。

论文首先讨论了牌号系统的背景、意义、应用现状以及研究与开发现状。

本文在对C/S架构、Socket网络编程技术、Java线程编程等相关技术理论做了简单的论述。

结合工程项目,具体论述了牌号系统的需求分析、整体设计以及系统数据库的设计,其中包括业务流程图、系统用例图、功能结构图、数据流程图、以及系统数据库的E-R图的分析和描述。

其次,论文着重讨论了C/S架构的牌号系统的设计和实现。

在论文中详细地论述了牌号系统的数据库设计与系统实现的各个步骤,并对原型系统作了简要介绍。

最后,论文对主要完成的工作进行了总结,并提出了研究的不足之处以及对今后研究的展望。

关键词:

C/S架构,Java多线程,牌号系统,Socket网络编程,开发

 

Thebankappointmentsystem

schoolofcomputingcomputer102201HwangjieiqongDirector:

Guomiao

Abstract

GradesystemisdesignedtosolveproblemsofqueuinginHallofbussinessservices.Itcaneffectivelyimprovethestaff'sefficiency,andmakethecustomersreasonablyarrangethewaitingtime,thensupplyfairandjustserviceforthecustomers.Firstly,background,significance,developmentandapplicationofgradessystemwerediscussedinthispaper.TheC/Sstructure,Socketnetworkprogrammingtechnology,Java-threadprogramming,andotherrelatedtechnologieswerealsosimplydissertated.Therequirementsofthetrademarksystemanalysis,systemdesignanddatabasedesignwerewell-documented,whichincludedtheoperationalflowchart,thesystemusecaseplans,functionalstructure,dataflowchart,andtheERsystemdatabaseanalysisanddescriptionoftheplan.Secondly,thedesignandimplementationofC/Sstructurewasdiscussedinthispaper,whichmainlyconcernedthedesignofdatabasesystem,thevariousstepsoftheGradesystem,andtheintroductionofprototypesystem.Finally,themainconclusionwassummarizedinthispaper.Moreover,theinadequacyofthisstudywassuggestedaswellastheprospectsforthefutureresearch.

Keywords:

C/Sstructure,Javamulti-threaded,gradesystem,Socket

networkprogramming,development

目录

前言1

第一章系统分析2

1.1系统初步调查2

1.2系统可行性分析2

1.2.1经济可行性2

1.2.2操作可行性2

1.2.3技术可行性2

1.3系统开发环境概述3

1.3.1硬件环境3

1.3.2软件环境3

1.4系统需求分析3

1.4.1业务流程分析3

1.4.2系统体系结构设计4

1.4.3系统逻辑模型4

1.5系统需求定义5

1.5.1客户用例图5

1.5.2业务员用例图5

第二章系统总体设计6

2.1系统设计目的与任务6

2.2开发设计思想6

2.3系统总体设计框架7

2.4系统功能详细设计7

第三章数据库设计9

3.1数据库需求分析9

3.2数据库概念设计9

3.3数据库逻辑结构设计11

3.4系统安全性设计12

第四章系统的实现13

4.1系统的总体概述13

4.2系统相关技术简介13

4.2.1C/S的简介13

4.2.2Socket的简介14

4.2.3JAVA多线程技术14

4.3系统的执行流程图15

4.4系统主界面的实现16

4.4.1服务器主界面的实现16

4.4.2客户端界面的实现17

4.5服务器端取号的实现19

4.6客户端业务处理的实现20

4.7 Dao层的实现23

4.8配置模块的实现23

第五章原型系统的介绍25

5.1服务器端25

5.2客户端27

结论29

参考文献30

致谢31

附录32

前言

时间等于金钱,这句话是这个飞速发展时代的真实写照,随着科技的不断发展,人们越来越要求办事的效率,讨厌把宝贵的时间花在一些排队的事情上。

我国是一个人口众多的国家,各大银行,邮局,医院等营业大厅常常人满为患,排着长队等着办理业务,这种局面常常使人们怨声载道。

随着社会的发展,特别是信息技术的发展,计算机已经在社会的各个方面凸显出来。

原始呆板固化的排队等候方式转变为基于计算机管理与控制的舒适、休闲的等候方式。

由于原始的排队等候方式存在不方便、不安全等缺点,而基于计算机管理与控制的舒适、休闲的等候方式完全可以解决这些弊端,人们不仅可以自由安排等待时间,而且可以轻松的享受其他服务,这方式不仅提高了业务员的工作效率,也提高了其业务素质。

牌号系统在现今的服务行业还是个比较新鲜的名词,利用这种先进的牌号系统管理模式将网络技术、通信技术相结合,采用TCP/IP通信连接,使企业的服务机构通过网络与顾客通信,完成对顾客的管理。

牌号系统实现每个客户端可以迅速建立与服务器端的实时通信连接,并且操作互动的业务。

顾客不仅可以进行取号业务,还可以进行一些其它操作,业务员除了进行业务处理还可以对数据库进行一些增删改查等操作。

随着网络编程技术研究的不断深入和完善,国内外越来越多的企业己经开始使用牌号系统,中国建设银行,上海长海医院等地方已开始使用,并且取得了相当的业绩和成果。

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

第一章系统分析

1.1系统初步调查

社会生产力的发展与进步,积极推动了人类思想的革新与创造,从而一系列新生事物的诞生接踵而来。

但是新生事物的生存与延续取决于人类的检验,因而它的可行性至关重要。

万事求得发展的根本保障是物质基础,经济的飞速发展推动生活水平显著提高。

所以,生活质量的标准化、多样化使市场需求处于必不可少的地位,而市场规模也随之扩大,因此,经过详细的调查,目前在我国,虽然服务行业蓬勃地发展起来,但是基本上都还在使用排队方式办理业务。

在此方式下,不仅秩序混乱,还效率低下,顾客还怨声载道。

显然,随着服务行业的发展,这种形式已不再适合新型服务行业的要求,对行业的发展也有一定的限制,直接导致了工作人员的工作效率低下。

因此本文设计了这个功能实用的牌号系统,解决服务行业里混乱的场面。

1.2系统可行性分析

1.2.1经济可行性

该系统对操作环境没有太多要求,系统的开发不需要很强的经济支持,就其功能和给企事业单位带来的方便来说,是完全可行的。

1.2.2操作可行性

目前计算机已经普及到所有的单位及大部分家庭,不仅在企事业单位,即使足不出户也能通过网络对单位和人员进行统一管理。

本系统的使用者有三类人,第一是客户;第二是银行柜员;第三是银行管理人员,对于这三类人员使用本系统都是可行的。

本系统操作非常简单,不需要进行培训只需阅读说明书就可以进行操作。

1.2.3技术可行性

本系统采用Java语言编写,它是一种简单的,面向对象的编程语言,具有多线程,分布式,跨平台等特性。

它有自己的安全机制,并且移植性很好。

在数据库方面采用了Oracle10g,其灵活性,安全性和易用性为数据库编程提供了良好的条件。

在数据持久化层,选用了JDBC,开发者掌握这些技术就可以具备开发此系统的能力,另外,此系统对开发环境的要求,都是大部分Java程序员进行软件开发使用的开发环境,所以,技术方面也是可行的。

1.3系统开发环境概述

1.3.1硬件环境

本系统采用单机操作方式,基本配置如下;

机型:

DELLInspiron6000

处理器:

Intel(R)Pentium(R)M786MHz2.13GHz

硬盘空间:

80GB

内存:

512MB

显示器:

ATIX30

1.3.2软件环境

采用C/S架构,使用Eclipse运行环境

开发平台:

Eclipse+salories10

操作系统:

Linux

数据库服务器:

Oracle9i/10g

使用技术:

JavaGUI、JDBC、Socket、Xml

1.4系统需求分析

1.4.1业务流程分析

在调研过程中,已了解到所涉及的业务流程如图1.1所示

图1.1业务流程图

1.4.2系统体系结构设计

图1.2系统体系结构

1.4.3系统逻辑模型

 

图1.3系统逻辑模型

1.5系统需求定义

1.5.1客户用例图

图1.4客户用例图

1.5.2业务员用例图

图1.5业务员用例图

第二章系统总体设计

2.1系统设计目的与任务

系统设计阶段的主要目的是,将系统分析阶段所提出的、充分反映用户信息需求的系统逻辑方案转换成可以实施的、基于计算机和网络技术的物理方案。

这一阶段的主要任务是从信息系统的总体目标出发,根据系统分析阶段对系统的逻辑功能的需要,并考虑到经济、技术和运行环境等方面的条件,确定系统的整体结构和系统各组成部分的技术方案,合理选择计算机和通信的软件、硬件设备,提出系统的实施计划。

2.2开发设计思想

牌号系统从界面上看主要实现两个方面的功能:

(1)取号客户按键反馈给服务器,然后服务器从数据库获得一个号反馈给顾客,这就完成了取号的过程,在顾客取号的可视化界面上顾客可以查询当前取号总人数,也可查询到已处理的人数,在顾客想放弃当前的号票时也可以对号票进行删除,顾客还可以在可视化界面看到自己的取票信息和需要等待的人数。

(2)叫号业务员按键反馈给服务器,服务器拿到取号时存储在数据库中的数据,进行业务处理,在这个过程中业务员可以进行对顾客人数的查询,还可以对不需要进行处理的票号进行删除,也可已充当管理员的角色对数据库进行删除。

业务员还可以查看顾客的取票情况,以及票号的业务的处理情况。

牌号系统的特点:

(1)可操作性

界面简易,使用通用的菜单式风格,使用直观,操作简便。

(2)容量大

支持联网,不限制取号数量,可满足大型客流场所的使用。

(3)高性能

系统的所有对象都存放到数据库中,表示逻辑与业务逻辑相互分离,保证系统的处理能力。

(4)伸缩性

它能适应不同的应用环境,对于只实现基本功能的服务大厅,如银行系统,可以采用微机控制的牌号系统,无需单独配置系统电脑,即可实现自动排队叫号的功能。

(5)可靠性

能保证长时间的正常运行,同时系统有比较好的安全机制,提高了安全性能。

2.3系统总体设计框架

据以上章节所做需求分析对系统进行功能设计,见系统功能模块图如图2.1所示:

 

图2.1系统的总体功能模块图

2.4系统功能详细设计

该系统功能从服务器端和客户端角度来说可分以下两大模块,具体每一个模块又分为几个小模块:

(1)服务器端

1)取号功能:

打开服务器与终端进行通信。

由于把服务器设置到了用户的一端,所以在服务器端进行取号,然后把号存到数据库中。

2)统计功能:

数据访问层从数据库中查出所有取票人数和等待人数在服务器端界面显示。

3)删除功能:

删除当前取票顾客的牌号。

4)查询功能:

顾客可以从此处了解到所有顾客的取票情况及被处理状况。

5)通知功能:

从服务器端获得牌号,通过服务器端通知***用户到***工作台办理业务。

(2)客户端

同一时刻允许多个工作台办理业务。

用户通过在服务器端的通知功能知道去哪个工作台办理业务,工作台显示正在为哪个号码的用户办理业务。

1)登录功能:

业务员从此处登录,业务员的姓名,密码是事先录入数据库的。

2)叫号功能:

业务员点击处理按钮触发事件发送信息给服务器,服务器从数据库拿到号票,返回给业务员进行业务处理。

3)统计功能:

数据访问层从数据库查询总取票人数和查询未处理人数在业务端显示。

4)删除功能:

业务员可以删除数据库中所有的记录,也可以选择删除某条记录。

5)查询功能:

业务员可以查询所有顾客的取票情况及业务员对号票的处理情况,这块主要为了能够及时掌握顾客取票信息及业务员处理情况。

 

第三章数据库设计

3.1数据库需求分析

通过对牌号系统内容和数据流程分析,设计的数据项和数据结构如下:

(1)顾客信息。

包括的数据项有顾客ID,顾客牌号、取号时间、服务类型、状态标志等。

(2)业务端信息。

包括的数据项有业务ID、处理时间、服务台编号、属于那种服务类型,服务的顾客票号。

(3)业务员信息。

包括的数据项有业务员姓名、业务员密码。

(4)自动出号信息。

包括的数据项有ID、服务类型。

有了上面的数据结构、数据项和数据流程,就可以进行下面的数据库设计。

3.2数据库概念设计

这一设计阶段是在需求分析的基础上,设计出能够满足用户需求的各种实体,以及它们之间的关系,为后面的逻辑结构设计打下基础。

根据上面的设计规划出的实体有顾客信息实体、业务端信息实体、业务员信息实体、自动出号信息实体。

各个实体的E-R图及其关系描述如下:

图3.1业务端信息实体E-R图

 

图3.2业务员信息实体E-R图

图3.3顾客信息实体E-R图

图3.4自动出号信息实体E-R图

实体之间关系E-R图:

图3.5实体之间关系E-R图

3.3数据库逻辑结构设计

在上面的实体以及实体之间关系的基础上,形成各个表格之间的关系。

牌号系统数据库中的各个表的设计结果如下面的几个表格所示,每个表格表示数据库中的一个表。

(1)顾客信息表customer_tbl

表customer_tbl用来保存顾客取票信息,结构如表3.1所示。

表3.1customer_tbl的结构

字段名

字段类型

中文描述

备注

非空

主键

Id

NUMBER

唯一标识

nextId

NUMBER

顾客牌号

Unique

takeDate

Date

取票日期

type

NUMBER

服务类型

1:

vip2:

普通

flag

NUMBER

处理标记

Unique

(2)业务端信息表work_tbl

表work_tbl用来保存业务端信息,结构如表3.2所示。

表3.2work_tbl的结构

字段名

字段类型

中文描述

备注

非空

主键

Id

NUMBER

唯一标识

processDate

Date

处理日期

workId

NUMBER

服务台编号

type

NUMBER

服务类型

1:

vip2:

普通

nextId

NUMBER

顾客牌号

Unique

(3)业务员信息表workmen_tbl

表workmen_tbl用来表示业务员信息,结构如表3.3所示。

表3.3workmen_tbl的结构

字段名

字段类型

中文描述

备注

非空

主键

Id

NUMBER

唯一标识

name

varchar2(20)

用户名

password

varchar2(20)

密码

(4)自动出号信息srt_tbl

表srt_tbl用来产生唯一的号票信息,表结构如表3.4所示

表3.4srt_tbl的结构

字段名

字段类型

中文描述

备注

非空

主键

nextId

NUMBER(20)

顾客牌号

tyep

NUMBER(7)

服务类型

Unique

3.4系统安全性设计

(1)数据因素:

系统数据库中包含多个表信息,所以在系统与数据库的连接上,直接封装到代码中,由于java的安全机制比较好,所以数据信息在存储和传递过程中不可见。

(2)硬件及物理因素:

系统硬件及安全环境安全可靠,包括机房设施、计算机主体、存储系统、数据通信设备设施等方面是安全的。

(3)存储安全:

通过oracle的数据库安全设置,连接数据库需要用户名和密码,保证了数据库的安全性[14]。

 

第四章系统的实现

4.1系统的总体概述

牌号系统采用javaGUI设计的界面,它通过scoket实现点对点的通信,在实现过程中,客户取号的一端设置成了server端,业务员处理一端设置成了client端,所以必须先启动server端,才能启动client端。

在整个系统中server端实现了顾客的取号功能和一些查询删除功能,client端实现了业务员登录和叫号处理以及一些查询删除功能。

4.2系统相关技术简介

4.2.1C/S的简介

传统的应用体系结构模式主要有两种:

C/S(Client/Server)结构模式B/S(Browser/Server)结构模式。

C/S(Client/Server)结构,即大家熟知的客户机和服务器结构。

它是软件系统体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到Client端和Server端来实现,降低了系统的通讯开销。

目前大多数应用软件系统都是C/S形式的两层结构,由于现在的软件应用系统正在向分布式的Web应用发展,Web和Client/Server应用都可以进行同样的业务处理,应用不同的模块共享逻辑组件;因此,内部的和外部的用户都可以访问新的和现有的应用系统,通过现有应用系统中的逻辑可以扩展出新的应用系统。

这也就是目前应用系统的发展方向

C/S体系结构的优点:

(1)应用服务器运行数据负荷较轻。

最简单的C/S体系结构的数据库应用由两部分组成,即客户应用程序和数据库服务器程序。

二者可分别称为前台程序与后台程序。

运行数据库服务器程序的机器,也称为应用服务器。

一旦服务器程序被启动,就随时等待响应客户程序发来的请求;客户应用程序运行在用户自己的电脑上,对应于数据库服务器,可称为客户电脑,当需要对数据库中的数据进行任何操作时,客户程序就自动地寻找服务器程序,并向其发出请求,服务器程序根据预定的规则作出应答,送回结果,应用服务器运行数据负荷较轻。

(2)数据的储存管理功能较为透明。

在数据库应用中,数据的储存管理功能,是由服务器程序和客户应用程序分别独立进行的,前台应用可以违反的规则,并且通常把那些不同的(不管是已知还是未知的)运行数据,在服务器程序中不集中实现,例如访问者的权限,编号可以重复、必须有客户才能建立定单这样的规则。

所有这些,对于工作在前台程序上的最终用户,是“透明”的,他们无须过问(通常也无法干涉)背后的过程,就可以完成自己的一切工作。

在客户服务器架构的应用中,前台程序不是非常“瘦小”,麻烦的事情都交给了服务器和网络[18]。

4.2.2Socket的简介

Socket是一种软件形式的抽象,用于表达两台机器间一个连接的“终端”。

在java中创建一个Socket,用它建立与其他机器的连接。

从Socket得到的结果是一个InputStream以及OutputStream或Reader和Writer,以便将连接作为一个I/O流对象对待。

这有两个基于数据流的套接字类:

一个是ServerSocket,服务器用它“侦听”进入的连接;另一个是Socket,客户用他初始化一次连接。

一旦客户(程序)申请建立一个套接字连接,ServerSocket就会返回(通过accept()方法)一个对应的服务器端套接字,以便进行直接通信。

可以利用getInputStream()以及getOutputStream()每个套接字产生对应的InputStream和OutputStream对象。

这些数据流必须封装到缓冲区内。

在牌号系统中采用了TCP/IP协议,这样实现了点对点通信等功能[3]。

4.2.3JAVA多线程技术

(1)多线程[17]

多线程编程技术是Java语言的重要特点。

多线程编程的含义是将程序任务分成几个并行的子任务。

特别是在网络编程中,你会发现很多功能是可以并发执行的。

比如网络传输速度较慢、用户输入速度较慢,你可以用两个独立的线程去完成这两个功能,而不影响正常的显示或其它功能。

多线程是与单线程比较而言的,普通的Windows采用单线程程序结构,其工作原理是:

主程序有一个消息循环,不断从消息队列中读入消息来决定下一步所要干的事情,一般是针对一个函数,只有等这个函数执行完之后,主程序才能接收另外的消息来执行。

比如子函数功能是在读一个网络数据,或读一个文件。

只有等读完这个数据或文件才能接收下一个消息。

在执行这个子函数过程中你什么也不能干。

但往往读网络数据和等待用户输入有很多时间处于等待状态,多线程利用这个特点将任务分成多个并发任务后,就可以解决这个问题。

(2)线程创建的方法[16]

1)从一个自定

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2