刚做完一个电影网站网站新注册用户时需要发送email进行确认但是这个功能不是由我来负责的在下对此功能颇有好奇之心于是自己就搭建了一个小的spring项目来进行实践
声明代码里有些内容并非是我一个人完成的
首先在applicationContextxml文件中配置bean
Java代码
<beanid=mailSenderclass=orgspringframeworkmailjavamailJavaMailSenderImpl>
<propertyname=hostvalue=>
</property>
<propertyname=javaMailProperties>
<props>
<propkey=mailsmtpauth>true</prop>
<propkey=mailsmtptimeout></prop>
</props>
</property>
<propertyname=usernamevalue=dufangxu/>
<propertyname=passwordvalue=你的邮箱密码/>
</bean>
实现发送邮件java类代码
Java代码
privateConfigurationcfg=newConfiguration();
publicstaticvoidmain(String[]args)throwsException{
ApplicationContextctx=newFileSystemXmlApplicationContext(
src/applicationContextxml);
JavaMailSendersender=(JavaMailSender)ctxgetBean(mailSender);
SpringMailspringMail=newSpringMail();
springMailsendMail(sender);
}
privatevoidsendMail(JavaMailSendersender)throwsException{
SimpleMailMessagemail=newSimpleMailMessage();
mailsetTo();//接收人
mailsetFrom();//发送人
mailsetSubject(testbyamigo);
//嵌入ftl模版
cfgsetClassForTemplateLoading(getClass()/mail);
Maproot=newHashMap();
rootput(usernamesucre);//模板变量
Templatet=cfggetTemplate(notifymailftl);
StringWriterwriter=newStringWriter();
tprocess(rootwriter);
//把模版内容写入邮件中
mailsetText(writertoString());
sendersend(mail);
Systemoutprintln(邮件发送成功!);
}
这样还不够还需要一个ftl模版
Java代码
目录结构
ok这样邮件就能成功发送了
文章很简短还有很多不足之处希望大家多提意见