激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

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

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

服務器之家 - 編程語言 - Java教程 - springboot整合mail實現郵箱的發送功能

springboot整合mail實現郵箱的發送功能

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

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

第一步添加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郵箱的授權碼
  password: 授權碼
  default-encoding: UTF-8
  properties:
    mail:
      smtp:
        auth: true
        starttls:
          enable: true
          required: true

properties的配置文件

#qq郵箱配置
# JavaMailSender 郵件發送的配置
spring.mail.host=smtp.qq.com
spring.mail.username=用戶qq郵箱
#QQ郵箱的授權碼
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

#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

編寫兩個發送郵件的接口

package www.it.com.server;

import java.io.File;

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

接口的實現

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 創建時間: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) {
		//創建郵件的實體 用于封裝發送郵件需要的信息
		SimpleMailMessage simpleMailMessage=new  SimpleMailMessage();
		//郵件的發送人
		simpleMailMessage.setFrom(fromUser);
		//郵件接收人
		simpleMailMessage.setTo(sendUser);
		//郵件的標題
		simpleMailMessage.setSubject(title);
		//郵件的內容
		simpleMailMessage.setText(text);
		//發送郵件
	    javaMailSender.send(simpleMailMessage);
	}


	@Override
	public void sendFileMail(String sendUser, String title, String text, File file) {
		
		MimeMessage mimeMessage = null;
		
		try {
			mimeMessage =javaMailSender.createMimeMessage();
			//創建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 創建時間:2019年8月27日 上午9:52:30
* @Description 類描述:郵件發送的controller
*/

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

授權碼生成的步驟

登錄郵箱選擇設置

springboot整合mail實現郵箱的發送功能

選擇賬戶

springboot整合mail實現郵箱的發送功能

滑動到下面開啟相應的服務 選擇生成授權碼

springboot整合mail實現郵箱的發送功能

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

原文鏈接: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提示升級,尋思已經有好久沒有升過級了。升級完畢重啟之后,突然發現好多錯誤,本文就來介紹一下如何解決,感興趣的可以了解一下...

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

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

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

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

    Java BufferWriter寫文件寫不進去或缺失數據的解決

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

    spcoder14552021-10-18
  • Java教程xml與Java對象的轉換詳解

    xml與Java對象的轉換詳解

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

    Java教程網2942020-09-17
  • Java教程小米推送Java代碼

    小米推送Java代碼

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

    富貴穩中求8032021-07-12
  • Java教程Java實現搶紅包功能

    Java實現搶紅包功能

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

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

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

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

    lijiao5352020-04-06
主站蜘蛛池模板: 毛片118极品美女写真 | 性欧美大战久久久久久久免费观看 | 精品一区二区三区免费爱 | 99精彩视频在线观看 | 看a级毛片 | 黄色影院一级片 | 欧美自拍三区 | 亚洲午夜在线 | 成人aaaaa片毛片按摩 | av在线看网站 | 日韩在线观看视频网站 | 色淫网站免费视频 | 成片免费观看视频大全 | 免费国产不卡午夜福在线 | 午夜视频免费播放 | 看片一区 | 欧美高清在线精品一区二区不卡 | 国产精品免费看 | www.guochan| 成人性视频免费网站下载软件 | 一级黄色影片在线观看 | 超碰人人射 | 欧美大逼网 | 福利一区二区三区视频在线观看 | 久久精品久久久久 | xxxxxx打针视频vk | 国产免费一区二区三区在线能观看 | 91精品国产刺激国语对白 | 在线中文字幕观看 | 免费a观看 | 99爱精品在线 | 亚洲免费在线视频 | 日本一区二区免费在线观看 | 一区二区久久电影 | 中文字幕在线不卡视频 | 国产乱一区二区三区视频 | 国产精品一区二区在线 | 精品久久久久久久久久久久久 | 男人的天堂视频网站 | 国产无限资源在线观看 | 国产精品高潮99久久久久久久 |