多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > php教程 > Spring發送郵件總結(附源碼)

Spring發送郵件總結(附源碼)

來源:程序員人生   發布時間:2015-04-11 09:00:37 閱讀次數:2675次

做項目用到自動發郵件功能,網上查閱很多沒有給出特別詳細的說明,需要自己去探索,做了很多彎路。

在此給大家分享1下自己的代碼:

360網盤下載地址:http://yunpan.cn/cJzDQ3gVUHBxY  訪問密碼 8221



使用時 請將Spring 配置文件里的  用戶名、密碼、郵箱服務器 還有端口 進行修改如果不是 yeah郵箱。


如果使用maven項目:

Pom.xml

 

添加的內容

<!-- Spring3 --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>3.2.4.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>3.2.4.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>3.2.4.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-web</artifactId> <version>3.2.4.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-aop</artifactId> <version>3.2.4.RELEASE</version> </dependency> <!-- Spring Email --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context-support</artifactId> <version>3.2.4.RELEASE</version> </dependency> <!-- Javamail API --> <dependency> <groupId>javax.mail</groupId> <artifactId>mail</artifactId> <version>1.4.4</version> </dependency>


如果直接導入JAR方式 ,需要引入以下JAR包


EmailUtil

package com.bookmarksClouds.util; import java.io.File; import javax.annotation.Resource; import javax.mail.MessagingException; import javax.mail.internet.MimeMessage; import org.springframework.core.io.ClassPathResource; import org.springframework.core.io.FileSystemResource; import org.springframework.mail.SimpleMailMessage; import org.springframework.mail.javamail.JavaMailSender; import org.springframework.mail.javamail.MimeMessageHelper; import org.springframework.stereotype.Component; @Component("simpleMail") public class EmailUtil { private JavaMailSender javaMailSender; private SimpleMailMessage simpleMailMessage; /** * * @方法名: sendMail * @參數名:@param subject 郵件主題 * @參數名:@param content 郵件主題內容 * @參數名:@param to 收件人Email地址 * @param isHtml 是不是是html格式(發送html時使用utf⑻編碼) * @描寫語: 發送郵件 * @throws MessagingException 發送產生了異常 */ public void sendMail(String subject, String content,boolean isHtml, String to) throws MessagingException { MimeMessage mimeMessage = javaMailSender.createMimeMessage(); MimeMessageHelper messageHelper =null; if(isHtml) { messageHelper = new MimeMessageHelper(mimeMessage,true,"UTF⑻"); } else { messageHelper = new MimeMessageHelper(mimeMessage,true); } messageHelper.setFrom(simpleMailMessage.getFrom()); //設置發件人Email messageHelper.setSubject(subject); //設置郵件主題 if(isHtml) { messageHelper.setText(content,true); //設置郵件主題內容(html格式) } else { messageHelper.setText(content); //設置郵件主題內容 } messageHelper.setTo(to); //設定收件人Email javaMailSender.send(mimeMessage); } /** * 發送郵件 (包括附件) * @param subject 主題 * @param content 內容 * @param fileAttachment 附件文件 * @param isHtml 內容是不是是html格式 * @param to 發送的郵箱地址 * @throws MessagingException 發送郵件異常(失敗) */ public void sendMail(String subject, String content,boolean isHtml, File fileAttachment,String to) throws MessagingException { MimeMessage mimeMessage = javaMailSender.createMimeMessage(); MimeMessageHelper messageHelper = new MimeMessageHelper(mimeMessage,true,"UTF⑻"); messageHelper.setFrom(simpleMailMessage.getFrom()); //設置發件人Email messageHelper.setSubject(subject); //設置郵件主題 if(isHtml) { messageHelper.setText(content,true); //設置郵件主題內容(html格式) } else { messageHelper.setText(content); //設置郵件主題內容 } messageHelper.setTo(to); //設定收件人Email FileSystemResource file = new FileSystemResource(fileAttachment); messageHelper.addAttachment(file.getFilename(), file); //添加附件 javaMailSender.send(mimeMessage); } /** * 發送郵件 (包括附件) * @param subject 主題 * @param content 內容 * @param classPathResource 附件文件(附加在項目內部時候) * @param isHtml 內容是不是是html格式 * @param to 發送的郵箱地址 * @throws MessagingException */ public void sendMail(String subject, String content,boolean isHtml, ClassPathResource classPathResource,String to) throws MessagingException { MimeMessage mimeMessage = javaMailSender.createMimeMessage(); /** * new MimeMessageHelper(mimeMessage,true)之true個人見解: * 關于true參數,官方文檔是這樣解釋的: * use the true flag to indicate you need a multipart message * 翻譯過來就是:使用true,以表明你需要多個消息 * 再去翻1下MimeMessageHelper的API,找到這樣1句話: * supporting alternative texts, inline elements and attachments * 也就是說,如果要支持內聯元素和附件就必須給定第2個參數為true * 否則拋出 java.lang.IllegalStateException 異常 */ MimeMessageHelper messageHelper = new MimeMessageHelper(mimeMessage,true,"UTF⑻"); messageHelper.setFrom(simpleMailMessage.getFrom()); //設置發件人Email messageHelper.setSubject(subject); //設置郵件主題 if(isHtml) { messageHelper.setText(content,true); //設置郵件主題內容(html格式) } else { messageHelper.setText(content); //設置郵件主題內容 } messageHelper.setTo(to); //設定收件人Email /** FileSystemResource file = new FileSystemResource(fileAttachment); * ClassPathResource:很明顯就是類路徑資源,我這里的附件是在項目里的,所以需要用ClassPathResource * 如果是系統文件資源就不能用ClassPathResource,而要用FileSystemResource,例: * ClassPathResource file = new ClassPathResource("attachment/Readme.txt"); */ /** * MimeMessageHelper的addAttachment方法: * addAttachment(String attachmentFilename, InputStreamSource inputStreamSource) * InputStreamSource是1個接口,ClassPathResource和FileSystemResource都實現了這個接口 //發送附件郵件 */ ClassPathResource file = classPathResource; messageHelper.addAttachment(file.getFilename(), file); //添加附件 javaMailSender.send(mimeMessage); } //Spring 依賴注入 @Resource public void setSimpleMailMessage(SimpleMailMessage simpleMailMessage) { this.simpleMailMessage = simpleMailMessage; } //Spring 依賴注入 @Resource public void setJavaMailSender(JavaMailSender javaMailSender) { this.javaMailSender = javaMailSender; } }

Demo

package com.bookmarksClouds.test; import javax.mail.MessagingException; import org.junit.Test; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; import com.bookmarksClouds.util.EmailUtil; public class EmailUtilTest { private ApplicationContext factory = new ClassPathXmlApplicationContext( new String[] {"spring/spring-smtp-mail-attachment.xml"}); @Test public void test() { EmailUtil mail = (EmailUtil)factory.getBean("simpleMail"); String html= "<html><head><META http-equiv=Content-Type content='text/html; charset=UTF⑻'><title>云書簽注冊激活</title></head><body>歡迎使用,云書簽。<br/><a href='www.baidu.com' >云書簽</a><br>點擊上面超鏈接 激活賬戶信息!</body><html>"; try { mail.sendMail("云書簽注冊自動發郵件", html,true, "***@qq.com"); } catch (MessagingException e) { System.out.println("發送郵件失敗!"); //e.printStackTrace(); } } }

 Spring配置文件

<?xml version="1.0" encoding="UTF⑻"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xmlns:aop="http://www.springframework.org/schema/aop" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans⑶.2.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context⑶.2.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop⑶.2.xsd"> <context:annotation-config/> <context:component-scan base-package="com.bookmarksClouds"/> <bean id ="mailSender" class ="org.springframework.mail.javamail.JavaMailSenderImpl" > <!-- 服務器 --> <property name ="host" value ="smtp.163.com" /> <!-- 端口號 --> <property name ="port" value ="25" /> <!-- 用戶名 --> <property name ="username" value ="郵箱地址" /> <!-- 密碼 --> <property name ="password" value ="郵箱密碼" /> <!-- SMTP服務器驗證 --> <property name ="javaMailProperties" > <props > <!-- 驗證身份 --> <prop key ="mail.smtp.auth" > true </prop > </props > </property > </bean > <bean id="simpleMailMessage" class="org.springframework.mail.SimpleMailMessage"> <!-- 發件人email --> <property name="from" value="發送郵箱地址" /> <!-- 收件人email <property name="to" value="to@yeah.net" /> email主題(標題) <property name="subject" value="Subject" /> email主題內容 <property name="text"> <value>ContentText</value> </property> --> </bean> </beans>




生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 最新国产精品亚洲二区 | 成人亲子乱子伦视频 | 国产一级特黄aa级特黄裸毛片 | 国产成人久久久精品毛片 | 亚洲视频在线免费看 | 欧美日韩在线观看视频 | 最近最新中文字幕大全免费7 | 亚洲图片在线欧美专区图片 | 久久国产精品免费视频 | 92精品国产自产在线观看 | 日本免费xxxx色视频 | 国产精久久一区二区三区 | 日本xxx护士与黑人 日本xxx网站 | 亚洲精品在线免费看 | 最近中文字幕免费完整 | 手机午夜视频 | 欧美日韩亚洲一区二区 | 亚洲永久免费网站 | 伊人高清视频 | 美女免费网站视频 | 亚洲综合色自拍一区 | 成 人国产在线观看高清不卡 | 天堂在线观看视频 | 性生交酡 | 尤物免费在线视频 | 久久天天躁夜夜躁狠狠躁2020 | 特级aa毛片在线播放 | 毛片色| 91亚洲欧美综合高清在线 | 麻豆影视大全 | 亚洲精品国产成人99久久 | 欧美一区二区久久精品 | 成人免费久久精品国产片久久影院 | 在线高清一级欧美精品 | 亚洲手机看片 | 日产一区一区三区产品 | 久久亚洲人成网站 | 一级a性色生活片久久毛片 一级a性色生活片毛片 | 欧美福利 | 涩涩免费播放观看在线视频 | 日本一区二区三区四区在线观看 |