今天将为大家分析一个电子邮件客户端软件(随着计算机网络的高速发展,人与人之间信息传输量越来越大,传输时间也越来越短。在这计算机技术和Internet广泛普及的时代,电子邮件扮演了一个非常重要的角色。通过电子邮件,人们可以方便的进行文字、图片、视频、声音、数据文件等的传递。而电子邮件系统客户端(MailBox)是一款类似于微软OutLook Express和国产FoxMail的电子邮件客户端软件,它的设计与实现遵循简单邮件传输协议SMTP和邮局协议POP3。本设计的目的主要在于实现用户对众多邮箱的统一管理,提高邮件收发速度,实现邮箱多账户管理,邮件分析析和管理,联系人管理,实时收信等功能。),该项目使用框架为SSM(MYECLIPSE),选用开发工具为MYECLIPSE。电子邮件客户端软件为一个 后台项目。
为了完成该系统,我们首先需要对该系统进行需求分析。一个电子邮件客户端软件应包含用户角色有管理员、用户。为了能让用户顺利登陆系统完成相关操作,需要为每种登陆角色设置账户和密码字段。
总结得出该系统所有数据为:管理员(admin)、用户(yonghu)、邮箱管理(youxiangguanli)、联系人(lianxiren)
管理员表
字段名 | 类型 | 属性 | 描述
id | INT(11) | PRIMARY KEY | 管理员id
username | VARCHAR(255) | | 账号
password | VARCHAR(255) | | 密码
用户表
字段名 | 类型 | 属性 | 描述
id | INT(11) | PRIMARY KEY | 用户id
xingming | VARCHAR(255) | | 姓名
nianling | VARCHAR(255) | | 年龄
xingbie | VARCHAR(255) | | 性别
quanxian | VARCHAR(255) | | 权限
username | VARCHAR(255) | | 账号
password | VARCHAR(255) | | 密码
邮箱管理表
字段名 | 类型 | 属性 | 描述
id | INT(11) | PRIMARY KEY | 邮箱管理id
zhonglei | VARCHAR(255) | | 种类
leixing | VARCHAR(255) | | 类型
guige | VARCHAR(255) | | 规格
shijian | VARCHAR(255) | | 时间
联系人表
字段名 | 类型 | 属性 | 描述
id | INT(11) | PRIMARY KEY | 联系人id
xingming | VARCHAR(255) | | 姓名
xingbie | VARCHAR(255) | | 性别
nianling | VARCHAR(255) | | 年龄
lianxifangshi | VARCHAR(255) | | 联系方式
SET FOREIGN_KEY_CHECKS=0;
-- ----------------------------
-- ----------------------------
-- Table structure for ggdianziyoujiankhdrj
-- ----------------------------
DROP TABLE IF EXISTS `t_admin`;
CREATE TABLE `t_admin` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '管理员id',`username` VARCHAR(255) DEFAULT NULL COMMENT '账号',`password` VARCHAR(255) DEFAULT NULL COMMENT '密码',PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='管理员';
-- ----------------------------
DROP TABLE IF EXISTS `t_yonghu`;
CREATE TABLE `t_yonghu` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '用户id',`xingming` VARCHAR(255) DEFAULT NULL COMMENT '姓名',`nianling` VARCHAR(255) DEFAULT NULL COMMENT '年龄',`xingbie` VARCHAR(255) DEFAULT NULL COMMENT '性别',`quanxian` VARCHAR(255) DEFAULT NULL COMMENT '权限',`username` VARCHAR(255) DEFAULT NULL COMMENT '账号',`password` VARCHAR(255) DEFAULT NULL COMMENT '密码',PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='用户';
-- ----------------------------
DROP TABLE IF EXISTS `t_youxiangguanli`;
CREATE TABLE `t_youxiangguanli` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '邮箱管理id',`zhonglei` VARCHAR(255) DEFAULT NULL COMMENT '种类',`leixing` VARCHAR(255) DEFAULT NULL COMMENT '类型',`guige` VARCHAR(255) DEFAULT NULL COMMENT '规格',`shijian` VARCHAR(255) DEFAULT NULL COMMENT '时间',PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='邮箱管理';
-- ----------------------------
DROP TABLE IF EXISTS `t_lianxiren`;
CREATE TABLE `t_lianxiren` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '联系人id',`xingming` VARCHAR(255) DEFAULT NULL COMMENT '姓名',`xingbie` VARCHAR(255) DEFAULT NULL COMMENT '性别',`nianling` VARCHAR(255) DEFAULT NULL COMMENT '年龄',`lianxifangshi` VARCHAR(255) DEFAULT NULL COMMENT '联系方式',PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='联系人';
添加邮箱管理模块:
在youxiangguanliController中定义tianjiayouxiangguanliact接收页面传入的邮箱管理参数,定义为youxiangguanli。其中youxiangguanli包含字段:种类,类型,规格,时间,使用tianjiayouxiangguanliact将该邮箱管理对象存入数据库中,在youxiangguanliMapper中定义了insert方法,匹配数据库中的insert into youxiangguanli语句实现将邮箱管理数据存入数据库的操作。该部分核心代码如下:
通过youxiangguanlidao的insert方法将页面传输的邮箱管理添加到数据库中 youxiangguanlidao.insert(youxiangguanli);
将添加邮箱管理成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "添加邮箱管理成功");
返回邮箱管理管理界面
return "forward:/tianjiayouxiangguanli.action";
查询邮箱管理模块:
邮箱管理的查询模块实现方式为,在页面中发起youxiangguanliguanli.action请求。通过该请求,响应服务器youxiangguanliController类中的youxiangguanliguanli,在该方法中通过selectByexample进行数据的查询操作。将所有的邮箱管理信息查询后,保存到request中的youxiangguanliall中,在页面中进行展示,返回youxiangguanliguanli.jsp,该部分核心代码如下所示:
生成邮箱管理样例类,通过example定义查询条件 YouxiangguanliExample example = new YouxiangguanliExample();
通过youxiangguanlidao的selectByExample方法查询出所有的邮箱管理信息 List youxiangguanliall = youxiangguanlidao.selectByExample(example);
将邮箱管理信息,保存到request中,在页面通过foreach方法进行展示 request.setAttribute("youxiangguanliall", youxiangguanliall);
返回邮箱管理管理界面
return "forward:/youxiangguanliguanli.action";
修改邮箱管理模块:
点击修改按钮,可以跳转到邮箱管理修改页面。在邮箱管理修改页面中,将初始化该邮箱管理的所有信息,并将信息一一对应填充到对应编辑栏中。编辑完邮箱管理信息后,页面通过post方法将数据封装为一个邮箱管理实体,传入到youxiangguanliController中。在xiugaiyouxiangguanli中进行接收,接收完毕后,调用youxiangguanliMapper中的updateByPrimaryKeySelective方法进行修改。该部分代码如下:
通过youxiangguanlidao的修改方法根据id修改对应的邮箱管理 youxiangguanlidao.updateByPrimaryKeySelective(youxiangguanli);
将修改邮箱管理成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "修改邮箱管理信息成功");
返回邮箱管理管理界面
return "forward:/youxiangguanliguanli.action";
删除邮箱管理模块:
在管理页面中,点击删除。页面将通过a标签的href属性,使用get方法将该邮箱管理
的id上传到服务器中,在服务器中通过youxiangguanliController类中的shanchuyouxiangguanli进行接收,之后调用youxiangguanliMapper中的deleteByPrimaryKey方法根据ID进行删除。将删除信息保存到request的message中,在页面给出用户删除成功的提示信息,该部分核心代码如下:
通过youxiangguanlidao的删除方法根据id删除对应的邮箱管理 youxiangguanlidao.deleteByPrimaryKey(id);
将删除邮箱管理成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "删除邮箱管理成功");
返回邮箱管理管理界面
return "forward:/youxiangguanliguanli.action";
如需源码,请留下邮箱或联系站长