用自各儿的邮件服务器发送邮件到外网-转-已测试
用自己的邮件服务器发送邮件到外网-转-已测试
import java.util.Properties;
import javax.activation.DataHandler;
import javax.activation.DataSource;
import javax.activation.FileDataSource;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.URLName;
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;
public class SendMail {
public SendMail() {
// TODO Auto-generated constructor stub
}
public static void main(String[] args) {
// 初始化信息
String sender = "yangtest";
String password = "yangtest";
String smtpServer = "yangtest.com";
String from = "yangtest@yangtest.com";
String recipient = "yangtest@126.com";
String subject = "测试邮件主题";
String fileAttachment = ""; //附件
String content = "测试邮件内容";
// 配置服务器属性
Properties proper = new Properties();
proper.put("mail.smtp.host", smtpServer); // smtp服务器
proper.put("mail.smtp.auth", "true"); // 是否smtp认证
proper.put("mail.smtp.port", "25"); // 设置smtp端口
proper.put("mail.transport.protocol", "smtp"); // 发邮件协议
proper.put("mail.store.protocol", "pop3"); // 收邮件协议
// 配置邮件接收地址
InternetAddress[] receiveAddress = new InternetAddress[1];
try {
receiveAddress[0] = new InternetAddress(recipient);
} catch (AddressException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// smtp认证,获取Session
SmtpAuth sa = new SmtpAuth();
sa.setUserinfo(sender, password);
Session session = Session.getInstance(proper, sa);
session.setPasswordAuthentication(new URLName(smtpServer), sa
.getPasswordAuthentication());
// 构建邮件体
MimeMessage sendMess = new MimeMessage(session);
MimeBodyPart mbp = new MimeBodyPart();
MimeMultipart mmp = new MimeMultipart();
try {
// 邮件文本内容
mbp.setContent(content, "text/plain; charset=GBK");
mmp.addBodyPart(mbp);
// 附件处理
if(fileAttachment!=null&&fileAttachment!=""){
DataSource source = new FileDataSource(fileAttachment);
String name = source.getName();
mbp = new MimeBodyPart();
mbp.setDataHandler(new DataHandler(source));
mbp.setFileName(name);
mmp.addBodyPart(mbp);
}
// 邮件整体
sendMess.setSubject(subject);
sendMess.setContent(mmp);
// 发送邮件
sendMess.setFrom(new InternetAddress(from));
sendMess.setRecipients(Message.RecipientType.TO, receiveAddress);
Transport.send(sendMess);
System.out.println("发送成功");
} catch (MessagingException ex) {
ex.printStackTrace();
}
}
}
import java.util.Properties;
import javax.activation.DataHandler;
import javax.activation.DataSource;
import javax.activation.FileDataSource;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.URLName;
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;
public class SendMail {
public SendMail() {
// TODO Auto-generated constructor stub
}
public static void main(String[] args) {
// 初始化信息
String sender = "yangtest";
String password = "yangtest";
String smtpServer = "yangtest.com";
String from = "yangtest@yangtest.com";
String recipient = "yangtest@126.com";
String subject = "测试邮件主题";
String fileAttachment = ""; //附件
String content = "测试邮件内容";
// 配置服务器属性
Properties proper = new Properties();
proper.put("mail.smtp.host", smtpServer); // smtp服务器
proper.put("mail.smtp.auth", "true"); // 是否smtp认证
proper.put("mail.smtp.port", "25"); // 设置smtp端口
proper.put("mail.transport.protocol", "smtp"); // 发邮件协议
proper.put("mail.store.protocol", "pop3"); // 收邮件协议
// 配置邮件接收地址
InternetAddress[] receiveAddress = new InternetAddress[1];
try {
receiveAddress[0] = new InternetAddress(recipient);
} catch (AddressException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// smtp认证,获取Session
SmtpAuth sa = new SmtpAuth();
sa.setUserinfo(sender, password);
Session session = Session.getInstance(proper, sa);
session.setPasswordAuthentication(new URLName(smtpServer), sa
.getPasswordAuthentication());
// 构建邮件体
MimeMessage sendMess = new MimeMessage(session);
MimeBodyPart mbp = new MimeBodyPart();
MimeMultipart mmp = new MimeMultipart();
try {
// 邮件文本内容
mbp.setContent(content, "text/plain; charset=GBK");
mmp.addBodyPart(mbp);
// 附件处理
if(fileAttachment!=null&&fileAttachment!=""){
DataSource source = new FileDataSource(fileAttachment);
String name = source.getName();
mbp = new MimeBodyPart();
mbp.setDataHandler(new DataHandler(source));
mbp.setFileName(name);
mmp.addBodyPart(mbp);
}
// 邮件整体
sendMess.setSubject(subject);
sendMess.setContent(mmp);
// 发送邮件
sendMess.setFrom(new InternetAddress(from));
sendMess.setRecipients(Message.RecipientType.TO, receiveAddress);
Transport.send(sendMess);
System.out.println("发送成功");
} catch (MessagingException ex) {
ex.printStackTrace();
}
}
}