今天没敲代码,明天要考试,复习了一波,空余时间构思了一下客户端的上传文件的流程,我觉得大致应该是这样的:
- 登入服务器
- 进入要保存文件的目录
- 点击“上传文件”,
- 调用系统资源管理器,选择文件
- 点击“确定上传”
- 进行传输,等待传输完成
传输文件的两种方法:
- FTP 协议:新概念,需要学习
- TCP 字节流
今天开会阿峰讲了一下数据库和协议包,不定长包需要动态分配空间,所以空间的释放要特别注意,以免内存泄漏、
数据库的设计有一些想法,不过阿峰已经把数据库测试类等都设计好了,修改的工作量比较大,就先用吧,贴一下我对数据库的初步设计ER图
user(userName primary key, userPwd )
file(fileId primary , fileName, fileSize )
direction(directionID primary, direcitonName, dir_directionId, userName)
// dir_directionId父级目录
question(questionId primary, questionText)
contain(addTime , directionId, fileId , primary key ( directionId, fileId) )
// 一个文件夹包括多个文件,一个文件也可以属于多个文件夹
// addTime 文件添加进文件夹的时间
operation( operationType,userName, fileId, operationTime, primary key(userName, fileId, operationTime) )
// 一个用户有多个文件,一个文件也可以属于多个用户
// operationType 上传/下载
// 同一个user可以对同一个文件进行多次操作,所以把operationTime也加入主键
answer(answerText , userName, questionId, primary key (userName, questionId) )
// 一个用户有多个密保问题,一个密保问题不同用户有不同的答案