发送邮件调用类,详情请见附件!
package com.siit.service; import java.util.ArrayList; import java.util.List; import java.util.TimerTask; import org.apache.log4j.Logger; import com.siit.dao.TInvoiceSapMailDAO; import com.siit.pojo.invoiceSapMail.TInvoiceSapMail; import com.siit.util.AttributeNames; import com.siit.util.ConfigInfoUtil; import com.siit.util.sendEmail.MailSender; import com.siit.util.sendEmail.MailSenderInfo; /** * @TODO:[系统定时向发票经办人发送提醒邮件] */ public class SysInvoiceSapMailBean extends TimerTask{ private static Logger logger = Logger.getLogger(SysInvoiceSapMailBean.class.getName()); @SuppressWarnings("unchecked") public void run() { logger.info("The system automatically send invoice agent reminded mail,Auto Begin-----"); System.out.println("The system automatically send invoice agent reminded mail,Auto Begin-----"); ConfigInfoUtil util = new ConfigInfoUtil(); if(util.isFalgMd5("IsSendInvoiceSapMailInfoFlag")){ // 开关,是否发送邮件 logger.info("【Start sending mail】"); System.out.println("【Start sending mail】"); /** 设置邮件发送服务器 **/ MailSenderInfo mailInfo = new MailSenderInfo(); // 这个类主要是设置邮件 mailInfo.setMailServerHost(AttributeNames.MAIL_SERVER_HOST); // 发送邮件的服务器的IP mailInfo.setMailServerPort(AttributeNames.MAIL_SERVER_POST); // 发送邮件的服务器的端口 mailInfo.setValidate(AttributeNames.MAIL_SERVER_VALIDATE); // 是否需要身份验证 mailInfo.setUserName(AttributeNames.MAIL_USERNAME); // 登陆邮件发送服务器的用户名 mailInfo.setPassword(AttributeNames.MAIL_PASSWORD); // 登陆邮件发送服务器的密码 mailInfo.setFromAddress(AttributeNames.MAIL_FORM_ADDRESS); // 邮件发送者的地址 TInvoiceSapMailDAO daoObj = new TInvoiceSapMailDAO(); List mailList = daoObj.getInvoiceSapMailInfo(); List invoiceIdList = new ArrayList(); // 存放发送数据的id TInvoiceSapMail vo = null; for (int i = 0; i < mailList.size(); i++) { vo = new TInvoiceSapMail(); vo = (TInvoiceSapMail)mailList.get(i); if(vo.getEmail()!=null && !"".equals(vo.getEmail())){ mailInfo.setToAddress(vo.getEmail().trim()); // 邮件接收者的地址 //mailInfo.setToAddress("2283280062@qq.com"); // TEST //mailInfo.setToAddress("18520839907@163.com"); // TEST mailInfo.setSubject("通过制证的发票单据号:"+checkNull(vo.getInvoiceNumber())); // 设置邮箱标题 StringBuffer buffer = new StringBuffer(""); buffer.append("<html><head>"); buffer.append("<style type='text/css'>" + ".STYLE1 {font-size: 13px; font-weight: bold; bgcolor='#FFFFFF'}" + ".STYLE3 {color: #707070; font-size: 12px; }" + "body {margin-top: 0px;margin-bottom: 0px;}</style></head>"); buffer.append("<body>"); buffer.append("<table width='100%' border='0' cellpadding='0' cellspacing='1' bgcolor='#c9c9c9'>" + "<tr>" + "<td height='30' colspan='2' class='STYLE1'>邮件内容</td>" + "</tr>" + "<tr>" + "<td height='22' bgcolor='#FFFFFF' class='STYLE1' align='left'>发票单据号</td>" + "<td height='22' bgcolor='#FFFFFF' class='STYLE3' align='left'>"+checkNull(vo.getInvoiceNumber())+"</td>" + "</tr>" + "<tr>" + "<td height='22' bgcolor='#FFFFFF' class='STYLE1' align='left'>供应商名称</td>" + "<td height='22' bgcolor='#FFFFFF' class='STYLE3' align='left'>"+checkNull(vo.getSupplierName())+"</td>" + "</tr>" + "<tr>" + "<td height='22' bgcolor='#FFFFFF' class='STYLE1' align='left'>供应商编码</td>" + "<td height='22' bgcolor='#FFFFFF' class='STYLE3' align='left'>"+checkNull(vo.getSupplierCode())+"</td>" + "</tr>" + "<tr>" + "<td height='22' bgcolor='#FFFFFF' class='STYLE1' align='left'>发票金额</td>" + "<td height='22' bgcolor='#FFFFFF' class='STYLE3' align='left'>"+checkNull(vo.getInvoiceMoney())+"</td>" + "</tr>" + "<tr>" + "<td height='22' bgcolor='#FFFFFF' class='STYLE1' align='left'>合同号</td>" + "<td height='22' bgcolor='#FFFFFF' class='STYLE3' align='left'>"+checkNull(vo.getContractCode())+"</td>" + "</tr>" + "<tr>" + "<td height='22' bgcolor='#FFFFFF' class='STYLE1' align='left'>发票校验的主体</td>" + "<td height='22' bgcolor='#FFFFFF' class='STYLE3' align='left'>"+checkNull(vo.getCompanyNo())+"</td>" + "</tr>" + "<tr>" + "<td height='22' bgcolor='#FFFFFF' class='STYLE1' align='left'>凭证号</td>" + "<td height='22' bgcolor='#FFFFFF' class='STYLE3' align='left'>"+checkNull(vo.getSapCode())+"</td>" + "</tr>" + "<tr>" + "<td height='22' bgcolor='#FFFFFF' class='STYLE1' align='left'>制证的会计</td>" + "<td height='22' bgcolor='#FFFFFF' class='STYLE3' align='left'>"+checkNull(vo.getOperatorAccountUser())+"</td>" + "</tr>" + "<tr>" + "<td height='60' bgcolor='#FFFFFF' colspan='2' align='right' class='STYLE3'>【XX系统】发送的提醒邮件,请勿回复!</td>" + "</tr>" + "</table>"); buffer.append("</body>"); buffer.append("</html>"); //以文本信息形式发送 /*buffer.append("邮件内容:").append("\n"); buffer.append("发票单据号:").append(vo.getInvoiceNumber()).append("\n"); buffer.append("供应商名称:").append(vo.getSupplierName()).append("\n"); buffer.append("供应商编码:").append(vo.getSupplierCode()).append("\n"); buffer.append("发票金额:").append(vo.getInvoiceMoney()).append("\n"); buffer.append("合同号:").append(vo.getContractCode()).append("\n"); buffer.append("发票校验的主体:").append(vo.getCompanyNo()).append("\n"); buffer.append("凭证号:").append(vo.getSapCode()).append("\n"); buffer.append("制证的会计:").append(vo.getOperatorAccountUser()).append("\n");*/ //mailInfo.setContent(buffer.toString()); // 设置邮箱内容 //boolean flag = MailSender.sendTextMail(mailInfo); // 发送文体格式 mailInfo.setContent(buffer.toString()); // 设置邮箱内容 boolean flag = MailSender.sendHtmlMail(mailInfo); // 发送html格式 logger.info("【Mail delivery is successful】Flag="+flag); System.out.println("【Mail delivery is successful】Flag:"+flag); if(flag){ //发送成功 invoiceIdList.add(vo.getId()); } } } logger.info("【End of the email】successfully:"+invoiceIdList.size()); System.out.println("【End of the email】successfully:"+invoiceIdList.size()); /**修改 “发票制证邮件提醒表” 中已发送信息的发送状态*/ daoObj.updateSendStatus(invoiceIdList); } } /** * @TODO:[空对象处理] * @date:2013-8-21 * @param obj * @return String */ public static String checkNull(Object obj) { if ((null == obj) || ("null".equals(obj)) || ("".equals(obj))) { return ""; } else { return obj.toString(); } } public static void main(String args[]){ SysInvoiceSapMailBean beanObj = new SysInvoiceSapMailBean(); beanObj.run(); } }
相关推荐
demo介绍:http://blog.csdn.net/love_xiolan/article/details/56016576 java发送email邮件 1.发送普通email邮件 2.发送带附件的email邮件 3.邮件抄送和密送 4.发送html邮件 5.发送模板文件
java发送邮件,可以带附件,java技术不是很好,写的不是很好,还请大家见谅!
用java开发Email工具之发送邮件
Java email 发送文档事列,请查看,具体可以参考document.
满足所有Java邮件Email发送所需的Jar包。
java邮件发送例子 apache email demo
java发送电子邮件,程序和jar包都在里面,使用方法也有,程序可直接使用,直接改成自己的邮箱和密码就能发送了,解决了很多人java发送邮件不成功的烦恼
java email邮件发送所需mail相关jar包,下载后可直接使用,发送邮件
使用java发送邮件的方法,直接可以拿来用,最近找了个例子,稍微整理了一下
javaEmail邮件发送资源包,发送附件,及html格式邮件
这里使用的是163的邮箱测试,用qq的邮箱验证不了,要加别的东西,暂时先用163的测试,邮件成功发送,2016.06.07
通过javamail发送邮件的简单代码例子和jar
用Java 发送Email邮件
如果 用myEclipse进行开发时,如果程序中需要发送邮件,运行时可能会出现以下的异常: Exception in thread "main" java.lang.NoClassDefFound Error: com/sun/mail/util/LineInputStream 原因:邮件发送的jar包...
java发送Email邮件
邮箱的服务地址有主要有三种:POP3、SMTP、IMAP 本文以SMTP作为例子。
java发送附件mail, 包阔多附件,文本mail,以及网页mail.
java实现的根据html模版内容发送邮件,这是一个完整的eclipse项目,包含jar包,导入即可运行
java 实现发送邮件功能,内含网页版发送邮件,校验验证码功能。希望能帮助大家