/**
*
*/
package com.javamail.net;
*
*/
package com.javamail.net;
import java.io.File;
import java.io.UnsupportedEncodingException;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.ArrayList;
import java.util.Date;
import java.util.Properties;
import com.javamail.net.StringHelper;
import java.io.UnsupportedEncodingException;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.ArrayList;
import java.util.Date;
import java.util.Properties;
import com.javamail.net.StringHelper;
import javax.activation.DataHandler;
import javax.activation.FileDataSource;
import javax.mail.Address;
import javax.mail.MessagingException;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.AddressException;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeBodyPart;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeMultipart;
import javax.mail.internet.MimeUtility;
import javax.activation.FileDataSource;
import javax.mail.Address;
import javax.mail.MessagingException;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.AddressException;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeBodyPart;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeMultipart;
import javax.mail.internet.MimeUtility;
/**
*
*
*/
public class mailtest {
final public static int TO = 0;
final public static int CC = 1;
final public static int BCC = 2;
/**
*
* @param args
* @throws MessagingException
*
*/
public static void main(String args[]) throws MessagingException {
mailtest mail = new mailtest();
Address[] ar = new Address[2];
for (int i = 0; i < args.length; i++) {
/**
*
* @param args
* @throws MessagingException
*
*/
public static void main(String args[]) throws MessagingException {
mailtest mail = new mailtest();
Address[] ar = new Address[2];
for (int i = 0; i < args.length; i++) {
ar[i] = new InternetAddress(args[i]);
}
String address = InternetAddress.toString(ar);
MyAuthenticator myauth = new MyAuthenticator(" [email]willmore2007@sina.com[/email]",
"dreamcast");
mail.setAddress(address, mailtest.TO);
String address = InternetAddress.toString(ar);
MyAuthenticator myauth = new MyAuthenticator(" [email]willmore2007@sina.com[/email]",
"dreamcast");
mail.setAddress(address, mailtest.TO);
mail.setFromAddress("
[email]willmore2007@sina.com[/email]");
mail.setSMTPHost("smtp.sina.com", "willmore2007", "dreamcast");
mail.setSubject("11111");
mail.setHtmlBody("hahahahahaha");
mail.sendBatch(myauth);
}
mail.setSMTPHost("smtp.sina.com", "willmore2007", "dreamcast");
mail.setSubject("11111");
mail.setHtmlBody("hahahahahaha");
mail.sendBatch(myauth);
}
private String mailSMTPHost = null;
private String mailUser = null;
private String mailPassword = null;
private String mailFromAddress = null;
private String mailSubject = "";
private Address[] mailTOAddress = null;
private Address[] mailCCAddress = null;
private Address[] mailBCCAddress = null;
private MimeMultipart mailBody = null;
public mailtest() {
mailBody = new MimeMultipart();
}
mailBody = new MimeMultipart();
}
public void sendBatch(MyAuthenticator myauth) throws MessagingException {
Properties properties = new Properties();
Session session = null;
// Setup mail server
properties.put("mail.smtp.host", mailSMTPHost);
Properties properties = new Properties();
Session session = null;
// Setup mail server
properties.put("mail.smtp.host", mailSMTPHost);
// Get session
properties.put("mail.smtp.auth", "true");
if(myauth ==null)
session = Session.getDefaultInstance(properties,null);
else
session = Session.getInstance(properties, myauth);
session.setDebug(true);
MimeMessage mimemessage = new MimeMessage(session);
mimemessage.setFrom(new InternetAddress(this.mailFromAddress));
if (mailTOAddress != null) {
mimemessage.addRecipients(javax.mail.Message.RecipientType.TO,
this.mailTOAddress);
}
if (mailCCAddress != null) {
mimemessage.addRecipients(javax.mail.Message.RecipientType.CC,
this.mailCCAddress);
}
if (mailBCCAddress != null) {
mimemessage.addRecipients(javax.mail.Message.RecipientType.BCC,
this.mailBCCAddress);
}
mimemessage.setSubject(this.mailSubject);
mimemessage.setContent(this.mailBody);
mimemessage.setSentDate(new Date());
Transport transport = session.getTransport("smtp");
transport.connect(this.mailSMTPHost, this.mailUser, this.mailPassword);
Transport.send(mimemessage);
System.out.println("has been sent the mail to:");
if (mailTOAddress != null) {
for (int i = 0; i < mailTOAddress.length; i++) {
System.out.println(mailTOAddress[i]);
}
}
if (mailCCAddress != null) {
for (int i = 0; i < mailTOAddress.length; i++) {
System.out.println(mailCCAddress[i]);
}
}
if (mailBCCAddress != null) {
for (int i = 0; i < mailTOAddress.length; i++) {
System.out.println(mailBCCAddress[i]);
}
}
}
properties.put("mail.smtp.auth", "true");
if(myauth ==null)
session = Session.getDefaultInstance(properties,null);
else
session = Session.getInstance(properties, myauth);
session.setDebug(true);
MimeMessage mimemessage = new MimeMessage(session);
mimemessage.setFrom(new InternetAddress(this.mailFromAddress));
if (mailTOAddress != null) {
mimemessage.addRecipients(javax.mail.Message.RecipientType.TO,
this.mailTOAddress);
}
if (mailCCAddress != null) {
mimemessage.addRecipients(javax.mail.Message.RecipientType.CC,
this.mailCCAddress);
}
if (mailBCCAddress != null) {
mimemessage.addRecipients(javax.mail.Message.RecipientType.BCC,
this.mailBCCAddress);
}
mimemessage.setSubject(this.mailSubject);
mimemessage.setContent(this.mailBody);
mimemessage.setSentDate(new Date());
Transport transport = session.getTransport("smtp");
transport.connect(this.mailSMTPHost, this.mailUser, this.mailPassword);
Transport.send(mimemessage);
System.out.println("has been sent the mail to:");
if (mailTOAddress != null) {
for (int i = 0; i < mailTOAddress.length; i++) {
System.out.println(mailTOAddress[i]);
}
}
if (mailCCAddress != null) {
for (int i = 0; i < mailTOAddress.length; i++) {
System.out.println(mailCCAddress[i]);
}
}
if (mailBCCAddress != null) {
for (int i = 0; i < mailTOAddress.length; i++) {
System.out.println(mailBCCAddress[i]);
}
}
}
public void setAddress(String strAddress, int iAddressType)
throws AddressException {
switch (iAddressType) {
case mailtest.TO: {
ArrayList alAddress = StringHelper.spilt(strAddress, ",");
mailTOAddress = new Address[alAddress.size()];
for (int i = 0; i < alAddress.size(); i++) {
mailTOAddress[i] = new InternetAddress((String) alAddress
.get(i));
}
break;
}
case mailtest.CC: {
ArrayList alAddress = StringHelper.spilt(strAddress, ",");
mailCCAddress = new Address[alAddress.size()];
for (int i = 0; i < alAddress.size(); i++) {
mailCCAddress[i] = new InternetAddress((String) alAddress
.get(i));
}
break;
}
case mailtest.BCC: {
ArrayList alAddress = StringHelper.spilt(strAddress, ",");
mailBCCAddress = new Address[alAddress.size()];
for (int i = 0; i < alAddress.size(); i++) {
mailBCCAddress[i] = new InternetAddress((String) alAddress
.get(i));
}
break;
}
}
}
throws AddressException {
switch (iAddressType) {
case mailtest.TO: {
ArrayList alAddress = StringHelper.spilt(strAddress, ",");
mailTOAddress = new Address[alAddress.size()];
for (int i = 0; i < alAddress.size(); i++) {
mailTOAddress[i] = new InternetAddress((String) alAddress
.get(i));
}
break;
}
case mailtest.CC: {
ArrayList alAddress = StringHelper.spilt(strAddress, ",");
mailCCAddress = new Address[alAddress.size()];
for (int i = 0; i < alAddress.size(); i++) {
mailCCAddress[i] = new InternetAddress((String) alAddress
.get(i));
}
break;
}
case mailtest.BCC: {
ArrayList alAddress = StringHelper.spilt(strAddress, ",");
mailBCCAddress = new Address[alAddress.size()];
for (int i = 0; i < alAddress.size(); i++) {
mailBCCAddress[i] = new InternetAddress((String) alAddress
.get(i));
}
break;
}
}
}
public void setFileAttachment(String strFileAttachment)
throws MessagingException, UnsupportedEncodingException {
File path = new File(strFileAttachment);
if (!path.exists() || path.isDirectory()) {
return;
}
String strFileName = path.getName();
MimeBodyPart mimebodypart = new MimeBodyPart();
mimebodypart.setDataHandler(new DataHandler(new FileDataSource(
strFileAttachment)));
mimebodypart.setFileName(MimeUtility.encodeText(strFileName));
mailBody.addBodyPart(mimebodypart);
}
throws MessagingException, UnsupportedEncodingException {
File path = new File(strFileAttachment);
if (!path.exists() || path.isDirectory()) {
return;
}
String strFileName = path.getName();
MimeBodyPart mimebodypart = new MimeBodyPart();
mimebodypart.setDataHandler(new DataHandler(new FileDataSource(
strFileAttachment)));
mimebodypart.setFileName(MimeUtility.encodeText(strFileName));
mailBody.addBodyPart(mimebodypart);
}
public void setFromAddress(String strFromAddress) {
this.mailFromAddress = strFromAddress;
}
this.mailFromAddress = strFromAddress;
}
public void setHtmlBody(String strHtmlBody) throws MessagingException {
MimeBodyPart mimebodypart = new MimeBodyPart();
mimebodypart.setDataHandler(new DataHandler(strHtmlBody,
"text/html;charset=GBK"));
mailBody.addBodyPart(mimebodypart);
}
MimeBodyPart mimebodypart = new MimeBodyPart();
mimebodypart.setDataHandler(new DataHandler(strHtmlBody,
"text/html;charset=GBK"));
mailBody.addBodyPart(mimebodypart);
}
public void setSMTPHost(String strSMTPHost, String strUser,
String strPassword) {
this.mailSMTPHost = strSMTPHost;
this.mailUser = strUser;
this.mailPassword = strPassword;
}
public void setSubject(String strSubject) {
this.mailSubject = strSubject;
}
this.mailSubject = strSubject;
}
public void setTextBody(String strTextBody) throws MessagingException {
MimeBodyPart mimebodypart = new MimeBodyPart();
mimebodypart.setText(strTextBody, "GBK");
mailBody.addBodyPart(mimebodypart);
}
MimeBodyPart mimebodypart = new MimeBodyPart();
mimebodypart.setText(strTextBody, "GBK");
mailBody.addBodyPart(mimebodypart);
}
public void setURLAttachment(String strURLAttachment)
throws MessagingException, MalformedURLException {
MimeBodyPart mimebodypart = new MimeBodyPart();
mimebodypart.setDataHandler(new DataHandler(new URL(strURLAttachment)));
mailBody.addBodyPart(mimebodypart);
}
}
throws MessagingException, MalformedURLException {
MimeBodyPart mimebodypart = new MimeBodyPart();
mimebodypart.setDataHandler(new DataHandler(new URL(strURLAttachment)));
mailBody.addBodyPart(mimebodypart);
}
}
转载于:https://blog.51cto.com/245698/43836