Skip to content

93-code/online_dictionary

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

A simple online_dictionary

Protocol:

/*
 * 实现目标:
 * 交互协议
 *
 * 实现步骤:
 *
 * 1 制定协议                                                       
 *   客户端-->服务端                                                
 *   +------------+------------+-----------------------------+------+
 *   | 包体长(4B) | 功能号(2B) |             包体            | 功能 |
 *   +------------+------------+--------------+--------------+------+
 *   |   "0064"   |    "01"    | 用户名(32)   | 密码(32)     | 注册 |
 *   +------------+------------+--------------+--------------+------+
 *   |   "0064"   |    "02"    | 用户名(32)   | 密码(32)     | 登陆 |
 *   +------------+------------+--------------+--------------+------|
 *   |            |    "03"    |            单词             | 查询 |
 *   +------------+------------+-----------------------------+------|
 *   |   "0000"   |    "04"    |                             | 退出 |
 *   +------------+------------+-----------------------------+------|
 *   |   "0000"   |    "05"    |                             | 心跳 |
 *   +------------+------------+-----------------------------+------|
 *                                                                  |
 *   服务端-->客户端                                                |
 *   +------------+------------+-----------------------------+------|
 *   | 包体长(4B) | 功能号(2B) |             包体            | 功能 |
 *   +------------+------------+-----------------------------+------|
 *   |   "0002"   |    "01"    |             结果            | 注册 |
 *   +------------+------------+-----------------------------+------|
 *   |   "0002"   |    "02"    |             结果            | 登陆 |
 *   +------------+------------+-------+---------------------+------|
 *   |            |    "03"    |  结果 |       解释          | 查询 |
 *   +------------+------------+-------+---------------------+------|
 *   |   "0002"   |    "04"    |            结果             | 退出 |
 *   +------------+------------+-----------------------------+------|
 *   |   "0000"   |    "05"    |                             | 心跳 |
 *   +------------+------------+-----------------------------+------|
 *                                                                  
 *   (1) 结果(2B)                                                   
 *       "00"-成功 "01"-已经注册 "02"-数据库异常 "03"-用户异常 "04"-单词不存在
 * 
 * 2. 实现协议
 *    2.1 包头打包/解包
 *    2.2 客户端-->服务端协议的打包/解包
 *        注册/登陆/查询/退出
 *    2.3 服务端-->客户端协议的打包/解包
 *        注册/登陆/查询/退出
 * 
 */

Sqlit3:

 /*
 * 实现目标:
 * 数据库操作
 *
 * 实现步骤
 * 1. 获取用户信息
 * 2. 插入用户
 * 3. 找到单词,获得解释
 */

Server:

 /*
 * 实现目标:
 * 在线电子词典,具体:
 * 1. 注册
 * 2. 登录
 * 3. 查询
 * 4. 退出
 * 5. 网络异常(扩展)
 *
 * 实现步骤:
 * 1. 网络
 *    1.1 创建套接字
 *    1.2 绑定(本机)IP地址和(本软件)端口号
 *    1.3 设置为监听模式
 *    1.4 接受客户端连接
 *    1.5 支持为多客户端服务(多进程)
 *    1.6 指定长度的数据收发     
 *
 * 2. 数据库
 *    sqlite.c sqlite.h
 *
 * 3. 协议
 *    prot.c prot.h
 *
 * 4. 业务处理
 *    4.1 协议接收框架
 *    4.2 注册
 *    4.3 登陆
 *    4.4 查单词
 *    4.5 退出
 *    4.6 心跳
 *
 */

Client:

 /*
 * 实现目标:
 * 在线电子词典,具体:
 * 1. 注册
 * 2. 登录
 * 3. 查询
 * 4. 退出
 * 5. 网络异常(扩展)
 *
 * 实现步骤:
 * 1. 网络
 *    1.1 创建套接字
 *    1.2 连接服务器 
 *    1.3 指定长度的数据收发
 *
 * 2. 用户输入
 *    2.1 显示菜单
 *    2.2 注册输入
 *    2.3 登陆输入
 *    2.4 查单词输入
 *
 * 3. 协议
 *    prot.c prot.h
 *
 * 4. 业务处理
 *    4.1 接收数据包
 *    4.2 注册
 *    4.3 登陆
 *    4.4 查单词
 *    4.5 退出
 *    4.6 心跳
 */

Loadwords

 /*
  * 将单词表导入dict.db 数据库
  */

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published