一,需求分析:这个项目是一个银行叫号机的系统,它分成三个不同的部分。
1,客户端(服务器) 这个部分是用于给到客户(叫号人员)操作的地方,它分为:个人业务,对公业务,VIP服务三种不同类型,通过点击的方式获取到自己想要办理的业务。
2,叫号窗口,叫号窗口分为两个部分,一个是给用户显示的前台显示屏以及给工作人员操作的叫号后台,他能通过选的服务类型来判断工作人员服务哪种类型的人。
3,总汇表,这个表格能显示当天每个窗口的服务人数来断定他们的工作情况,从而可以通过这种方式给到工资加成。
二,设计理念:为了方便现在普通银行排队问题,其实可以用到多处。
三,项目介绍:
1,首先连接用到是TCP的网络连接传输,通过网络编程的Socket得到其中传输和传入到的,到这里就必须要用到线程了,因为接受与发送都可以同时发生,所以三个端口都需要两个线程来进行发送和接受。
2,接受发送后,存储也是一个难点,我们要把所以的数据放在服务端中其中包括,每一个窗口的输出,每一种业务的人数与号码这些所有的相同的数据 我都是用List集合以及Queue队列来存储,因为叫号是按顺序叫,所以用到Queue是非常方便的。
3,传输,通过IO流传输不同的数据来判断行动,一般我会用到以特殊密码开头加上各自标识,解密方通过if(str.startsWith())的方式来判断做什么,从而得到传输过程。
四,业务流程
1, 首先打开服务器(客户)然