`

javamail发送邮件的简单实例(模板二)

阅读更多

package com.mail.util;

 

 

import java.util.Date; 

import java.util.Properties; 

import javax.mail.Address; 

import javax.mail.BodyPart;

import javax.mail.Message; 

import javax.mail.Multipart;

import javax.mail.Session; 

import javax.mail.Transport; 

import javax.mail.internet.InternetAddress; 

import javax.mail.internet.MimeBodyPart;

import javax.mail.internet.MimeMessage; 

import javax.mail.internet.MimeMultipart;

 

 

 

 

public class SendMail {

 

   // 邮件发送者地址 

   private static final String SenderEmailAddr = "send@163.com"; 

 

   // 邮件发送者邮箱用户 

   private static final String SMTPUserName = "send@163.com"; 

    

   // 邮件发送者邮箱密码 

   private static final String SMTPPassword = "mima"; 

 

   // 邮件发送者邮箱SMTP服务器 (企业邮箱服务器smtp.qiye.163.com,普通为smtp.163.com

   private static final String SMTPServerName = "smtp.qiye.163.com"; 

 

   // 传输类型 

   private static final String TransportType = "smtp"; 

 

   // 属性 

   private static Properties props; 

   

 

   

  

 

 

   public SendMail() { 

 

   } 

 

   /** 

    * 静态构造器 

    */ 

   static { 

   SendMail.props = new Properties(); 

 

       // 存储发送邮件服务器的信息 

   SendMail.props.put("mail.smtp.host", SendMail.SMTPServerName); 

       // 同时通过验证 

   SendMail.props.put("mail.smtp.auth", "true"); 

   SendMail.props.put("mail.smtp.starttls.enable","false");

   } 

 

   /** 

    * 发送邮件 

    * @param emailAddr:收信人邮件地址 

    * @param mailTitle:邮件标题 

    * @param mailConcept:邮件内容 

    */ 

   public static void sendMail(String emailAddr,String sendName, String mailTitle, 

           String mailConcept) { 

       // 根据属性新建一个邮件会话,null参数是一种Authenticator(验证程序) 对象 

       Session s = Session.getInstance(SendMail.props, null); 

 

       // 设置调试标志,要查看经过邮件服务器邮件命令,可以用该方法 

       s.setDebug(false); 

        

       // 由邮件会话新建一个消息对象 

       Message message = new MimeMessage(s); 

       try { 

           // 设置发件人 

           Address from = new InternetAddress(SendMail.SenderEmailAddr,sendName); 

           message.setFrom(from); 

 

           // 设置收件人 

           Address to = new InternetAddress(emailAddr); 

           message.setRecipient(Message.RecipientType.TO, to); 

 

           // 设置主题 

           message.setSubject(mailTitle); 

           // 设置信件内容 

           message.setText(mailConcept); 

           // 设置发信时间 

           message.setSentDate(new Date()); 

           // 存储邮件信息 

           message.saveChanges(); 

 

           Transport transport = s.getTransport(SendMail.TransportType); 

           // 要填入你的用户名和密码; 

           transport.connect(SendMail.SMTPServerName, SendMail.SMTPUserName, 

           SendMail.SMTPPassword); 

 

           // 发送邮件,其中第二个参数是所有已设好的收件人地址 

           transport.sendMessage(message, message.getAllRecipients()); 

           transport.close(); 

 

           //System.out.println("发送邮件,邮件地址:" + emailAddr + " 标题:" + mailTitle 

           //        + " 内容:" + mailConcept + "成功!"); 

       } catch (Exception e) { 

           //System.out.println(e.getMessage()); 

           //System.out.println("发送邮件,邮件地址:" + emailAddr + " 标题:" + mailTitle 

           //        + " 内容:" + mailConcept + "失败! 原因是" + e.getMessage()); 

       } 

   } 

   public static void sendMail(String emailAddr,String sendName, String mailTitle, 

           String mailConcept,boolean ishtml) { 

       // 根据属性新建一个邮件会话,null参数是一种Authenticator(验证程序) 对象 

       Session s = Session.getInstance(SendMail.props, null); 

 

       // 设置调试标志,要查看经过邮件服务器邮件命令,可以用该方法 

       s.setDebug(false); 

        

       // 由邮件会话新建一个消息对象 

       Message message = new MimeMessage(s); 

       try { 

           // 设置发件人 

           Address from = new InternetAddress(SendMail.SenderEmailAddr,sendName); 

           message.setFrom(from); 

 

           // 设置收件人 

           Address to = new InternetAddress(emailAddr); 

           message.setRecipient(Message.RecipientType.TO, to); 

 

           // 设置主题 

           message.setSubject(mailTitle); 

           Multipart mp = new MimeMultipart();   

             

             

               

              BodyPart html = new MimeBodyPart();    

              html .setContent(mailConcept, "text/html; charset=utf-8");

             

               mp.addBodyPart(html); // 将含有信件内容的BodyPart加入到MimeMulitipart对象中   

             

               // multipart加入到信件   

               message.setContent(mp);   

 

           // 设置发信时间 

           message.setSentDate(new Date()); 

           // 存储邮件信息 

           message.saveChanges(); 

 

           Transport transport = s.getTransport(SendMail.TransportType); 

           // 要填入你的用户名和密码; 

           transport.connect(SendMail.SMTPServerName, SendMail.SMTPUserName, 

           SendMail.SMTPPassword); 

 

           // 发送邮件,其中第二个参数是所有已设好的收件人地址 

           transport.sendMessage(message, message.getAllRecipients()); 

           transport.close(); 

//           

//            System.out.println("发送邮件,邮件地址:" + emailAddr + " 标题:" + mailTitle 

//                    + " 内容:" + mailConcept + "成功!"); 

       } catch (Exception e) { 

           System.out.println(e.getMessage()); 

//            System.out.println("发送邮件,邮件地址:" + emailAddr + " 标题:" + mailTitle 

//                    + " 内容:" + mailConcept + "失败! 原因是" + e.getMessage()); 

       } 

   } 

   

   

 

   /** 

    * 测试邮件发送情况 

    * @param args 

    */ 

   public static void main(String[] args){ 

   SendMail.sendMail("906277880@qq.com","名称", "测试javamail", "哥 你好!",true); 

   }

public boolean sendMail() {

 

return false;

}

 

public static boolean send(String emailAddr,String sendName, String mailTitle, 

           String mailConcept,boolean ishtml) { 

       // 根据属性新建一个邮件会话,null参数是一种Authenticator(验证程序) 对象 

       Session s = Session.getInstance(SendMail.props, null); 

 

       // 设置调试标志,要查看经过邮件服务器邮件命令,可以用该方法 

       s.setDebug(false); 

        

       // 由邮件会话新建一个消息对象 

       Message message = new MimeMessage(s); 

       try { 

           // 设置发件人 

           Address from = new InternetAddress(SendMail.SenderEmailAddr,sendName); 

           message.setFrom(from); 

 

           // 设置收件人 

           Address to = new InternetAddress(emailAddr); 

           message.setRecipient(Message.RecipientType.TO, to); 

 

           // 设置主题 

           message.setSubject(mailTitle); 

           Multipart mp = new MimeMultipart();   

             

             

               

              BodyPart html = new MimeBodyPart();    

              html .setContent(mailConcept, "text/html; charset=utf-8");

             

               mp.addBodyPart(html); // 将含有信件内容的BodyPart加入到MimeMulitipart对象中   

             

               // multipart加入到信件   

               message.setContent(mp);   

 

           // 设置发信时间 

           message.setSentDate(new Date()); 

           // 存储邮件信息 

           message.saveChanges(); 

 

           Transport transport = s.getTransport(SendMail.TransportType); 

           // 要填入你的用户名和密码; 

           transport.connect(SendMail.SMTPServerName, SendMail.SMTPUserName, 

           SendMail.SMTPPassword); 

 

           // 发送邮件,其中第二个参数是所有已设好的收件人地址 

           transport.sendMessage(message, message.getAllRecipients()); 

           transport.close(); 

//           

//            System.out.println("发送邮件,邮件地址:" + emailAddr + " 标题:" + mailTitle 

//                    + " 内容:" + mailConcept + "成功!"); 

           

           return true;

       } catch (Exception e) { 

           System.out.println(e.getMessage()); 

//            System.out.println("发送邮件,邮件地址:" + emailAddr + " 标题:" + mailTitle 

//                    + " 内容:" + mailConcept + "失败! 原因是" + e.getMessage()); 

           return false;

       } 

   } 

 

 

 

 

 

}

 

分享到:
评论

相关推荐

    javamail邮件发送实例

    最后,使用Transport类发送邮件: ```java Transport.send(message); ``` 以上就是一个简单的JavaMail邮件发送实例。在实际开发中,你可能还需要处理异常、设置超时、支持多语言、使用模板等复杂情况。JavaMail ...

    完整的javamail发送邮件源码

    这个“完整的javamail发送邮件源码”提供了一种直接可用的解决方案,帮助开发者快速集成邮件发送功能到他们的项目中。以下是对JavaMail核心知识点的详细解析: 1. JavaMail API:JavaMail API 是一组用于处理邮件的...

    JavaMail的邮件实例

    本篇将深入探讨 JavaMail 的邮件实例,以及如何利用它来创建、发送和接收邮件。 在 JavaMail 中,主要涉及的核心接口和类包括 `Session`、`Message`、`MimeMessage`、`Transport` 和 `Store`。`Session` 是整个邮件...

    JavaMail 发送验证邮件

    使用`DEBUG`级别的日志可以帮助跟踪JavaMail发送邮件的详细过程,以便诊断任何可能出现的问题。 以上就是使用JavaMail通过JSPServlet发送验证邮件的基本步骤和注意事项。在实际开发中,可能还需要处理更多细节,如...

    javamail发送注册验证邮件实例-内包含mail.jar包

    3. **发送邮件**:最后,使用`Transport`类的`send`方法发送邮件。 ```java Transport.send(message); ``` 在`RegistMailWeb`项目中,这可能是一个MVC结构的应用,其中控制器处理注册请求,服务层处理邮件发送,而...

    Spring 3.x企业应用开发实战 附录 A - JavaMail 发送邮件

    ### Spring 3.x企业应用开发实战之JavaMail发送邮件知识点详解 #### 一、JavaMail基础知识的快速学习 ##### 1.1 JavaMail概述 JavaMail是Java领域中最为知名的邮件解决方案之一,由Sun Microsystems(现已被...

    javamail发送邮件

    以上就是使用JavaMail发送和接收邮件的基本流程。在实际应用中,你还可以根据需求实现更复杂的功能,如邮件模板、邮件队列、邮件监控等。在开发过程中,参考JavaMail API文档和官方示例可以帮助理解更多细节和高级...

    JavaMail案例 Myeclipse 实例

    在 MyEclipse 中,你可以创建一个新的 Java 类,将以上代码片段整合成一个方法,然后在主函数中调用这个方法来发送邮件。记得在实际环境中替换示例中的 SMTP 服务器地址、端口、用户名和密码。 通过这个实例,你...

    struts2+spring3.0+mybatis3.0.4集成的邮件发送实例(可上传附件)

    在这个实例中,我们可能有一个名为`SendMailAction`的类,该类中包含了发送邮件的相关逻辑。Struts2配置文件(`struts.xml`)需要进行相应的配置,以映射HTTP请求到这个Action。 Spring3.0则扮演了服务层的角色,它...

    javamail邮件发送

    5. **配置及认证**: 在使用JavaMail发送邮件前,需要进行必要的配置,包括设置SMTP服务器地址、端口、认证方式(如PLAIN、LOGIN或 XOAUTH2)。对于需要身份验证的SMTP服务器,通常会使用`Authenticator`类来提供...

    java发送HTML模版邮件

    以上步骤详细介绍了使用JavaMail发送HTML模板邮件的过程。在实际应用中,你可能还需要考虑错误处理、邮件附件、多语言支持等问题,以及更复杂的模板引擎如FreeMarker或Velocity来动态生成HTML内容。希望这个概述能...

    JavaMail邮件发送

    在提供的`cfJavaMail`压缩包文件中,可能包含了一个示例代码或者模板,用于演示如何使用JavaMail API发送邮件。通过学习和理解这些核心概念和代码实现,开发者可以轻松地在自己的项目中集成邮件发送功能。

    JavaMail邮件的上传和下载

    这个压缩包文件中的"16_sendmail"可能包含了用于演示如何使用JavaMail发送邮件的源代码。 JavaMail的核心组件包括 javax.mail 和 javax.mail.internet 包,这两个包提供了邮件操作所需的所有接口和类。在JavaMail中...

    在spring利用javamail,quartz定时发送邮件

    本文将详细探讨如何在Spring环境中,利用JavaMail和Quartz库实现定时发送邮件的功能。 #### JavaMail简介 JavaMail API是一个允许Java应用程序读取和发送邮件的工具包。它提供了与不同邮件协议(如SMTP、POP3和...

    JavaWeb中使用JavaMail实现发送邮件功能实例详解

    在JavaWeb应用中,使用JavaMail发送邮件是常见的功能,特别是在用户注册或验证过程中。JavaMail API 提供了丰富的功能,使得开发者能够便捷地发送文本、HTML甚至附件类型的邮件。以下是一个详细的步骤来实现这个功能...

    JAVA100例之实例45 使用SMTP协议发送邮件

    下面将详细阐述如何在Java中使用SMTP发送邮件。 首先,你需要包含必要的库。JavaMail API是一个广泛使用的库,提供了处理邮件所需的功能。为了使用它,你需要添加以下依赖到你的项目中: ```xml <groupId>...

    JAVA 发送HTML格式并带图片的邮件实例

    最后,使用`Transport.send()`方法发送邮件。如果在`Session`中设置了认证信息,此过程会自动处理登录和发送。 在实现过程中,可能需要处理各种异常,如网络问题、认证失败等。同时,确保遵循SMTP(简单邮件传输...

    javamail实例大全2

    9. **JSP集成**: 在JavaServer Pages(JSP)中使用JavaMail,可以在后台脚本中编写发送邮件的逻辑,然后通过JSP页面上的按钮或表单触发。 10. **异常处理**: 使用JavaMail时,需要注意常见的异常,如`...

    java发送邮件所需jar包.zip

    2. **SMTP协议**:简单邮件传输协议(SMTP)是JavaMail API用于发送邮件的标准协议。SMTP服务器是接收和转发邮件的服务器,JavaMail API通过SMTP协议与这些服务器通信。 3. **POP3/IMAP协议**:虽然主要讨论的是...

    JavaMail组件简单应用

    它包括了SMTP(Simple Mail Transfer Protocol)用于发送邮件,IMAP(Internet Message Access Protocol)和POP3(Post Office Protocol version 3)用于接收邮件。通过这个API,开发者可以创建、编辑、发送和接收...

Global site tag (gtag.js) - Google Analytics