国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Spring Boot發(fā)送郵件

這篇具有很好參考價(jià)值的文章主要介紹了Spring Boot發(fā)送郵件。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

在現(xiàn)代的互聯(lián)網(wǎng)應(yīng)用中,發(fā)送電子郵件是一項(xiàng)常見的功能需求。Spring Boot提供了簡單且強(qiáng)大的郵件發(fā)送功能,使得在應(yīng)用中集成郵件發(fā)送變得非常容易。本文將介紹如何在Spring Boot中發(fā)送電子郵件,并提供一個(gè)完整的示例。

1. 準(zhǔn)備工作

在開始之前,我們需要確保已經(jīng)配置好了以下兩項(xiàng)準(zhǔn)備工作:

  1. 一個(gè)有效的郵件服務(wù)器及其連接信息,包括SMTP主機(jī)名、端口號(hào)、用戶名和密碼。你可以使用自己的郵件服務(wù)器或者使用第三方郵件服務(wù)提供商(如Gmail、SendGrid等)。
  2. 一個(gè)已經(jīng)搭建好的Spring Boot項(xiàng)目。你可以使用Spring Initializr(https://start.spring.io/)來快速創(chuàng)建一個(gè)新的Spring Boot項(xiàng)目,確保項(xiàng)目中包含所需的基本依賴。

2. 添加依賴

首先,在你的Spring Boot項(xiàng)目的pom.xml文件中添加以下Maven依賴:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-mail</artifactId>
</dependency>

這將在你的項(xiàng)目中引入Spring Boot的郵件發(fā)送功能所需的所有依賴。

3. 配置郵件服務(wù)器信息

接下來,我們需要在Spring Boot的配置文件中配置郵件服務(wù)器的連接信息。在application.properties(或application.yml)文件中添加以下屬性:

spring.mail.host=your_smtp_host
spring.mail.port=your_smtp_port
spring.mail.username=your_username
spring.mail.password=your_password
spring.mail.properties.mail.smtp.auth=true

確保將上述屬性值替換為你實(shí)際的郵件服務(wù)器連接信息。

4. 創(chuàng)建郵件發(fā)送服務(wù)

現(xiàn)在,我們可以創(chuàng)建一個(gè)郵件發(fā)送服務(wù)類,該類將使用Spring Boot提供的JavaMailSender來發(fā)送郵件。在你的項(xiàng)目中創(chuàng)建一個(gè)名為EmailService的新類,并在其中添加以下代碼:

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.mail.SimpleMailMessage;
import org.springframework.mail.javamail.JavaMailSender;
import org.springframework.stereotype.Service;

@Service
public class EmailService {

    private JavaMailSender javaMailSender;

    @Autowired
    public EmailService(JavaMailSender javaMailSender) {
        this.javaMailSender = javaMailSender;
    }

    public void sendEmail(String to, String subject, String text) {
        SimpleMailMessage message = new SimpleMailMessage();
        message.setTo(to);
        message.setSubject(subject);
        message.setText(text);
        javaMailSender.send(message);
    }
}

在上述代碼中,我們使用JavaMailSender來創(chuàng)建一個(gè)郵件消息對(duì)象SimpleMailMessage,并設(shè)置收件人、主題和內(nèi)容。最后,我們通過調(diào)用javaMailSender.send(message)來發(fā)送郵件。

5. 使用郵件發(fā)送服務(wù)

現(xiàn)在,我們可以在需要發(fā)送郵件的地方使用EmailService。例如,在一個(gè)Spring Boot的控制器中,你可以注入EmailService并調(diào)用其sendEmail方法來發(fā)送郵件。以下是一個(gè)示例:

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

@RestController
public class EmailController {

    private EmailService emailService;

    @Autowired
    public EmailController(EmailService emailService) {
        this.emailService = emailService;
    }

    @GetMapping("/sendEmail")
    public String sendEmail() {
        String to = "recipient@example.com";
        String subject = "Test Email";
        String text = "This is a test email.";
        emailService.sendEmail(to, subject, text);
        return "Email sent successfully.";
    }
}

在上述示例中,我們創(chuàng)建了一個(gè)EmailController控制器,并注入了EmailService。在sendEmail方法中,我們指定了收件人地址、郵件主題和內(nèi)容,并調(diào)用emailService.sendEmail方法發(fā)送郵件。

6. 運(yùn)行測(cè)試

現(xiàn)在,你可以啟動(dòng)你的Spring Boot應(yīng)用程序,并向/sendEmail端點(diǎn)發(fā)出GET請(qǐng)求來測(cè)試郵件發(fā)送功能。如果一切正常,你應(yīng)該會(huì)在日志輸出中看到郵件發(fā)送成功的消息。

注意:在測(cè)試郵件發(fā)送功能時(shí),請(qǐng)確保郵件服務(wù)器的連接信息和收件人地址是正確的,以避免錯(cuò)誤發(fā)送郵件。

7. 常見錯(cuò)誤

7.1 553 Mail from must equal authorized user

553 Mail from must equal authorized user  
com.sun.mail.smtp.SMTPSendFailedException: 553 Mail from must equal authorized user  
    at com.sun.mail.smtp.SMTPTransport.issueSendCommand(SMTPTransport.java:1333)  
    at com.sun.mail.smtp.SMTPTransport.mailFrom(SMTPTransport.java:906)  
    at com.sun.mail.smtp.SMTPTransport.sendMessage(SMTPTransport.java:535)  
    at com.you.mail.model.SendMessage.sendMessage(SendMessage.java:71)  
    at com.you.mail.model.SendMessage.main(SendMessage.java:89)  
    
Exception in thread "main" com.sun.mail.smtp.SMTPSendFailedException: 553 Mail from must equal authorized user  
    at com.sun.mail.smtp.SMTPTransport.issueSendCommand(SMTPTransport.java:1333)  
    at com.sun.mail.smtp.SMTPTransport.mailFrom(SMTPTransport.java:906)  
    at com.sun.mail.smtp.SMTPTransport.sendMessage(SMTPTransport.java:535)  
    at com.you.mail.model.SendMessage.sendMessage(SendMessage.java:71)  
    at com.you.mail.model.SendMessage.main(SendMessage.java:89)  

網(wǎng)上看到的結(jié)果是增加屬性,但我這邊測(cè)試沒通過

spring:
  boot:
    admin:
      notify:
        mail:
          from: ${spring.mail.username}

后面增加了個(gè)傳參解決的,要和username的值一樣才行

    public void sendEmail(String to, String subject, String text) {
        SimpleMailMessage message = new SimpleMailMessage();
        message.setTo(to);
        message.setSubject(subject);
        message.setText(text);
        message.setForm("your_username");
        javaMailSender.send(message);
    }

7.2 SmtpClientAuthentication is disabled for the Tenant.

SmtpClientAuthentication is disabled for the Tenant. Visit https://aka.ms/smtp_auth_disabled for more information.

我這邊用的是office365的郵箱,這邊需要管理員開通相關(guān)的第三方客戶端發(fā)送smtp的權(quán)限.

總結(jié)

本文介紹了如何在Spring Boot中發(fā)送電子郵件。我們首先準(zhǔn)備了所需的工作,包括配置郵件服務(wù)器信息和創(chuàng)建Spring Boot項(xiàng)目。然后,我們添加了所需的Maven依賴項(xiàng),并創(chuàng)建了一個(gè)郵件發(fā)送服務(wù)類。最后,我們?cè)诳刂破髦惺褂绵]件發(fā)送服務(wù)來發(fā)送郵件,并進(jìn)行了功能測(cè)試。

