velocity +mybatis+ springMvc构建邮件服务器知识总结
1.在controller中传值到页面
(1)List<String> 类型
List<String> servers = null ;
//……………………
mv.addObject("servers", servers);
<select id="serverSel" name="server" onchange="changeServer()">
#foreach ($server in $servers)
<option value="$server" >$server</option>
#end
</select>
(2)List<Bean>类型
List<User> qqList = null ;
//……………………
mv.addObject("qqEmailList", qqList);
#foreach ($qe in $qqEmailList)
<input type="checkbox" name="userEmail" value="$qe.userId">$qe.userEmail<br />
#end
2.在controller中不跳转页面直接跳转下一个方法
mView.setViewName("redirect:sendEmail.do");
return mView;
或者如下方法:
return new RedirectView("tasks.do");
3.用spring自带的JavaMailSenderImpl类和MimeMessageHelper类发送可以包含html内容的邮件
JavaMailSenderImpl mailSender = new JavaMailSenderImpl();
//设置邮件服务器主机和端口
mailSender.setHost(serverBean.getHost());
mailSender.setPort(Integer.valueOf(serverBean.getPort())); MimeMessage mailMessage = mailSender.createMimeMessage();
try {
MimeMessageHelper messageHelper = new MimeMessageHelper(mailMessage, true, "UTF-8");
//设置收件人
messageHelper.setTo(toEmail);
//设置发件人以及发件人名字
messageHelper.setFrom(serverBean.getFromEmail(), "EquipOne");
//设置邮件标题
messageHelper.setSubject(subject);
//设置邮件内容,以及是否允许为html代码
messageHelper.setText(content, true);
//构建properties类,存放SMTP服务器参数
Properties prop = new Properties();
prop.put("mail.smtp.auth", "true");
prop.put("mail.smtp.timeout", "250000");
final String from = serverBean.getFromEmail();
final String password = serverBean.getPassword();
//创建账号密码验证器,验证邮件服务器登陆账号
Authenticator auth = new Authenticator() {
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(from, password);
}
};
//Session.getInstance(prop, auth)根据邮件会话属性和密码验证器构造一个发//送邮件的session,并放入JavaMailSenderImpl类 mailSender.setSession(Session.getInstance(prop, auth));
mailSender.send(mailMessage);
4.mybatis插入语句返回所插入的主键的值,加上(useGeneratedKeys="true" keyProperty="对应表字段的类属性")
<resultMap type="EmailDetail" id="emailDetail">
<result property="emailId" column="email_id" />
<result property="emailContent" column="email_content" />
<result property="emailSubject" column="email_subject" />
<result property="emailStatus" column="email_status" />
</resultMap>
<insert id="addData" parameterType="com.netcloud.mail.entity.EmailDetail" useGeneratedKeys="true" keyProperty="emailId">
insert into t_email_detail(email_content,email_subject,email_status) values(#{emailContent},#{emailSubject},#{emailStatus})
</insert>
velocity +mybatis+ springMvc构建邮件服务器知识总结的更多相关文章
- Linux安全应用之防垃圾邮件服务器的构建
Linux安全应用之防垃圾邮件服务器的构建 一.垃圾邮件产生的原因 垃圾邮件(SPAM) 也称作UCE(Unsoticited Commercial Email.未经许可的商业电子邮件)或UBE(Un ...
- Linux 小知识翻译 - 「邮件服务器」
这次聊聊「邮件服务器」. 邮件服务器上通常会运行2个服务端软件,「SMTP服务器」和「POP服务器或者IMAP服务器」. 这2个东西,也许使用邮件客户端的人立马就明白了.因为设置邮件客户端的时候,需要 ...
- 【Mail】搭建邮件服务器(LAMP+Postfix+Dovcot+PostfixAdmin+Roundcubemail)
大纲 一.mail部署说明 二.安装准备 三.LMAP环境配置 四.配置postfixadmin 五.配置postfix 六.配置dovecot 七.测试SMTP和POP3服务 八.配置Roundcu ...
- Windows Server 2003搭建邮件服务器
Windows Server 2003搭建邮件服务器 由于Windows Server 2003默认是没有安装我们搭建邮件服务器所需要的POP3和SMTP服务的,因此需要我们自己来安装.方法如下: 1 ...
- 用Gitolite 构建 Git 服务器
转载 Gitolite 构建 Git 服务器 作者: 北京群英汇信息技术有限公司 网址: http://www.ossxp.com/ 版本: 0.1-1 日期: 2010-10-07 14:52:19 ...
- 使用Vert.x构建Web服务器和消息系统
如果你对Node.js感兴趣,Vert.x可能是你的下一个大事件:一个建立在JVM上一个类似的架构企业制度. 这一部分介绍Vert.x是通过两个动手的例子(基于Vert.x 2.0). 当Node.j ...
- Gitolite 构建 Git 服务器
Gitolite 构建 Git 服务器 Gitolite 构建 Git 服务器作者: 北京群英汇信息技术有限公司网址: http://www.ossxp.com/版本: 0.1-1日期: 2010-1 ...
- MyBatis:学习笔记(1)——基础知识
MyBatis:学习笔记(1)--基础知识 引入MyBatis JDBC编程的问题及解决设想 ☐ 数据库连接使用时创建,不使用时就释放,频繁开启和关闭,造成数据库资源浪费,影响数据库性能. ☐ 使用数 ...
- linux 邮件服务器
邮件通信系统协议及概念:软件角色:MUA:邮件客户端MTA:邮件服务端MDA:邮件服务端模块邮件客户端:Mail User Agent,邮件用户代理邮件服务端:Mail Transfer Agent, ...
随机推荐
- ci查询数据库
public function getUsers() { $this->load->database();//载入数据库 $users = $this->db->get(&qu ...
- ubuntu下samba服务器的安装与配置
参考网址:http://jingyan.baidu.com/album/00a07f38b9194082d028dc08.html?picindex=9 sudo service smbd resta ...
- .NET Reflector Visual Studio Extension
https://visualstudiogallery.msdn.microsoft.com/95789cdb-08f9-4dae-9b2f-fc45a452ad77/
- Ubuntu用作Server时出现乱码的解决方法
下面给出解决办法: 1.用vi编辑器修改/etc/default/local文件 2.把原来的中文编码替换成下面的 LANG="en_US.UTF-8" LANGUAGE=&quo ...
- PageBase
namespace Webform.App { public class PageBase : System.Web.UI.Page { } public interface IService< ...
- 在CentOS上搭建apache和PHP服务器环境(转)
1.您也可以使用一键自动部署环境的工具,请参见网友开发的这个工具 http://www.centos.bz/2013/08/ezhttp-tutorial/ 2. 安装: wget -c http:/ ...
- MemberCached安装
先上干货.. http://yunpan.cn/cmnABPWq27Mk7 访问密码 2ab3 这包里是安装包和一个比较合适的例子..例子是从CSDN上下载的..觉得对新手有帮助. 不过在这之前.. ...
- Orchard源码分析(5):Host相关(Orchard.Environment.DefaultOrchardHost类)
概述 Host 是应用程序域级的单例,代表了Orchard应用程序.其处理应用程序生命周期中的初始化.BeginRequest事件.EndRequest事件等. 可以简单理解为HttpApplicat ...
- JDBC连接池
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M02/45/0C/wKiom1PjixLxfknCAAEbp-e9Bq ...
- commons-pool实战之 GenericObjectPool和GenericKeyedObjectPool
前面两篇文章说了怎么样简单的使用commons-pool库,这里需要考虑一个问题就是在很多时候我们在池里的对象都是比较重型的并且大多数比较稀缺的 资源,比如说数据库连接,这样如果一直把一些连接放在池里 ...