欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

springboot發(fā)送郵件功能的實(shí)現(xiàn)代碼

 更新時(shí)間:2021年07月19日 09:54:49   作者:yunhai.du  
發(fā)郵件是一個(gè)很常見(jiàn)的功能,在java中實(shí)現(xiàn)需要依靠JavaMailSender這個(gè)接口,今天通過(guò)本文給大家分享springboot發(fā)送郵件功能的實(shí)現(xiàn)代碼,感興趣的朋友跟隨小編一起看看吧

       發(fā)郵件是一個(gè)很常見(jiàn)的功能,在java中實(shí)現(xiàn)需要依靠JavaMailSender這個(gè)接口。在springboot項(xiàng)目中需要引入名為 spring-boot-starter-mail 的依賴(lài),如果對(duì)郵件的格式有要求的話(huà)可以引入可以操作html文件的  spring-boot-starter-thymeleaf 依賴(lài)。

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

和其他自動(dòng)化配置模塊一樣,在完成了依賴(lài)引入之后,還需要在application.properties中配置相應(yīng)的屬性值,否則運(yùn)行方法會(huì)一直報(bào)空指針。

一、新建一個(gè)springboot項(xiàng)目。

1、打開(kāi)idea,點(diǎn)擊左上角工具欄file按鈕 ,新建一個(gè)boot項(xiàng)目

2.點(diǎn)擊next ,選擇默認(rèn)的依賴(lài),常見(jiàn)的有數(shù)據(jù)庫(kù)連接,web等

 

3、點(diǎn)擊finsh,等待boot項(xiàng)目目錄等生成。此時(shí)的目錄是不全的需要自己新加java以及resources文件夾。右鍵項(xiàng)目選擇

進(jìn)行增加操作。

 

4、然后打開(kāi)pom文件,引入依賴(lài)。

5、打開(kāi)配置文件,寫(xiě)上對(duì)應(yīng)的參數(shù),

 到此項(xiàng)目建成,開(kāi)始寫(xiě)測(cè)試類(lèi)。

二、發(fā)送郵件

 1、建一個(gè)util類(lèi),寫(xiě)一個(gè)實(shí)現(xiàn)發(fā)送邏輯的業(yè)務(wù)類(lèi),沒(méi)什么要寫(xiě)工具類(lèi),因?yàn)槲蚁氚l(fā)送郵件的時(shí)候可以實(shí)現(xiàn)種格式,帶附件帶html樣式以及可以異步操作的郵件,尤其異步大家都知道發(fā)郵件是很耗時(shí)的。

2、補(bǔ)一個(gè)異步調(diào)用的寫(xiě)法:

        *需要異步的方法加@Async 
        *需要在啟動(dòng)類(lèi)上加開(kāi)啟異步的方法,@EnableAsync     
        *注意可能應(yīng)該是因?yàn)閍op代理的緣故,被調(diào)用方法 和 調(diào)用處的代碼都處在同一個(gè)類(lèi)的話(huà),只是相當(dāng)于本類(lèi)調(diào)用,并沒(méi)有使用代理類(lèi) 從而@Async并沒(méi)有產(chǎn)生效果,就是在一個(gè)工具類(lèi)。

3、代碼 :帶有附件的郵件

 @Test
    public void sendAttachmentsMail() {
        Context context = new Context();
        context.setVariable("agencyName", "11");
        context.setVariable("busTypeName", "22");
        context.setVariable("busAllowance", 33);
        String emailContent = templateEngine.process("emailTeplate", context);
 
        try {
            emailService.sendAttachmentsMail(new String[]{"xxx.com"}, "測(cè)試提示", emailContent);
        } catch (Exception e) {
            e.printStackTrace();
        }
        System.out.println("send mail success!,please wait a few mintens");
    }
/**
     * fujian
     * @throws Exception
     */
    @Async
    public void sendAttachmentsMail(String[] to, String subject, String contnet) throws Exception {
 
        MimeMessage mimeMessage = mailSender.createMimeMessage();
        MimeMessageHelper helper = new MimeMessageHelper(mimeMessage, true);
        helper.setFrom("xxx.com");
        helper.setTo(to);
        helper.setSubject(subject);
        helper.setText(contnet,true);
        Path picturePath = Paths.get("E:\\WorkFiles\\testBill", "test.png");
        byte[] bytes = Files.readAllBytes(picturePath);
        helper.addAttachment("附件-1.jpg", picturePath.toFile());
 
        mailSender.send(mimeMessage);
 
    }

郵件發(fā)送成功

到此這篇關(guān)于springboot發(fā)送郵件的文章就介紹到這了,更多相關(guān)springboot發(fā)送郵件內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論