Session

JavaMailを使う場合、まずメイルサーバとの間のセッションを確立しなければなりません。メイルサーバとの間のセッションは、javax.mail.Sessionオブジェクトで実現されます。

SessionオブジェクトはSessionクラスのstaticメソッドを使って取得します。SessionクラスにはSessionオブジェクトを取得するためのstaticメソッドが4つ用意されています。

Defaultがついていないメソッドは新規にSessionオブジェクトを作成します。Defaultがついている場合、既にあるSessionオブジェクトが使われます(共有されることになります)。Authenticatorオブジェクトを指定しないメソッドはAuthenticatorにnullを指定した場合と同じです。Propertiesとして指定できるプロパティ情報は次の通りです(詳細はJavaMail API Design SpecificationのAppendix Aに記述されています)。

もっともこれらの値はあとで指定することもできますので、Sessionオブジェクトを取得する時点では空のPropertiesオブジェクトを指定しても問題ありません。

Authenticatorはメイルサーバとの接続に必要な認証情報を、メソッドに生で渡すのではなく、オブジェクトとして間接的に渡すための仕掛けです。Authenticatorをextendsした独自のクラスを作成して使用しますが、通常は気にせず、nullで良いです。

従って一番シンプルなセッションの取得方法は、

	Properties prop = new Properties();
	Session session = Session.getDefaultInstance(prop);
ということになります。


JavaMail  ソフトウェア研究室  PoisonSoft