设为首页 加入收藏

TOP

使用C++语言实现银行管理系统基础功能
2018-01-22 17:24:31 】 浏览:262
Tags:使用 语言 实现 银行 管理系统 基础 功能

TCP C/S架构ABC模拟银行系统

一.功能说明

1.银行职工(worker)的注册,登录,退出

2.客户(client)的开户,取款,存款,查询余额,退出。

二.功能实现

初步阶段,在这个系统中存在着两个对象,第一个是银行职工,第二个是客户,并且还要注意发送的结构体与返回的结构体的内容,所以每个对象有两个结构体,也就是说每个功能的实现要用到4个结构体。但是不是绝对的,比如客户取款功能就只用到一个结构体。

随之,也需要在数据库创建同样类型的两个表,worker和client,存放的元素要与所需结构体一样

1.网络连接,客户端winsock初始化、连接部分;套接字socket,连接connect;

服务器winsock初始化、连接部分;套接字socket,绑定bind,监听listen,接收accept;

2.银行职工的注册:客户端获取姓名,密码。

判断条件:在获取密码时候,如果确认密码与第一次密码不同,需要重新输入。

接着服务器接收到职工信息后,插入数据库worker表中;再返回操作结果给客户端。

3.银行职工的登录:客户端获取姓名,密码。

服务器收到职工信息后,select数据库中与之姓名一样的一行,存在容器list中(迭代器it遍历)判断姓名和密码是否一样,如果都相同,则在服务器端显示登录成功。

4.客户的开户:和职工的注册类似,不同的是将客户数据插入在了表client中;

5.存款:a.客户端获取account_id和money(不能小于0),发送给服务器。

b.服务器接收包,通过函数select从数据库中找到相应的人,并把所需信息存入list中,然后通过迭代器it遍历,判断信息是否一致,然后写入信息到返回的结构体中,返回给客户端。

6.取款:和存款原理相似,不同的是要判断密码是否一致。并且还要注意取款后的余额不能小于0;

7.余额查询:在存款和取款中已经处理,每次存款或取款后把余额在客户端显示出来。

8.客户退出:在客户端直接用break跳出循环就好

9.柜员退出:需要客户端发送标志位,在服务器端判断是柜员退出功能,但是不在功能里写任何东西。因为在判断完后服务器端已经进行了closesocket(accpetSocket);关闭套接字操作和资源删除操作。

三.一些细节处理

1.时间日期的获取:用函数now()获取,并且数据类型不同获取的东西不同,本次使用的类型为datetime.( 类型:date、time、datetime、timestamp、year)

2.数据库语言的正确使用

3.信息先进行接收,然后进行处理。(事件处理顺序)

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇VC++获取本机网卡及网络流量的方法 下一篇在c++在string常用函数用法详情

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目