中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何利用springboot實現郵箱的發送功能

發布時間:2021-09-07 02:04:34 來源:億速云 閱讀:110 作者:chen 欄目:開發技術

本篇內容介紹了“如何利用springboot實現郵箱的發送功能”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

第一步添加mail的依賴

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

第二步編寫郵箱的

yml配置文件

spring:
  #郵箱配置
  mail:
    host: smtp.qq.com
    username: 2631245486@qq.com
    #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("2631245486@qq.com", "你好", "明天去你家玩");
		return "success";
	}
	
	
	/**
	 * 發送帶有附件的郵件
	 */
	@RequestMapping("/sendFile")
	public String sendFileMail() {
		File file=new File("C://Users//DELL//Desktop//學習資料.txt");
		mailServer.sendFileMail("2631245486@qq.com", "你好dsf", "這是第二封帶有附件的郵件", file);
		return "success";
	}
}

授權碼生成的步驟

登錄郵箱選擇設置

如何利用springboot實現郵箱的發送功能

選擇賬戶

如何利用springboot實現郵箱的發送功能

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

如何利用springboot實現郵箱的發送功能

“如何利用springboot實現郵箱的發送功能”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

淳安县| 辽阳市| 静宁县| 平阴县| 彩票| 万年县| 永泰县| 通榆县| 于田县| 广昌县| 三明市| 秦皇岛市| 秦安县| 武城县| 塘沽区| 沾化县| 井研县| 石门县| 巧家县| 吉木乃县| 绍兴县| 鄢陵县| 民县| 湛江市| 江陵县| 新安县| 绥芬河市| 蚌埠市| 大埔县| 灵璧县| 茌平县| 育儿| 大名县| 万荣县| 垣曲县| 屏山县| 云南省| 东海县| 前郭尔| 全椒县| 苏尼特左旗|