一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術(shù)及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - springboot整合mail實現(xiàn)郵箱的發(fā)送功能

springboot整合mail實現(xiàn)郵箱的發(fā)送功能

2021-12-21 13:48求知若渴的蝸牛 Java教程

本文分步驟給大家介紹springboot整合mail實現(xiàn)郵箱的發(fā)送功能,代碼簡單易懂,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友參考下吧

第一步添加mail的依賴

<!--引入mail的依賴  -->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-mail</artifactId>
		</dependency>

第二步編寫郵箱的

yml配置文件

spring:
#郵箱配置
mail:
  host: smtp.qq.com
  username: [email protected]
  #QQ郵箱的授權(quán)碼
  password: 授權(quán)碼
  default-encoding: UTF-8
  properties:
    mail:
      smtp:
        auth: true
        starttls:
          enable: true
          required: true

properties的配置文件

#qq郵箱配置
# JavaMailSender 郵件發(fā)送的配置
spring.mail.host=smtp.qq.com
spring.mail.username=用戶qq郵箱
#QQ郵箱的授權(quán)碼
spring.mail.password=授權(quán)碼
spring.mail.properties.mail.smtp.auth=true
spring.mail.properties.mail.smtp.starttls.enable=true
spring.mail.properties.mail.smtp.starttls.required=true
spring.mail.default-encoding=UTF-8

#163郵箱配置
spring.mail.host=smtp.163.com
spring.mail.username=用戶163郵箱
spring.mail.password=郵箱密碼
spring.mail.properties.mail.smtp.auth=true
spring.mail.properties.mail.smtp.starttls.enable=true
spring.mail.properties.mail.smtp.starttls.required=true
spring.mail.default-encoding=UTF-8

編寫兩個發(fā)送郵件的接口

package www.it.com.server;

import java.io.File;

/**
* @author wangjie:
* @version 創(chuàng)建時間:2019年8月27日 上午10:13:08
* @Description 類描述:
*/
public interface MailServer {
	/**
	 * @param sendUser 郵件接收人 
	 * @param title 郵件的標題 
	 * @param text  郵件的內(nèi)容
	 */
	void sendMailServer(String sendUser,String title,String text);
	
	
	/**
	 * 帶有附件郵箱的發(fā)送
	 * @param sendUser
	 * @param title
	 * @param text
	 * @param file
	 */
	void sendFileMail(String sendUser,String title,String text,File file);
}

接口的實現(xiàn)

package www.it.com.server.impl;

import java.io.File;

import javax.mail.MessagingException;
import javax.mail.internet.MimeMessage;

import org.apache.logging.log4j.message.SimpleMessage;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
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.Service;

import www.it.com.server.MailServer;

/**
* @author wangjie:
* @version 創(chuàng)建時間:2019年8月27日 上午10:13:58
* @Description 類描述:
*/
@Service
public class MailServerImpl implements MailServer {
	
	@Value("${spring.mail.username}")
	private String fromUser;
	
	@Autowired
  private JavaMailSender javaMailSender;
	
	public String getFromUser() {
		return fromUser;
	}


	public void setFromUser(String fromUser) {
		this.fromUser = fromUser;
	}


	@Override
	public void sendMailServer(String sendUser, String title, String text) {
		//創(chuàng)建郵件的實體 用于封裝發(fā)送郵件需要的信息
		SimpleMailMessage simpleMailMessage=new  SimpleMailMessage();
		//郵件的發(fā)送人
		simpleMailMessage.setFrom(fromUser);
		//郵件接收人
		simpleMailMessage.setTo(sendUser);
		//郵件的標題
		simpleMailMessage.setSubject(title);
		//郵件的內(nèi)容
		simpleMailMessage.setText(text);
		//發(fā)送郵件
	    javaMailSender.send(simpleMailMessage);
	}


	@Override
	public void sendFileMail(String sendUser, String title, String text, File file) {
		
		MimeMessage mimeMessage = null;
		
		try {
			mimeMessage =javaMailSender.createMimeMessage();
			//創(chuàng)建mimeMessageHelper對象用于處理帶有附件的郵件信息
			MimeMessageHelper mimeMessageHelper=new MimeMessageHelper(mimeMessage,true);
			mimeMessageHelper.setFrom(fromUser);
			mimeMessageHelper.setTo(sendUser);
			mimeMessageHelper.setSubject(title);
			mimeMessageHelper.setText(text);
			FileSystemResource r = new FileSystemResource(file);
			//添加附件
			mimeMessageHelper.addAttachment("附件", r);
			javaMailSender.send(mimeMessage);
		} catch (MessagingException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}

}

controller編碼

package www.it.com.controller;

import java.io.File;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import www.it.com.server.MailServer;

/**
* @author wangjie:
* @version 創(chuàng)建時間:2019年8月27日 上午9:52:30
* @Description 類描述:郵件發(fā)送的controller
*/

@RestController()
@RequestMapping("/mail")
public class MailController {
 
	@Autowired
	private MailServer mailServer;
	
