- Home ›
- JavaMailでメール送信 ›
- メールの送信 ›
- HERE
修正後のサンプルプログラム
広告
今までのページでメール送信に関数最低限の仕組みはご説明しました。一部修正を加えた方がいい箇所もあるので、下記に修正後のサンプルを載せておきます。日本語対応にし、Toに複数のアドレスを指定できるようにしています。
import java.util.*; import java.io.*; import javax.mail.*; import javax.mail.internet.*; import javax.activation.*; public class msgsendsample{ static String msgText = "This is a message body.¥nHere's the second line."; public static void main(String[] args){ if (args.length != 4){ usage(); System.exit(1); } System.out.println(); String to = args[0]; String from = args[1]; String host = args[2]; boolean debug = Boolean.valueOf(args[3]).booleanValue(); Properties props = new Properties(); props.put("mail.smtp.host", host); props.put("mail.host", host); props.put("mail.from", from); if (debug){ props.put("mail.debug", args[3]); } Session session = Session.getInstance(props); session.setDebug(debug); try{ MimeMessage msg = new MimeMessage(session); msg.setFrom(new InternetAddress(from)); InternetAddress[] address = InternetAddress.parse(args[0]); msg.setRecipients(Message.RecipientType.TO, address); msg.setSubject("JavaMail APIs Test", "ISO-2022-JP"); msg.setSentDate(new Date()); msg.setText(msgText, "ISO-2022-JP"); Transport.send(msg); }catch(MessagingException mex){ System.out.println("¥n--Exception handling in msgsendsample.java"); mex.printStackTrace(); } } private static void usage(){ System.out.println("usage: java msgsendsample <to> <from> <smtp> true|false"); } }
( Written by Tatsuo Ikura )