Spring Boot使得在應(yīng)用中集成郵件發(fā)送變得非常簡單,開發(fā)人員只需幾行代碼就能實(shí)現(xiàn)這一功能。希望本文對(duì)你理解和使用Spring Boot發(fā)送郵件有所幫助!文章來源地址http://www.zghlxwxcb.cn/news/detail-720378.html

到了這里,關(guān)于Spring Boot發(fā)送郵件的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Spring Boot郵件發(fā)送教程:步步為營,輕松實(shí)現(xiàn)圖片附件郵件!

    Spring Boot郵件發(fā)送教程:步步為營,輕松實(shí)現(xiàn)圖片附件郵件!

    ? 通過Spring Boot構(gòu)建一個(gè)功能強(qiáng)大的郵件發(fā)送應(yīng)用程序,重點(diǎn)是實(shí)現(xiàn)發(fā)送包含圖片附件的郵件。我將逐步介紹添加必要的依賴、創(chuàng)建郵件服務(wù)類和控制器的步驟,并提供了具體的示例源代碼。跟隨這個(gè)簡單而清晰的教程,您將能夠輕松地集成郵件發(fā)送功能到您的Spring Boot應(yīng)用中

    2024年02月04日
    瀏覽(23)
  • Spring Schedule:Spring boot整合Spring Schedule實(shí)戰(zhàn)講解定時(shí)發(fā)送郵件的功能

    Spring Schedule:Spring boot整合Spring Schedule實(shí)戰(zhàn)講解定時(shí)發(fā)送郵件的功能

    ???? 歡迎光臨,終于等到你啦 ???? ??我是 蘇澤 ,一位對(duì)技術(shù)充滿熱情的探索者和分享者。???? ??持續(xù)更新的專欄 《Spring 狂野之旅:從入門到入魔》 ?? 本專欄帶你從Spring入門到入魔 ? 這是蘇澤的個(gè)人主頁可以看到我其他的內(nèi)容哦???? 努力的蘇澤 http://suzee.blog.

    2024年03月14日
    瀏覽(22)
  • Spring Boot中發(fā)送郵件時(shí),如何讓發(fā)件人顯示別名

    Spring Boot中發(fā)送郵件時(shí),如何讓發(fā)件人顯示別名

    之前,我們通過一系列文章,介紹了如何在Spring Boot中發(fā)送郵件: 發(fā)送郵件 添加附件 引用靜態(tài)資源 郵件模版 已經(jīng)包含了大部分的應(yīng)用場(chǎng)景。但最近DD在做YouTube中文配音的時(shí)候,碰到一個(gè)問題: 如上圖所示,收件人在客戶端收到的時(shí)候,顯示的名稱是郵箱的前綴,而不是我

    2024年02月08日
    瀏覽(22)
  • springboot 發(fā)送郵件,以及郵件工具類 并且解決spring-boot-starter-mail 發(fā)送郵件附件亂碼或者文件錯(cuò)亂

    1、設(shè)置系統(tǒng)值 System.setProperty(“mail.mime.splitlongparameters”, “false”); 2、 在創(chuàng)建對(duì)象的時(shí)候定義編碼格式(utf-8): MimeMessageHelper helper = new MimeMessageHelper(mes, true, “utf-8”); 3、 其次,在添加附件的時(shí)候,附件名是需要定義編碼的 helper.addAttachment(MimeUtility.encodeWord(附件名,“utf-8”

    2024年02月15日
    瀏覽(34)
  • 【Java Web】發(fā)送郵件 Spring Mail+Thymeleaf

    1. 郵箱啟用SMTP服務(wù) 生成授權(quán)碼,然后看一下發(fā)送郵件服務(wù)器及端口。 2. Spring Mail 2.1 在pom中導(dǎo)入jar包 2.2 郵箱參數(shù)設(shè)置 2.3 使用JavaMailSender發(fā)送郵件,建立mailClient.java工具類 2.4 發(fā)郵件測(cè)試單元 3.模板引擎 在測(cè)試類中注入模板引擎,使用 testHtmlMail 方法發(fā)送html類型郵件。如果沒

    2024年02月11日
    瀏覽(27)
  • Spring Boot 整合郵件服務(wù)

    首先參考了 Spring Boot整合郵件配置,這篇文章寫的很好,按照上面的操作一步步走下去就行了。 版本配置 然后因?yàn)榉磸?fù)配置版本很麻煩,所以參考了 如何統(tǒng)一引入 Spring Boot 版本?。 FreeMarker 在配置 FreeMarker 時(shí),發(fā)現(xiàn)找不到 FreeMarkerConfigurer 類,參考了 springboot整合Freemark模板

    2024年02月02日
    瀏覽(27)
  • Java、Java EE、Spring和Spring Boot核心注解

    文章遷移至個(gè)人博客 此頁面包含常用 Java 、 Java EE 、 Spring 、 Spring Boot 、 JPA 常用注解的一站式說明。 @Component注解 @Component 注解表明被注解的類是一個(gè)“spring bean/組件”。@Component注解告訴Spring容器自動(dòng)創(chuàng)建Spring bean。 @Autowired注解 @Autowired 注解用于自動(dòng)注入 bean。@Autowired 注

    2024年02月15日
    瀏覽(25)
  • 【Java】Spring Boot 日志文件

    【Java】Spring Boot 日志文件

    日志是程序的重要組成部分,想象一下,如果程序報(bào)錯(cuò)了,不讓你打開控制臺(tái)看日志,那么你能找到報(bào)錯(cuò)的原因嗎。 日志對(duì)于我們來說,最主要的用途就是排除和定位問題。除了發(fā)現(xiàn)和定位問題之外,我們還可以通過日志實(shí)現(xiàn)以下功能: 記錄用戶登錄日志,方便分析用戶是

    2024年02月01日
    瀏覽(45)
  • Java Spring Boot 開發(fā)框架

    Spring Boot是一種基于Java編程語言的開發(fā)框架,它的目標(biāo)是簡化Java應(yīng)用程序的開發(fā)過程。Spring Boot提供了一種快速、易于使用的方式來創(chuàng)建獨(dú)立的、生產(chǎn)級(jí)別的Java應(yīng)用程序。本文將介紹Spring Boot的特性、優(yōu)勢(shì)以及如何使用它來開發(fā)高效、可靠的應(yīng)用程序。 Spring Boot是由Pivotal團(tuán)隊(duì)

    2024年02月08日
    瀏覽(24)
  • 【Spring Boot】Spring Boot 集成 RocketMQ 實(shí)現(xiàn)簡單的消息發(fā)送和消費(fèi)

    【Spring Boot】Spring Boot 集成 RocketMQ 實(shí)現(xiàn)簡單的消息發(fā)送和消費(fèi)

    本文主要有以下內(nèi)容: 簡單消息的發(fā)送 順序消息的發(fā)送 RocketMQTemplate的API介紹 環(huán)境搭建: RocketMQ的安裝教程:在官網(wǎng)上下載bin文件,解壓到本地,并配置環(huán)境變量,如下圖所示: 在 Spring boot 項(xiàng)目中引入 RocketMQ 依賴: 在application.yml增加相關(guān)配置: 在 Spring Boot 中使用RocketM

    2024年02月14日
    瀏覽(93)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包