	/**
	 * 簡單郵件的發(fā)送
	 * @return
	 */
	@RequestMapping("/send")
	public String sendMail() {
		//2694433816
		mailServer.sendMailServer("[email protected]", "你好", "明天去你家玩");
		return "success";
	}
	
	
	/**
	 * 發(fā)送帶有附件的郵件
	 */
	@RequestMapping("/sendFile")
	public String sendFileMail() {
		File file=new File("C://Users//DELL//Desktop//學習資料.txt");
		mailServer.sendFileMail("[email protected]", "你好dsf", "這是第二封帶有附件的郵件", file);
		return "success";
	}
}

授權(quán)碼生成的步驟

登錄郵箱選擇設置

springboot整合mail實現(xiàn)郵箱的發(fā)送功能

選擇賬戶

springboot整合mail實現(xiàn)郵箱的發(fā)送功能

滑動到下面開啟相應的服務 選擇生成授權(quán)碼

springboot整合mail實現(xiàn)郵箱的發(fā)送功能

到此這篇關(guān)于springboot整合mail實現(xiàn)郵箱的發(fā)送功能的文章就介紹到這了,更多相關(guān)springboot整合mail郵箱發(fā)送內(nèi)容請搜索服務器之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持服務器之家!

原文鏈接:https://www.cnblogs.com/wang66a/p/12069301.html

延伸 · 閱讀

精彩推薦
  • Java教程Java使用SAX解析xml的示例

    Java使用SAX解析xml的示例

    這篇文章主要介紹了Java使用SAX解析xml的示例,幫助大家更好的理解和學習使用Java,感興趣的朋友可以了解下...

    大行者10067412021-08-30
  • Java教程升級IDEA后Lombok不能使用的解決方法

    升級IDEA后Lombok不能使用的解決方法

    最近看到提示IDEA提示升級,尋思已經(jīng)有好久沒有升過級了。升級完畢重啟之后,突然發(fā)現(xiàn)好多錯誤,本文就來介紹一下如何解決,感興趣的可以了解一下...

    程序猿DD9332021-10-08
  • Java教程Java8中Stream使用的一個注意事項

    Java8中Stream使用的一個注意事項

    最近在工作中發(fā)現(xiàn)了對于集合操作轉(zhuǎn)換的神器,java8新特性 stream,但在使用中遇到了一個非常重要的注意點,所以這篇文章主要給大家介紹了關(guān)于Java8中S...

    阿杜7482021-02-04
  • Java教程Java BufferWriter寫文件寫不進去或缺失數(shù)據(jù)的解決

    Java BufferWriter寫文件寫不進去或缺失數(shù)據(jù)的解決

    這篇文章主要介紹了Java BufferWriter寫文件寫不進去或缺失數(shù)據(jù)的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望...

    spcoder14552021-10-18
  • Java教程xml與Java對象的轉(zhuǎn)換詳解

    xml與Java對象的轉(zhuǎn)換詳解

    這篇文章主要介紹了xml與Java對象的轉(zhuǎn)換詳解的相關(guān)資料,需要的朋友可以參考下...

    Java教程網(wǎng)2942020-09-17
  • Java教程小米推送Java代碼

    小米推送Java代碼

    今天小編就為大家分享一篇關(guān)于小米推送Java代碼,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧...

    富貴穩(wěn)中求8032021-07-12
  • Java教程Java實現(xiàn)搶紅包功能

    Java實現(xiàn)搶紅包功能

    這篇文章主要為大家詳細介紹了Java實現(xiàn)搶紅包功能,采用多線程模擬多人同時搶紅包,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙...

    littleschemer13532021-05-16
  • Java教程20個非常實用的Java程序代碼片段

    20個非常實用的Java程序代碼片段

    這篇文章主要為大家分享了20個非常實用的Java程序片段,對java開發(fā)項目有所幫助,感興趣的小伙伴們可以參考一下 ...

    lijiao5352020-04-06
主站蜘蛛池模板: 色啪久久婷婷综合激情 | 好深快点再快点好爽视频 | 色伦网 | 国产精品亚欧美一区二区三区 | girlfriend动漫在线播放 | 丝瓜污污| futa百合高肉全h | 美女脱了内裤打开腿让人羞羞软件 | 国产精品久久久久jk制服 | 思思玖玖玖在线精品视频 | 日韩综合一区 | 欧美日韩国产成人精品 | 人成午夜免费大片在线观看 | 国产成人精品一区 | 精品国产品香蕉在线观看75 | 黄 色 大 片 网站 | 手机看片自拍自自拍日韩免费 | 天堂在线中文无弹窗全文阅读 | 成人猫咪maomiav永久网址 | 国模孕妇季玥全部人体写真 | 国产精自产拍久久久久久 | 成人依依网 | 精品一区久久 | 好舒服好爽再快点视频 | 日韩精品在线视频观看 | 日本aa大片在线播放免费看 | 亚洲精品久久久久福利网站 | 特黄特级毛片免费视 | 好大好硬好深好爽想要吃奶 | 亚州春色 | 朝鲜女人free性xxe | 舔比小说 | 我的绝色岳每雯雯 | 麻豆网站视频国产在线观看 | 国产a不卡片精品免费观看 国产aaa伦理片 | 60岁了天天要小伙子 | 国产精品1 | 娇妻在床上迎合男人 | 被老外玩爽的中国美女视频 | 国产精品欧美亚洲韩国日本99 | 久久机热视频 这里只有精品首页 |