做邮件服务系统的一点心得

    最近在做《计网》的课设,要求完成一个邮件服务系统,我们组采用的是HTML+Servlet+Tomcat的方式设计管理端,项目还未完全完成。已经实现了管理端+SMTP+POP3。虽然我个人负责POP3部分的工作,但总的来说还是受益匪浅。总结一下迄今为止的收获:

1.数据库设计时,有三个点我认为非常有意思。      

一个是如何储存邮件。一般来说我们都会理所当然地认为mail表中存储user_to_id, user_from_id, date, subject, content等字段以便于信息的读存,但其实这样在存储群发邮件时会造成很大的冗余,因此,最后决定用mail表存储mail_id, content,再增加一个mail_of_user(mail_id, watched)来保存收发对应关系,以减少冗余。(但是没有考虑到用户查看收件信息,因此决定改动数据库……增加字段sender用来标记是收件/发件关系)

此外,也要注意,删除某封邮件最后一个对应关系时应当连同这封邮件在mail中的记录一起删除。

二是是否需要增加用户昵称字段。user(user_id, password, author, admin),大佬的观点是不需要昵称,因为昵称在邮件服务协议中并没有规定,即使数据库存储了用户昵称,也只能在我们的客户端显示,并不具有普适性(比如在别人的客户端登陆并不能显示昵称)。      

三是管理员的密码不应当与登录邮箱的密码相同。考虑到邮件服务协议在数据传输的时候并不能保证安全性,所以最好区分“密码”与“授权码” ,即管理员在登录管理界面与收发邮件的密码是不同的。


  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值