javaMail发送邮件
JavaMail发送邮件 源码
1、SendEmail 发送邮件类
import java.util.Properties;
import javax.mail.*;
import javax.mail.internet.*;
public class SendEmail {
public static void main(String args[]) { try { // 发件人使用发邮件的电子信箱服务器 String host = "smtp.126.com"; // 发邮件的出发地(发件人的信箱) String from="[email protected]"; // 发邮件的目的地(收件人信箱) String to = "[email protected]"; // 创建 properties ,里面包含了发送邮件服务器的地址。 Properties props = new Properties(); // 发送邮件服务器的地址 props.put("mail.smtp.host", host); //通过验证 默认为false props.put("mail.smtp.auth", "true"); //校验发信人权限
Email_Autherticator myauth = new Email_Autherticator("[email protected]", "xxxxx"); // 创建 session Session session = Session.getDefaultInstance(props, myauth); // 创建 邮件的message,message对象包含了邮件众多有的部件,都是封装成了set方法去设置的
} } MimeMessage message = new MimeMessage(session); // 设置发信人 message.setFrom(new InternetAddress(from)); // 收信人 message.addRecipient(Message.RecipientType.TO, new InternetAddress(to)); // 邮件标题 message.setSubject("javamail测试!"); // 邮件内容 message.setText("这是用java写的发送电子邮件的测试程序!"); // 保存以上工作 message.saveChanges(); //Transport transport = session.getTransport("smtp"); //发送邮件 Transport.send(message); } catch (Exception ex) { } ex.printStackTrace();
2、Email_Autherticator 校验发信人权限
import javax.mail.PasswordAuthentication;
/**
* 校验发信人权限的方法
* @author Administrator
*
*/
class Email_Autherticator extends javax.mail.Authenticator {
} protected PasswordAuthentication getPasswordAuthentication() { } return new PasswordAuthentication(strUser, strPwd); public Email_Autherticator(String user, String password) { } this.strUser = user; this.strPwd = password; private String strUser; private String strPwd;