?? mailhelper.java
字號:
package com.j2ee.mail;
import java.util.*;
import java.io.*;
import javax.mail.*;
import javax.mail.internet.*;
import javax.activation.*;
import javabean.sinosure.util.Utility;
/**
* 創建并發送一封郵件
*/
public class MailHelper
{
private boolean ifSuccess=true;
private MimeMessage mimeMsg; //MIME郵件對象
private Session session; //郵件會話對象
private Properties props; //系統屬性
private Multipart mp; //Multipart對象,郵件內容,標題,附件等內容均添加到
//其中后再生成MimeMessage對象
public boolean getIfSuccess()
{
return ifSuccess;
}
public synchronized void createAndSendMail(EMailMessage eMess)
{
try
{
props = System.getProperties(); //獲得系統屬性對象
//props.put("mail.smtp.host",EMailMessage.HOST); //設置SMTP主機
props.put("mail.smtp.host","1.1.1.1"); //設置SMTP主機
//props.put("mail.smtp.host","mail.sinosure.com.cn"); //設置SMTP主機
//
if (eMess.getNeedAuth()==true) //設置smtp身份認證
{
props.put("mail.smtp.auth","true");
}
else
{
props.put("mail.smtp.auth","false");
}
//
session = Session.getDefaultInstance(props,null);//獲得郵件會話對象
if (Debug.debuggingOn)
{
session.setDebug(true);
}
mimeMsg = new MimeMessage(session); //創建MIME郵件對象
mp = new MimeMultipart();
//
//設置郵件主題
if (!eMess.getSubject().equals(""))
{
mimeMsg.setSubject(eMess.getSubject(),"UTF-8");
}
//設置郵件正文
if (!eMess.getContents().equals(""))
{
BodyPart bp = new MimeBodyPart();
bp.setContent("<meta http-equiv=Content-Type content=text/html;charset=UTF-8>"+eMess.getContents(),"text/html;charset=UTF-8");
mp.addBodyPart(bp);
}
//添加郵件附件
if (!eMess.getFilePath().equals(""))
{
BodyPart bp = new MimeBodyPart();
FileDataSource fileds = new FileDataSource(eMess.getFilePath());
bp.setDataHandler(new DataHandler(fileds));
bp.setFileName(fileds.getName());
mp.addBodyPart(bp);
}
//設置發信人
if (!eMess.getSender().equals(""))
{
mimeMsg.setFrom(new InternetAddress(eMess.getSender()));
}
//設置收信人
if (!eMess.getReceiver().equals(""))
{
mimeMsg.setRecipients(Message.RecipientType.TO,InternetAddress.parse(eMess.getReceiver()));
}
//設置抄送人
if (!eMess.getCopyTo().equals(""))
{
mimeMsg.setRecipients(Message.RecipientType.CC,(Address[])InternetAddress.parse(eMess.getCopyTo()));
}
//
//mimeMsg.setHeader("X-Mailer", "JavaMailer");
//mimeMsg.setContent(mp);
//mimeMsg.setSentDate(new Date());
//Transport.send(mimeMsg);
//回執
mimeMsg.addHeader("Disposition-Notification-To:","");
//
mimeMsg.setContent(mp);
mimeMsg.saveChanges();
Session mailSession = Session.getInstance(props,null);
Transport transport = mailSession.getTransport("smtp");
transport.connect((String)props.get("mail.smtp.host"),eMess.getUserName(),eMess.getPassword());
transport.send(mimeMsg);
transport.close();
ifSuccess=true;
}
catch (Exception e)
{
ifSuccess=false;
Utility.logError(e.toString());
}
}
};
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -