Spring实现邮件发送功能
前言:以前都是直接用Java自带的邮件工具发送邮件,现在Spring帮我们做了封装,提供了更好用更简单的发送邮件工具JavaMailSender,关于邮件服务器的设置就不在这里说了,直接去QQ邮箱设置下就好,下面看下主要的步骤:
步骤一、添加发送邮件相关Maven依赖
org.springframework spring-context-support 4.3.2.RELEASE javax.mail 1.4.7
步骤二、添加相关Spring配置,创建一个spring-mail.xml(如果是Spring-Boot请无视),内容如下:
true 25000
步骤三、创建具体的邮件发送工具类
/** *基于Spring的JavaMailSender的邮件发送工具类 *@authorsimon * */ @Component publicclassEmailSender{ @Autowired privateJavaMailSenderjavaMailSender; privatestaticEmailSenderemailSender; @PostConstruct publicvoidinit(){ emailSender=this; emailSender.javaMailSender=this.javaMailSender; } /** *发送简单的文本邮件 *@paramsendTo收件人组 *@paramsubject主题 *@paramcontent文本内容 */ publicstaticvoidsendSimpleMessage(StringsendFrom,String[]sendTo,Stringsubject,Stringtextcontent){ SimpleMailMessagemail=newSimpleMailMessage(); mail.setFrom(sendFrom); mail.setTo(sendTo); mail.setSubject(subject); mail.setText(textcontent); //发送 emailSender.javaMailSender.send(mail); } /** *发送HTML内容格式的邮件 *@paramsendFrom *@paramsendTo收件人组 *@paramsubject主题 *@paramhtmlContentHTML内容 *@throwsException */ publicstaticvoidsendHtmlMessage(StringsendFrom,String[]sendTo,Stringsubject,StringhtmlContent)throwsException{ MimeMessagemimeMessage=emailSender.javaMailSender.createMimeMessage(); MimeMessageHelpermimeMessageHelper=newMimeMessageHelper(mimeMessage); mimeMessageHelper.setFrom(sendFrom); mimeMessageHelper.setTo(sendTo); mimeMessageHelper.setSubject(subject); //true表示启动HTML格式的邮件 mimeMessageHelper.setText(htmlContent,true); //发送邮件 emailSender.javaMailSender.send(mimeMessage); } }
步骤四、创建单元测试测试发送邮件
/** *邮件发送测试类 * *@authorsimon * */ @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration("classpath:applicationContext.xml") publicclassEmailSenderTest{ @Test publicvoidtestSend()throwsException{ StringsendFrom="1317492210@qq.com"; String[]sendTo={"zhaosheng@hitencent.com"}; Stringsubject="Spring自带JavaMailSender发送的HTML邮件"; StringBuilderhtmlContent=newStringBuilder() .append("") .append("") .append("") .append("Spring自带JavaMailSender发送的HTML邮件") .append(" ") .append("") .append("") .append("您好!陌生人") .append("") .append(""); EmailSender.sendHtmlMessage(sendFrom,sendTo,subject,htmlContent.toString()); System.out.println("邮件发送成功."); }
OK,到这里全部的步骤就结束了,是不是比JavaMail简单方便很多哉,赶紧自己动手试试吧!
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。