- 将dict.txt的数据导入到数据库中保存
- 登录注册功能,不能重复登录,重复注册
- 单词查询功能
- 历史记录功能,存储单词,意思,以及查询时间
- 基于TCP,支持多客户端连接
- 采用数据库保存用户信息与历史记录
- 按下ctrl+c退出客户端后,注销该客户端的登录信息
- 用户注册:发送数据第一位为0,后跟用户名**
usr
或passwd
字符串数据,以0**结尾。
如果注册成功返回1,注册失败返回0。
-
用户登录:发送数据第一位为1,后跟用户名**
usrname
和passwd
字符串数据,中间以数字0分割,最后以0**结尾。 -
用户上传单词:发送数据格式为2、单词数据、0。
-
服务器发送单词和翻译:数据格式为单词、0、翻译、0,如果单词不存在,则发送0。
-
用户注册do_register:向服务先发送账号数据,如果没有重复账号收到1,然后输入密码,如果密码不合法要重新输入。
如遇重复账号收到0,需要输入新的账号。
-
用户登录do_login:向服务器发送账号密码数据,如果其中有任何一个数据出错则收到0。
-
用户搜索单词do_translate:向服务发送单词数据,搜索成功返回单词和意思,打印单词和意思,失败则返回0。
-
用户查询历史do_history:向服务发送请求,如果没有历史记录收到0并打印提示,否则打印所有历史记录。
- 处理用户注册do_register:接受用户的username数据,使用sql语句判断是否有重名,没有重名继续接受密码数据,然后在、存入数据库中;如果有重名发送0然后重新等待username数据。
- 处理用户登录do_login:同时接受账号和密码数据,使用sql语句查找是否有相同数据,有发送1,没有发送0。
- 处理用户单词do_translate:接受用户的完整单词数据,在数据库中查找,如果查找成功发送单词和意思,如果有多个意思先把翻译拼接在一起然后发送;如果查找失败发送0。然后把搜索历史插入数据库中。
- 查询用户历史do_history:根据用户的账号查询历史,将所有历史数据拼接在一起发送;没有发送0。