今天记录的项目是邮件收发管理系统,这个项目是这么回事:电子邮件管理包括驻留在大型机,小型机和PC局域网上的各中转局,它需要将不同系统同网官网桥及交换设备连接起来。电子邮件管理包括对电子邮件通讯簿、文件夹的管理,以及对用户所接收的邮件进行过滤,以保证邮件及计算机系统的安全性。电子邮件管理需要有管理员负责目录管理,进行各种技术综合,如扫描,传真,语音及视像邮件等。因此要求电子邮件管理员必须熟悉电子邮件的各种技术,精通互联网标准和协议。。
做这个项目的时候,我们需要用到SSM(MYECLIPSE)框架,开发工具选用最拿手的MYECLIPSE。
邮件收发管理系统项目是一个 后台项目。
开发系统时,需求分析是必不可少的一个环节。邮件收发管理系统拥有的登录角色包括了管理员、用户。
每个账号设置身份、账号、密码是必不可少的,管理员、用户中都包含这些登录角色该有的字段。

总结得出该系统所有数据为:管理员(admin)、用户(yonghu)、收件(shoujian)、发件(fajian)

管理员表

字段名 | 类型 | 属性 | 描述
id | INT(11) | PRIMARY KEY | 管理员id
username | VARCHAR(255) | | 账号
password | VARCHAR(255) | | 密码

用户表

字段名 | 类型 | 属性 | 描述
id | INT(11) | PRIMARY KEY | 用户id
xingming | VARCHAR(255) | | 姓名
xingbie | VARCHAR(255) | | 性别
quanxian | VARCHAR(255) | | 权限
username | VARCHAR(255) | | 账号
password | VARCHAR(255) | | 密码

收件表

字段名 | 类型 | 属性 | 描述
id | INT(11) | PRIMARY KEY | 收件id
shijian | VARCHAR(255) | | 时间
zhonglei | VARCHAR(255) | | 种类
leixng | VARCHAR(255) | | 类型
guige | VARCHAR(255) | | 规格
neirong | VARCHAR(255) | | 内容
fajianren | VARCHAR(255) | | 发件人

发件表

字段名 | 类型 | 属性 | 描述
id | INT(11) | PRIMARY KEY | 发件id
shijian | VARCHAR(255) | | 时间
zhonglei | VARCHAR(255) | | 种类
leixing | VARCHAR(255) | | 类型
neirong | VARCHAR(255) | | 内容
shoujianren | VARCHAR(255) | | 收件人
SET FOREIGN_KEY_CHECKS=0;

-- ----------------------------

-- ----------------------------

-- Table structure for ggyoujianshoufaglxt

-- ----------------------------

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 '姓名',`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_shoujian`;

CREATE TABLE `t_shoujian` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '收件id',`shijian` VARCHAR(255) DEFAULT NULL COMMENT '时间',`zhonglei` VARCHAR(255) DEFAULT NULL COMMENT '种类',`leixng` VARCHAR(255) DEFAULT NULL COMMENT '类型',`guige` VARCHAR(255) DEFAULT NULL COMMENT '规格',`neirong` VARCHAR(255) DEFAULT NULL COMMENT '内容',`fajianren` VARCHAR(255) DEFAULT NULL COMMENT '发件人',PRIMARY KEY (`id`)

) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='收件';

-- ----------------------------

DROP TABLE IF EXISTS `t_fajian`;

CREATE TABLE `t_fajian` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '发件id',`shijian` VARCHAR(255) DEFAULT NULL COMMENT '时间',`zhonglei` VARCHAR(255) DEFAULT NULL COMMENT '种类',`leixing` VARCHAR(255) DEFAULT NULL COMMENT '类型',`neirong` VARCHAR(255) DEFAULT NULL COMMENT '内容',`shoujianren` VARCHAR(255) DEFAULT NULL COMMENT '收件人',PRIMARY KEY (`id`)

) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='发件';

添加收件模块:

通过添加收件模块,可以完成收件的添加操作。在页面中跳转到添加收件页面,输入收件的所有信息,点击添加操作,可以将收件数据以post提交到shoujianController中。收件所包含的字段信息包括时间,种类,类型,规格,内容,发件人。在shoujianController中通过定义shoujian接受所有的收件参数。使用shoujiandao的insert方法将shoujian实体插入到数据库中。完成数据的添加操作,在shoujianMapper中匹配对应的shoujianxml完成插入sql语句的执行操作。该部分核心代码如下:

通过shoujiandao的insert方法将页面传输的收件添加到数据库中 shoujiandao.insert(shoujian);

将添加收件成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "添加收件成功");

返回收件管理界面

return "forward:/tianjiashoujian.action";

查询收件模块:

在后台shoujianguanli方法中,通过selectByexample方法获取所有的数据信息。将其保存到request中,在页面中通过foreach方法

进行循环展示到table中。完成收件查询操作。具体代码如下:

生成收件样例类,通过example定义查询条件 ShoujianExample example = new ShoujianExample();

通过shoujiandao的selectByExample方法查询出所有的收件信息 List shoujianall = shoujiandao.selectByExample(example);

将收件信息,保存到request中,在页面通过foreach方法进行展示 request.setAttribute("shoujianall", shoujianall);

返回收件管理界面

return "forward:/shoujianguanli.action";

修改收件模块:

在页面填写完修改信息后,点击修改按钮,将数据提交到xiugaishoujian中,封装为一个收件

,使用update方法修改该收件信息,将数据同步到数据库,完成修改操作。

定义修改成功提示信息,修改收件成功,并保存到request中具体代码如下:

通过shoujiandao的修改方法根据id修改对应的收件 shoujiandao.updateByPrimaryKeySelective(shoujian);

将修改收件成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "修改收件信息成功");

返回收件管理界面

return "forward:/shoujianguanli.action";

删除收件模块:

删除收件功能实现在shoujianController中,实现方法为shanchushoujian。在页面中通过get方法shanchushoujian.action?Id的形式将需要删除的收件id上传到服务器中,响应对应的方法,调用shoujiandao中的deleteByPrimaryKey方法,完成删除操作。将删除成功的提示信息返回到页面中,完成删除数据的操作。该部分核心代码:

通过shoujiandao的删除方法根据id删除对应的收件 shoujiandao.deleteByPrimaryKey(id);

将删除收件成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "删除收件成功");

返回收件管理界面

return "forward:/shoujianguanli.action";

02-10 14:23