public static HashMap<String,String> sendEmailToPartner(Object[] toAddress){ HashMap<String,String> map=new HashMap<String,String>(); String message="邮件发送成功!"; map.put("state", "success"); map.put("message", message); Message msg =null; try { //GET PARTNER MAILCONN Properties props = new Properties(); props.put("mail.smtp.host", ChannelConfig.getValue("mail.smtp.host")); String port = ChannelConfig.getValue("mail.smtp.port"); String auth = ChannelConfig.getValue("mail.smtp.auth"); //IF SERVER NEED AUTH if (auth != null && !"".equals(auth.trim()) && "true".equals(auth)){ props.put("mail.smtp.auth", auth); if (port != null && !"".equals(port.trim())){ props.put("mail.smtp.port", port); } } else{ props.put("mail.smtp.auth", "false"); props.put("mail.smtp.timeout", "0"); } Session mailConnection = Session.getDefaultInstance(props); Transport transport = mailConnection.getTransport("smtp"); if (auth != null && !"".equals(auth.trim()) && "true".equals(auth)){ transport.connect(ChannelConfig.getValue("mail.smtp.host"), ChannelConfig.getValue("mail.smtp.username"), ChannelConfig.getValue("mail.smtp.password")); } else{ transport.connect(); } //ATTACH FILE msg = new MimeMessage(mailConnection); String subject="HP EG 通路計劃管理平台 即日起正式啟用"; msg.setSubject(MimeUtility.encodeText(subject,MimeUtility.mimeCharset("UTF-8"), null)); String from=ChannelConfig.getValue("mail.smtp.username"); Address fromAdd = new InternetAddress(from); msg.setFrom(fromAdd); if(toAddress == null || toAddress.length == 0) { return null; } Address[] addressList = new Address[toAddress.length]; for (int i = 0; i < toAddress.length; i++) { addressList[i] = new InternetAddress(toAddress[i].toString()); } /*Address[] addressList= new Address[]{new InternetAddress(toAddress.toString())};*/ msg.setRecipients(Message.RecipientType.BCC, addressList); addressList= new Address[]{new InternetAddress("wen-hao.li@hp.com")}; msg.setRecipients(Message.RecipientType.TO, addressList); File currPathFile=new File(Thread.currentThread().getContextClassLoader().getResource("").toURI().getPath()); File attFile=new File(currPathFile.getParentFile().getParentFile().getPath() + File.separator + "template"+File.separator+"html_tw.html"); Multipart multipart = new MimeMultipart(); BodyPart body = new MimeBodyPart(); DataSource source = new FileDataSource(attFile); body.setDataHandler(new DataHandler(source)); body.setFileName(MimeUtility.encodeText(attFile.getName())); multipart.addBodyPart(body); msg.setContent(multipart); msg.setSentDate(new Date()); transport.sendMessage(msg, msg.getAllRecipients()); transport.close(); return map; } catch(AuthenticationFailedException e){ message="邮件发送失败!错误原因:\n"+"身份验证错误!"; map.put("state", "failed"); map.put("message", message); e.printStackTrace(); } catch(AddressException e){ try { message="邮件发送失败!错误原因:\n"+msg.getRecipients(Message.RecipientType.BCC)[0]+"地址错误!"; } catch (MessagingException e1) { e1.printStackTrace(); } map.put("state", "failed"); map.put("message", message); e.printStackTrace(); }catch (MessagingException e) { message="邮件发送失败!错误原因:\n"+e.getMessage(); map.put("state", "failed"); map.put("message", message); e.printStackTrace(); Exception ex = null; if ((ex = e.getNextException()) != null) { System.out.println(ex.toString()); ex.printStackTrace(); } } catch (Exception e) { message="邮件发送失败!错误原因:\n"+e.getMessage(); map.put("state", "failed"); map.put("message", message); e.printStackTrace(); } return map; }
private static Address[] buildEmaiAddress(String[] addressArray) throws Exception { if(addressArray == null || addressArray.length == 0) { return null; } Address[] addressList = new Address[addressArray.length]; for (int i = 0; i < addressArray.length; i++) { addressList[i] = new InternetAddress(addressArray[i]); } return addressList; }
相关推荐
java发送附件mail, 包阔多附件,文本mail,以及网页mail.
java Mail 发送邮件及邮件附件 java Mail 发送邮件及邮件附件
java 发邮件带excel附件,以流的形式发送附件,不生成excel文件
java mail 邮件发送 代码文档 java_mail_发送邮件代码 发送邮件及邮件附件java代码实例(支持多附件_群发送)
JAVA_Mail_邮件_发送_接收_抄送_密送_附件 该资源是一个Java项目,可用Eclipse导入即可运行。 共4个类: 1:ReceiveMail.java -接收普通邮件 2:ReciveMailWithAttachMent.java --接收含有附件的邮件 3:SendMail....
采用javax.mail发送邮件,可以发送附件
java生成excle文件不需要导出直接通过邮件附件发送java生成excle文件不需要导出直接通过邮件附件发送java生成excle文件不需要导出直接通过邮件附件发送java生成excle文件不需要导出直接通过邮件附件发送
java mail 发送邮件源代码以及所需要的两个架包。 附件代码以腾讯企业邮箱发送邮件为例子,其它邮箱只要支持SMTP服务即可。只要懂点JAVA就能看懂。
java mail 邮件发送,可发送附件;多个附件以,号分开;可抄送、密送等多个抄送、密送以,号分开。详细发送DEMO参考SendMailTest.java类: SendMailInfo mailInfo = new SendMailInfo("mail.china1168.com", true, ...
java Mail 邮箱发送html代码块和附件
Java课程设计 Java实现邮件的加密发送
} /** * 增加发送附件 * @param filename * 邮件附件的地址,只能是本机地址而不能是网络地址,否则抛出异常 * @return */ public boolean addFileAffix(String filename) { try { BodyPart bp = new MimeBodyPart...
SpringBoot中整合Mail实现发送带附件的邮件示例代码SpringBoot中整合Mail实现发送带附件的邮件示例代码
发送普通文本格式的E-mail及附件的java源码发送普通文本格式的E-mail及附件的java源码
NULL 博文链接:https://haroldxie.iteye.com/blog/697353
... 自己在项目开发中遇到要实现发送邮件的功能,学习了一下...实现邮件发送功能(含附件),调用简单,适合急于开发邮件发送系统,却没有时间研究JavaMail的兄弟。 压缩包内有使用说明readme.txt,欢迎给我提意见。
java mail 邮件(群发)发送的源码 里面带有附件的发送
使用mail.jar包进行发送邮件支持多接收人,多附件,但是附件不可过大。
封装好了方法, 传入发送邮件的邮箱和收邮件的邮箱即可测试使用
首先要有两个包mail.jar和activation.jar,已经在文件里了, 本例用的是QQ邮件 ,所以在QQ邮箱的帐户里开启POP3/SMTP服务 和开启IMAP/SMTP服务