25.

Spring BootでGmailからメール送信する方法

ページの作成
テンプレートを更新

ページの作成

親となるページを選択してください。

ページは必ず何かしらの親ページに紐づきます。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球

子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール

親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!

前提

・Spring Boot 2

・mavenを使用(gradleでも読み替えれば可)

・Googleアカウント作成済み

 

ライブラリの追加

pom.xmlに以下の記述を追加する。

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

 

プロパティの設定

application.propertiesに以下の記述を追加する。

spring.mail.host=smtp.gmail.com
spring.mail.port=587
spring.mail.username=Gmailアドレスを記述
spring.mail.password=後述
spring.mail.properties.mail.smtp.auth=true
spring.mail.properties.mail.smtp.starttls.enable=true

passwordにはアプリ用のパスワードを発行して設定する必要がある。

 

アプリパスワードの発行

こちらの公式ドキュメントを参考にアプリパスワードを発行する。

 

メールの送信

以下、バッチアプリでのメール送信例。

import org.springframework.batch.core.configuration.annotation.EnableBatchProcessing;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.CommandLineRunner;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

import org.springframework.mail.MailSender;
import org.springframework.mail.SimpleMailMessage;

@SpringBootApplication
@EnableBatchProcessing
public class SampleApplication implements CommandLineRunner{

    @Autowired
    MailSender mailSender;

    
    public static void main(String[] args) {
        SpringApplication.run(SampleApplication.class, args);
    }
    
    @Override
    public void run(String... args) throws Exception {

        SimpleMailMessage msg = new SimpleMailMessage();
        msg.setFrom("送信元のアドレスを記述");
        msg.setTo("送信先のアドレスを記述");
        msg.setSubject("タイトルを記述");
        msg.setText("本文を記述");
        this.mailSender.send(msg);     
   
    }
}

 

本文の改行

本文内で改行する場合は「\r\n」と記述すれば良い。

子ページ
子ページはありません
同階層のページ
  1. インストール(eclipseプラグイン)
  2. クイックスタート
  3. プロジェクトの作成
  4. Spring Bootプロジェクトの作成
  5. Spring Bootプロジェクトの実行
  6. Spring BootでHello World!
  7. アノテーション一覧
  8. DB接続設定からエンティティおよびリポジトリの作成、値の取得まで(JPA編)
  9. DB接続設定や値の取得(JdbcTemplate編)
  10. ビューから値をモデルに格納しコントローラーで受け取る方法
  11. コントローラーにてモデルに値を格納してビューに渡す方法
  12. テンプレートエンジン
  13. ModelとModelAndViewの違い
  14. AOPの使用方法
  15. classpath: 内部ファイルの読み込み
  16. file: 外部ファイルの読み込み
  17. CSVファイルアップロード方法(Ajax)
  18. CSVファイルダウンロード方法(Ajax)
  19. Spring Bootプロジェクトのビルドと本番環境へのデプロイ方法(内部tomcat使用)
  20. Application.propertiesの環境依存設定の分割方法
  21. JPAにおけるEntityManagerの取得方法
  22. JPAにおけるjava.sql.Connectionの取得方法
  23. エラー一覧
  24. jarの引数を受け取る方法
  25. Spring BootでGmailからメール送信
  26. 複数のDBに接続する設定(Spring Boot & JPA編)
  27. ポート番号の変更
  28. Basic認証の実装と特定のURLに限定する方法
  29. Spring SecurityのBasic認証の無効化
  30. 独自のエラーページを定義する方法
  31. プロパティファイルの値やjar実行時の引数を取得する方法

最近の質問

コメント一覧

コメントがありません

ログインしなければコメント投稿はできません。