这是学习C++以来做的一个稍微复杂一点的项目,仅供大家的学习和参考。下面是对这个项目的一些介绍和实现。
首先介绍一下这个项目所实现的功能:
1)职工注册和登录
2)开户
3)销户
4)存钱
5)取钱
6)转账
7)查询明细
8)查询账单
9)修改密码
10)退出登陆
-
具体讲讲每个功能的实现。
-
注册和登录:是最基本的数据库的匹配和插入问题,这里就简单的跳过。在实现的过程中,注册时的密码应该做加密处理,常用的加密方法有MD5加密和AES算法,具体的实现网上有,当然由于时间的问题,这个部分我并没有吧密码加密,还有就是对加密过程做一个小小的疑问,就是加密实在客户端还是在服务器端,很多人觉得一定是在服务器端对数据进行加密处理后,再存进数据库即可,但如果有人直接在传输过程中截取了客户端的相关信息,可能造成数据安全,当然,TCP的可靠传输,可能子很大一方面避免了这样的问题。
-
开户,开户我包括的信息主要有身份证号,姓名,开户银行与职工所在银行绑定(从职工表读取),密码,然后系统给其分配一个6位数的职工账号,这里以时间为轴,每个时间段分配的账号是不一样的,避免发生有同样的账号,最后将这些信息存入client表中,作为客户表。
-
销户:删除该客户的信息,以及所有的交易记录。
-
存钱、取钱:所有关于钱的操作,刚开始都需要输入该账户的银行卡号和密码,然后进行存钱和取钱的操作,存钱时,需要读取该用户在上次取完钱的余额,存钱和取钱之后最后都需要在这个最后的余额上进行加或减操作。这里有一个做的还不足的点就是我没有按天计算该用户的利息,这一点等以后在项目的完成上在进行改正。
-
转账:首先要确认你做转账的用户是否存在,如果不存在,则提示你无法进行转账操作,第二,转账需要确认自己的银行卡中的钱是否大于等于你的转账金额,所以在最开始的时候,需要先去读取自己银行卡中的余额,判断之后才能转账成功,否则转账失败。
-
修改密码,简单,这里不说了。
-
查询账单:输入银行卡号和密码,正确之后,从交易表中读取这个人的交易记录,交易时间,存钱取钱的相关信息,然后发送给客户端就可以了。
-
退出登录,从数据库中更新该职工的登录状态,然后关闭相关套接字,客户端也关闭套接字,退出登录就可。
PS:相关源代码陆续公布
============================================分割线============================================================
源代码链接点击打开链接