简单的Java可视化邮件发送Demo


简单的邮件可视化发送demo,可是发送带有附件的邮件
资源截图
代码片段和文件信息
package com.aimilin.email.domain;

import java.io.File;
import java.io.UnsupportedEncodingException;
import java.util.Date;

import javax.mail.internet.MimeUtility;

import org.apache.commons.lang.StringUtils;
import org.apache.commons.mail.EmailAttachment;
import org.apache.commons.mail.EmailException;
import org.apache.commons.mail.MultiPartEmail;
import org.apache.log4j.Logger;

import com.aimilin.frame.Mainframe;
import com.aimilin.utils.frameFactory;

/**
 * 类说明:封装邮件信息
 * 
 * @author 作者: LiuJunGuang
 * @version 创建时间:2011-7-22 下午06:03:06
 */
public class MailBean {
static Logger logger = Logger.getLogger(MailBean.class);
/**
 * 收件人
 */
public String to = null;
/**
 * 主题
 */
public String subject = null;
/**
 * 发件人
 */
public String from = null;
/**
 * 抄送人
 */
public String cc = null;
/**
 * 密送人
 */
public String bcc = null;
/**
 * 附件名称
 */
public String file = null;
/**
 * 用户名
 */
public String username = null;
/**
 * 密码
 */
public String password = null;
/**
 * 发件时间(接收时间)
 */
public Date date = new Date();
/**
 * 正文内容
 */
public String content = null;

public boolean send() throws EmailException UnsupportedEncodingException {
logger.debug(“准备发送邮件!“);
if (Mainframe.para == null) {
frameFactory.showMessage(“请先初始化邮件信息!“);
return false;
}
init();
MultiPartEmail e = new MultiPartEmail();
e.setDebug(true);
ServerParameter p = Mainframe.para;
e.setSSL(p.isSmtpSSL());
e.setSmtpPort(p.getSmtpPort());
e.setHostName(p.getSmtpHost());
e.setAuthentication(p.getUsername() p.getPassword());
e.addTo(this.to);
e.setFrom(p.getUsername());
e.setSentDate(this.date);
e.setSubject(this.subject);
e.setCharset(p.getCharset());
e.setMsg(this.content);
if (StringUtils.isNotBlank(this.file)) {
EmailAttachment attach = new EmailAttachment();
attach.setDescription(“attachment“);
attach.setDisposition(EmailAttachment.ATTACHMENT);
int index = file.lastIndexOf(File.separator);
String fileName = file.substring(index == 0 ? 0 : index + 1);
attach.setName(MimeUtility.encodeText(fileName p.getCharset() “B“));
attach.setPath(this.file);
e.attach(attach);
}
e.send();
logger.debug(“邮件发送成功!“ + this);
return true;
}

/**
 * 初始化本类对象
 * @author LiuJunGuang
 * @date 2012-11-17下午10:19:44
 */
private void init() {
ServerParameter p = Mainframe.para;
this.from = p.getUsername();
this.username = p.getUsername();
this.password = p.getPassword();

}

@Override
public String toString() {
return “MailBean [to=“ + to + “ subject=“ + subject + “ from=“ + from + “ cc=“ + cc + “ bcc=“ + bcc
+ “ file=“ + file + “ username=“ + username + “ password=“ + password + “ date=“ + date
+ “ content=“ + content + “]“;
}

//测试文件路径
public static void main(String[] args) {
String file = “D:\Documents\Downloads\DNA样品.xls“;
in

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2012-11-17 22:45  email
     文件     6302818  2012-11-17 22:41  email.jar
     文件        1169  2012-11-17 18:29  email.classpath
     文件         381  2012-11-17 10:57  email.project
     目录           0  2012-11-17 22:45  email.settings
     文件         598  2012-11-17 09:23  email.settingsorg.eclipse.jdt.core.prefs
     目录           0  2012-11-17 22:45  emailin
     目录           0  2012-11-17 22:45  emailincom
     目录           0  2012-11-17 22:45  emailincomaimilin
     目录           0  2012-11-17 18:29  emailincomaimilinchart
     目录           0  2012-11-17 22:45  emailincomaimilinemail
     目录           0  2012-11-17 22:45  emailincomaimilinemaildomain
     文件        4543  2012-11-17 22:40  emailincomaimilinemaildomainMailBean.class
     文件        2727  2012-11-17 18:29  emailincomaimilinemaildomainServerParameter.class
     目录           0  2012-11-17 18:29  emailincomaimilinexcel
     目录           0  2012-11-17 22:45  emailincomaimilinframe
     文件        3323  2012-11-17 20:44  emailincomaimilinframeMainframe.class
     文件        1243  2012-11-17 20:44  emailincomaimilinframeMyMain$1.class
     文件        1294  2012-11-17 20:44  emailincomaimilinframeMyMain.class
     文件        1534  2012-11-17 22:40  emailincomaimilinframeSendMailframe$1.class
     文件        1076  2012-11-17 22:40  emailincomaimilinframeSendMailframe$2.class
     文件        4330  2012-11-17 22:40  emailincomaimilinframeSendMailframe.class
     文件        7969  2012-11-17 22:37  emailincomaimilinframeSetMailServerframe.class
     目录           0  2012-11-17 22:45  emailincomaimilinutils
     文件         847  2012-11-17 21:44  emailincomaimilinutilsCheckUtils.class
     文件         791  2012-11-17 18:29  emailincomaimilinutilsConstants.class
     文件        1391  2012-11-17 20:45  emailincomaimilinutilsframeFactory.class
     文件        3830  2012-11-17 19:06  emailincomaimilinutilsPropertyUtils.class
     文件        1024  2012-11-17 13:59  emailinlog4j.xml
     目录           0  2012-11-17 22:45  emaillib
     文件      232019  2012-11-17 09:31  emaillibcommons-beanutils-1.8.3.jar
............此处省略34个文件信息

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。

发表评论

评论列表(条)