- 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 )
JavaDrive