javax.mail的实现

package util;

import java.net.InetAddress;
import java.net.UnknownHostException;
import java.util.Date;
import java.util.Properties;

import javax.mail.Authenticator;
import javax.mail.MessagingException;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Transport;
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() {
 }
 
 /**
  * 发送邮件
  * @param serverEmailSmtp  邮件服务器地址
  * @param serverEmail 发出邮件邮箱
  * @param serverEmailPassword 发出邮箱密码
  * @param serverEmailUsername 发出邮箱用户名
  * @param clientEmail 要发至的邮箱
  * @param mailTitle  邮件标题
  * @param mailCobntents 邮箱内容
  * @throws UnknownHostException
  */
 public void send(String serverEmailSmtp,String serverEmail,String serverEmailPassword,String serverEmailUsername,String clientEmail,String mailTitle,String mailContents) throws UnknownHostException{
  
  try {
   Properties properties = new Properties();
   Session sendMailSession;
   Transport transport;
   properties.put("mail.smtp.auth", "true");
   properties.put("mail.smtp.host", serverEmailSmtp);
   properties.put("mail.smtp.user", serverEmail);
   properties.put("mail.smtp.password", serverEmailPassword);
   PopupAuthenticator popA = new PopupAuthenticator();//邮件安全认证
   popA.perforCheck(serverEmailUsername,serverEmailPassword);
   sendMailSession =Session.getInstance(properties, popA);
   MimeMessage mimeMessage = new MimeMessage(sendMailSession);
   
   mimeMessage.setFrom(new InternetAddress(serverEmail));
   mimeMessage.setRecipient(MimeMessage.RecipientType.TO, new InternetAddress(clientEmail));
   mimeMessage.setSubject(mailTitle);
   mimeMessage.setSentDate(new Date());
   MimeMultipart mimeMultipart = new MimeMultipart("related");
   MimeBodyPart mimeBodyPart = new MimeBodyPart();
   mailContents +="<br><a href=\"http://"+getIpAddress()+":8080/IcpProject_ISP/system/activeUser.jsp\">点击此处激活<a>";
   mimeBodyPart.setContent(mailContents,"text/html;charset=UTF-8");
   mimeMultipart.addBodyPart(mimeBodyPart);
   mimeMessage.setContent(mimeMultipart);
   /**
    * String mailContent=mailContents;
    * mailContent+="你好!tobey\n\n";
    * mailContent +=new Date();
    * mailContent +="<a herf=\"http://www.163.com\">邮件<a>";
    * mimeMessage.setText(mailContent);
    */
   transport=sendMailSession.getTransport("smtp");
   transport.send(mimeMessage);
  } catch (MessagingException e) {
   e.printStackTrace();
  }
 }
 
 public String getIpAddress() throws UnknownHostException{
  InetAddress localHost = InetAddress.getLocalHost();
  return localHost.getHostAddress();
 }
 
 
 
 public class PopupAuthenticator extends Authenticator{
  String username=null;
  String password=null;
  public PopupAuthenticator() {
  }
  public PasswordAuthentication perforCheck(String user, String pass) {
   this.username = user;
   this.password = pass;
   return getPasswordAuthentication();
  }
  protected PasswordAuthentication getPasswordAuthentication(){
   return new PasswordAuthentication(username,password) ;
   
  }
 }
 
 public static void main(String[] args) throws UnknownHostException {
  SendMail sendMail = new SendMail();
  //sendMail.send();
  sendMail.send("smtp.sina.com", "TobeyMing@sina.com", "111111111", "TobeyMing", "TobeyMing@hotmail.com", "主题内容", "How are you?");
  //SystemParameter.initProperties();
  String mailContent ="用户名"+"123"+ "密码" + "123";
  //new SendMail().send(SystemParameter.SERVER_EMAIL_SMTP,SystemParameter.SERVER_EMAIL,SystemParameter.SERVER_EMAIL_PASSWORD,SystemParameter.SERVER_EMAIL_USERNAME,"TobeyMing@hotmail.com"+"通知"+"mailContent");

 }
}
  

转载于:https://my.oschina.net/TobeyMing/blog/785859

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值