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编程中,发送带有附件的邮件是一项常见的任务,尤其在企业级应用或者自动化脚本中。这个场景通常涉及到JavaMail API的使用,一个强大的库,可以用来处理SMTP(简单邮件传输协议)邮件服务。接下来,我们将深入...
Java Mail 发送邮件及邮件附件 Java Mail 是一个广泛使用的 Java 库,用于发送电子邮件。以下是 Java Mail 发送邮件及邮件附件的知识点。 Java Mail 简介 Java Mail 是一个 Java 库,提供了发送电子邮件的功能。...
在Java编程中,发送带有Excel附件的电子邮件是一项常见的任务,特别是在数据报告或自动化流程中。在某些场景下,我们可能希望直接以流的形式处理Excel数据,而不是先将其保存为一个实际的文件,然后再作为附件发送。...
4. **添加附件**:如果需要发送附件,可以使用MimeBodyPart和MimeMultipart类。 ```java MimeBodyPart attachmentPart = new MimeBodyPart(); attachmentPart.attachFile("path/to/your/file"); MimeMultipart ...
要使用Java Mail发送QQ邮件,首先需要在QQ邮箱设置中开启“POP3/SMTP/IMAP”服务,并获取授权码。授权码是QQ邮箱为第三方应用提供的一种安全验证方式,不同于普通密码。 ### 3. 添加依赖 在Java项目中,我们需要...
如果需要发送附件,可以使用MimeBodyPart和Multipart类。 4. 发送邮件:使用Transport对象的send方法,传入Message对象,完成邮件发送。 三、源码实现示例 以下是一个简单的Java Mail邮件发送的源码示例: ```...
7. **附件支持**: 如果需要发送附件,可以使用`MimeBodyPart`和`MimeMultipart`类。创建一个`MimeBodyPart`对象,添加附件内容,然后将其添加到`MimeMultipart`对象中,最后将`Multipart`对象设为邮件内容。 8. **...
以下是一个简单的示例代码(Pemail.java),演示如何发送带有附件的电子邮件: ```java import javax.mail.*; import javax.mail.internet.*; import java.util.Properties; public class Pemail { public ...
本示例将详细讲解如何使用Java实现通过QQ邮箱发送附件的功能。这个功能主要依赖于JavaMail API,它是一个开源库,为Java开发者提供了处理电子邮件的能力。 首先,我们需要在项目中引入JavaMail相关的依赖。如果你...
如果要发送附件,可以使用`Multipart`和`BodyPart`来构建复杂的邮件结构。 ```java Multipart multipart = new MimeMultipart(); // 添加文本正文 BodyPart messageBodyPart = new MimeBodyPart(); ...
"javaemail发送邮件(带附件)" javaemail发送邮件(带附件)是使用Java技术实现的邮件发送功能,支持带附件的发送。下面是该功能的知识点总结: 1. 使用JavaMailSenderImpl类来发送邮件,需要设置SMTP服务器、用户名...
采用javax.mail发送邮件,可以发送附件
JAVA_Mail_邮件_发送_接收_抄送_密送_附件 该资源是一个Java项目,可用Eclipse导入即可运行。 共4个类: 1:ReceiveMail.java -接收普通邮件 2:ReciveMailWithAttachMent.java --接收含有附件的邮件 3:SendMail....
在Java编程中,发送带有附件和图片的电子邮件是一项常见的任务,尤其在自动化通知、报告分发等场景下。本文将详细讲解如何使用Java Mail API来实现这一功能,同时参考提供的`TemplateMailMessage.java`和`...
在Java编程中,发送带有附件的邮件是一项常见的任务,尤其在企业级应用或者自动化脚本中。这个场景通常涉及到SMTP(Simple Mail Transfer Protocol)服务,JavaMail API以及MIME(Multipurpose Internet Mail ...
java生成excle文件不需要导出直接通过邮件附件发送java生成excle文件不需要导出直接通过邮件附件发送java生成excle文件不需要导出直接通过邮件附件发送java生成excle文件不需要导出直接通过邮件附件发送
要使用Java Mail发送邮件,首先需要添加相应的依赖库到项目中。对于Android项目,通常会通过Gradle来引入。 1. 添加依赖: 在项目的build.gradle文件中,添加以下依赖: ```groovy dependencies { ...
使用Java Mail发送邮件的基本步骤如下: 1. 创建Mail Session:这是整个邮件操作的基础,通过提供用户名、密码和其他配置信息来初始化Session对象。 ```java Properties props = new Properties(); props.put("mail....
本教程将深入讲解如何使用Java实现邮件发送功能,包括添加附件和向多个收件人发送邮件。 首先,我们来看`Mailer.java`,这个类通常会封装邮件发送的核心逻辑。在Java中,我们主要依赖JavaMail API来实现邮件的发送...
要发送附件,首先创建一个`MimeBodyPart`对象,然后调用`setDataHandler`方法设置数据源,通常是文件输入流。接着,创建一个`MimeMultipart`对象,将多个`MimeBodyPart`添加到其中。最后,将`MimeMultipart`对象...