每天记录学习,每天会有好心情。*^_^*
今天记录的项目是邮件群发系统,这个项目是这么回事:群发邮件是指单个个人或者组织,通过对邮件地址的收集,也可以是少量但持续不停的发送,形成大量邮件发送的过程。主要注意的是,发送过程并不一定取得了邮件接收者的许可。如果得到了接受者的许可,其可视为是合法的邮件营销。否则则被视为垃圾邮件。邮件群发这一手段则被广泛应用于电子商务和网络营销中,拥有局域网的单位也可以通过邮件群发方便迅速地发送通知和传达文件。。
做这个项目的时候,我们需要用到SSM(MYECLIPSE)框架,开发工具选用最拿手的MYECLIPSE。
邮件群发系统项目是一个 后台项目。
开发系统时,需求分析是必不可少的一个环节。邮件群发系统拥有的登录角色包括了管理员、用户注册。
每个账号设置身份、账号、密码是必不可少的,管理员、用户注册中都包含这些登录角色该有的字段。
总结得出该系统所有数据为:管理员(admin)、用户注册(yonghuzhuce)、信息采集(xinxicaiji)、邮件发送(youjianfasong)
管理员表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 管理员id username | VARCHAR(255) | | 账号 password | VARCHAR(255) | | 密码 quanxain | VARCHAR(255) | | 权限
用户注册表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 用户注册id xingming | VARCHAR(255) | | 姓名 xingbie | VARCHAR(255) | | 性别 username | VARCHAR(255) | | 账号 password | VARCHAR(255) | | 密码
信息采集表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 信息采集id xingming | VARCHAR(255) | | 姓名 youjiandizhi | VARCHAR(255) | | 邮件地址 neirong | VARCHAR(255) | | 内容
邮件发送表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 邮件发送id fasongren | VARCHAR(255) | | 发送人 jieshouren | VARCHAR(255) | | 接收人 neirong | VARCHAR(255) | | 内容 shijian | VARCHAR(255) | | 时间
SET FOREIGN_KEY_CHECKS=0; -- ---------------------------- -- ---------------------------- -- Table structure for ggyoujianqunfaxt -- ---------------------------- 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 ‘密码‘,`quanxain` VARCHAR(255) DEFAULT NULL COMMENT ‘权限‘,PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT=‘管理员‘; -- ---------------------------- DROP TABLE IF EXISTS `t_yonghuzhuce`; CREATE TABLE `t_yonghuzhuce` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT ‘用户注册id‘,`xingming` VARCHAR(255) DEFAULT NULL COMMENT ‘姓名‘,`xingbie` 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_xinxicaiji`; CREATE TABLE `t_xinxicaiji` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT ‘信息采集id‘,`xingming` VARCHAR(255) DEFAULT NULL COMMENT ‘姓名‘,`youjiandizhi` VARCHAR(255) DEFAULT NULL COMMENT ‘邮件地址‘,`neirong` VARCHAR(255) DEFAULT NULL COMMENT ‘内容‘,PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT=‘信息采集‘; -- ---------------------------- DROP TABLE IF EXISTS `t_youjianfasong`; CREATE TABLE `t_youjianfasong` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT ‘邮件发送id‘,`fasongren` VARCHAR(255) DEFAULT NULL COMMENT ‘发送人‘,`jieshouren` VARCHAR(255) DEFAULT NULL COMMENT ‘接收人‘,`neirong` VARCHAR(255) DEFAULT NULL COMMENT ‘内容‘,`shijian` VARCHAR(255) DEFAULT NULL COMMENT ‘时间‘,PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT=‘邮件发送‘;
添加信息采集模块:
系统中存在添加信息采集功能,通过点击添加信息采集可以跳转到该功能模块,在该功能模块中,填写对应的信息采集信息。信息采集包含信息姓名,邮件地址,内容,填写完所有信息后,通过post方法将数据提交到tianjiaxinxicaiji.action中,该地址将在服务器中xinxicaijiController类中的tianjiaxinxicaijiact方法中进行响应。响应结果为,获取所有的信息采集信息,封装一个xinxicaiji类,使用xinxicaijiController类中定义的xinxicaijidao的insert方法,将信息采集数据插入到数据库的xinxicaiji表中。并给出用户提示信息,添加信息采集成功,将该信息保存到request的message中,该信息将在页面中进行展示。该部分核心代码如下:
通过xinxicaijidao的insert方法将页面传输的信息采集添加到数据库中 xinxicaijidao.insert(xinxicaiji);
将添加信息采集成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "添加信息采集成功");
返回信息采集管理界面
return "forward:/tianjiaxinxicaiji.action";
查询信息采集模块:
在后台xinxicaijiguanli方法中,通过selectByexample方法获取所有的数据信息。将其保存到request中,在页面中通过foreach方法
进行循环展示到table中。完成信息采集查询操作。具体代码如下:
生成信息采集样例类,通过example定义查询条件 XinxicaijiExample example = new XinxicaijiExample();
通过xinxicaijidao的selectByExample方法查询出所有的信息采集信息 List xinxicaijiall = xinxicaijidao.selectByExample(example);
将信息采集信息,保存到request中,在页面通过foreach方法进行展示 request.setAttribute("xinxicaijiall", xinxicaijiall);
返回信息采集管理界面
return "forward:/xinxicaijiguanli.action";
修改信息采集模块:
在页面填写完修改信息后,点击修改按钮,将数据提交到xiugaixinxicaiji中,封装为一个信息采集
,使用update方法修改该信息采集信息,将数据同步到数据库,完成修改操作。
定义修改成功提示信息,修改信息采集成功,并保存到request中具体代码如下:
通过xinxicaijidao的修改方法根据id修改对应的信息采集 xinxicaijidao.updateByPrimaryKeySelective(xinxicaiji);
将修改信息采集成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "修改信息采集信息成功");
返回信息采集管理界面
return "forward:/xinxicaijiguanli.action";
删除信息采集模块:
删除信息采集功能的实现方式为,通过点击删除信息采集按钮,向服务器发起get请求。请求中包含信息采集的id信息,在xinxicaijiController中使用int接受该id,并将该id传入xinxicaijidao的deleteByPrimaryKey方法中。该方法的作用为根据id删除对应信息采集。最后将删除信息采集成功的信息返回页面,该部分核心代码如下:
通过xinxicaijidao的删除方法根据id删除对应的信息采集 xinxicaijidao.deleteByPrimaryKey(id);
将删除信息采集成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "删除信息采集成功");
返回信息采集管理界面
return "forward:/xinxicaijiguanli.action";
原文地址:https://www.cnblogs.com/liyey/p/11604366.html