📄 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 + -