`

java 发送邮件(支持多附件,抄送人等功能)

阅读更多
public String sendMail(String mailTitle,String mailContent,String fileName, String receiver,String carbonCopy, List<FolderInfoVO> attachedFile) {
String sendResult = "";// 邮件发送结果
/**
* 邮件成功执行则不抛出异常,执行失败抛出异常,并返回邮件发送结果
*/
try {
Properties props = System.getProperties();
props.put("mail.smtp.host", "mail.chinamobilesz.com:25");
props.put("mail.smtp.auth", "true");
// props.put("mail.debug", "true");
//props.put("mail.smtps.timeout","25000");
Session session = Session.getInstance(props, null); // 根据邮件会话属性和密码验证器构造一个发送邮件的session


Message msg = new MimeMessage(session); // 根据session创建一个邮件消息   

msg.setFrom(new InternetAddress("newbiztesting@chinamobilesz.com"));//设置邮件发送人地址

msg.setRecipients(Message.RecipientType.TO, //设置邮件接收人地址
InternetAddress.parse(receiver, false));

/**
* //抄送人不为空时需将邮件抄送
*/
if(!"".equals(carbonCopy)){
msg.setRecipients(Message.RecipientType.CC,
InternetAddress.parse(carbonCopy, false));
}

msg.setSubject(mailTitle); //邮件标题
//msg.setText(mailContent);

Multipart mp = new MimeMultipart("mixed"); // MiniMultipart类是一个容器类,包含MimeBodyPart类型的对象
MimeBodyPart mbp = new MimeBodyPart();  // 创建一个包含HTML内容的MimeBodyPart
mbp.setContent(mailContent.toString(), "text/html;charset=gb2312"); // 设置HTML内容    
    mp.addBodyPart(mbp); //将MimeBodyPart加入容器
    /**
     * 判断附件是否为空,不为空则将附件置于邮件体内
     */
if(attachedFile != null && !attachedFile.isEmpty() ){
System.out.println("--------------附件------------------------------------");
for (Iterator<FolderInfoVO> iterator = attachedFile.iterator(); iterator
.hasNext();) {
mbp = new MimeBodyPart();
FolderInfoVO vo = (FolderInfoVO) iterator.next();
System.out.println("邮件发送核心类------------附件地址-----"+vo.getFolderName());
FileDataSource dataSource = new FileDataSource(vo.getFolderPath()); // 得到数据源
mbp.setDataHandler(new DataHandler(dataSource)); // 得到附件本身并至入BodyPart
mbp.setFileName(MimeUtility.encodeText(dataSource.getName())); // 得到文件名同样至入BodyPart
mp.addBodyPart(mbp);
}
}
msg.setContent(mp); // 将MiniMultipart对象设置为邮件内容   
msg.setSentDate(new Date());// 设置发送日期
SMTPTransport t = (SMTPTransport) session.getTransport("smtp");

t.connect("mail.chinamobilesz.com", "newbiztesting", "*****");

t.sendMessage(msg, msg.getAllRecipients()); //发送邮件(第一个参数代表邮件内容,第二个代表所有的接收人地址,包含抄送人等等)
sendResult = "发送成功";
System.out.println("================发送成功===================");
t.close();
} catch (Exception e) {
e.printStackTrace();
sendResult="发送失败";
e.getMessage();
System.out.println("发送失败================="+e.getMessage());
}
return sendResult;// 邮件发送结果
}
分享到:
评论

相关推荐

    java 发邮件 多收件人 多抄送人 多附件

    java 发邮件工具类 多收件人 多抄送人 多附件 内有三个重载方法 使用方便

    Java发送邮件_单附件_多附件_加抄送多人 _2个示例zip

    这个"Java发送邮件_单附件_多附件_加抄送多人 _2个示例zip"的资源包含两个核心类:EmailManager.java和AnnexMailService.java,它们提供了一个强大的邮件发送功能,支持单个或多个附件,以及添加抄送人。下面将详细...

    JavaMail实现邮件发送功能,可发送、抄送、密送多人,支持多附件的发送

    通过以上步骤,你就可以利用 JavaMail 实现功能完备的邮件发送了,包括向多个人发送邮件、设置抄送和密送,以及添加多个附件。注意,实际使用时,你需要根据你的邮件服务提供商调整相应的配置参数,例如对于其他邮箱...

    java发送邮件源代码带附件可抄送

    在Java编程语言中,发送邮件是一项常见的任务,尤其在企业级应用中,如通知系统、自动报警服务等。本文将详细讲解如何使用Java发送带有附件并可以抄送多人的电子邮件。 首先,JavaMail API是Java中用于处理邮件的...

    发送邮件及邮件附件java代码实例(支持多附件,群发送).pdf

    【Java 发送邮件及邮件附件】 在Java编程中,发送邮件及附加文件是一项常见的任务,这通常涉及到SMTP(Simple Mail Transfer Protocol)协议。这里我们分析的`Mail.java`类提供了一个实现此功能的示例,它使用了...

    java实现邮件抄送,密送,多个附件发送

    封装好了方法, 传入发送邮件的邮箱和收邮件的邮箱即可测试使用

    java发送邮件功能

    Java发送邮件功能是Java开发中常见的一项任务,它允许开发者通过编程的方式实现电子邮件的发送,包括正文内容、附件以及抄送等高级功能。在Java中,我们主要利用JavaMail API来实现这一目标。 JavaMail API是一个...

    java 发送附件mail

    总结一下,Java发送带有附件的邮件涉及到JavaMail API的使用,包括配置SMTP服务器、创建邮件对象、添加内容和附件,以及发送邮件等步骤。理解这些步骤和相关类的作用是实现此功能的关键。在处理不同类型的邮件时,...

    利用Java发送邮件(含附件)的例子

    总结一下,Java发送带附件的邮件涉及到的主要知识点有: - 配置文件的读取与解析。 - JavaMail API的使用,包括`Session`、`MimeMessage`、`Multipart`、`MimeBodyPart`等类。 - SMTP协议的使用,包括身份验证和邮件...

    JAVA_Mail_邮件_发送_接收_抄送_密送_附件

    发送邮件 * 功能齐全,可抄送,密送;可带附件 * 你需要修改:你发件用的邮箱需要开启SMTP服务,这个邮箱的用户名就是:SMTP认证用-登录用户名, * 这个邮箱的密码就是:SMTP认证用-登录密码,填好用户名和密码...

    java 发送多人邮件+多附件工具类

    总之,这个"发送多人邮件+多附件工具类"利用JavaMail API实现了发送带有多个附件的邮件功能,并支持同时向多个收件人发送。开发者可以根据自己的需求,通过配置SMTP服务器信息和邮件内容,轻松实现邮件的发送。在...

    Java实现发送邮件内容+附件

    在Java编程环境中,发送邮件是一项常见的任务,尤其在企业级应用和自动化...在提供的压缩包文件“发送邮件小程序”中,应该包含了实现这一功能的完整Java代码示例,你可以参考其结构和方法来构建自己的邮件发送功能。

    JAVA邮件发送工具类(支持同步和异步发送邮件以及附件信息)

    JAVA邮件发送工具类(支持同步和异步发送邮件以及附件信息),支持多个抄送邮件发送。

    java实现发送邮件功能源码+jar

    下面是一个简单的Java发送邮件的示例代码: ```java Properties props = new Properties(); props.put("mail.smtp.host", "smtp.example.com"); props.put("mail.smtp.port", "587"); props.put("mail.smtp....

    java socket发送SMTP邮件,支持SSL,支持发附件,抄送且发送的邮件标题内容都无乱码!

    java socket发送SMTP邮件,支持SSL,支持发附件,抄送且发送的邮件标题内容都无乱码!

    java发送邮件项目

    Java发送邮件是一个常见的任务,尤其在企业级应用中,用于通知、报告或者自动化流程。本项目专注于使用Java来实现这个功能。以下将详细介绍如何利用Java发送邮件,以及项目中的关键知识点。 首先,Java发送邮件主要...

    java发送qq邮件 支持群发 附件等等

    通过MimeMessageHelper,我们可以设置邮件的主题、正文,添加收件人、抄送人、密送人,以及附加文件。 3. **QQ邮箱配置**: 要使用Java发送QQ邮件,首先需要在QQ邮箱中开启SMTP服务,并获取授权码。SMTP(Simple ...

    java mail 支持text、html正文,多附件,发送、抄送、密送均多人

    在这个主题中,我们将深入探讨如何使用Java Mail API来发送包含text、HTML正文以及多个附件的邮件,并且实现发送、抄送和密送给多个收件人。 首先,我们需要导入Java Mail所需的库。主要的依赖包括`javax.mail`和`...

    java发送邮件完整程序

    在这个"java发送邮件完整程序"中,我们将会探讨如何使用Java语言来构建一个邮件发送功能,包括所需的库、步骤以及关键代码片段。 首先,Java Mail API是实现邮件发送的核心库,它提供了丰富的接口和类来处理邮件的...

Global site tag (gtag.js) - Google Analytics