`
bruceye
  • 浏览: 2746 次
  • 性别: Icon_minigender_1
  • 来自: 广州
最近访客 更多访客>>
社区版块
存档分类
最新评论

Jmail的简单应用

阅读更多
java 代码
  1. package bruce;   
  2.   
  3. import java.util.Date;   
  4. import java.util.Enumeration;   
  5. import java.util.Properties;   
  6. import java.util.Vector;   
  7.   
  8. import javax.activation.DataHandler;   
  9. import javax.activation.FileDataSource;   
  10. import javax.mail.Authenticator;   
  11. import javax.mail.Message;   
  12. import javax.mail.MessagingException;   
  13. import javax.mail.Multipart;   
  14. import javax.mail.PasswordAuthentication;   
  15. import javax.mail.Session;   
  16. import javax.mail.Transport;   
  17. import javax.mail.internet.InternetAddress;   
  18. import javax.mail.internet.MimeBodyPart;   
  19. import javax.mail.internet.MimeMessage;   
  20. import javax.mail.internet.MimeMultipart;   
  21. import javax.mail.internet.MimeUtility;   
  22.   
  23. public class SendMail {   
  24.     String to = "";//收件人   
  25.     String from = "";//发件人   
  26.     String smtpServer = "";//smtp服务器   
  27.     String username = "" ;   
  28.     String password = "" ;   
  29.     String filename = "";//附件文件名   
  30.     String subject = "";//邮件主题   
  31.     String content = "";//邮件正文   
  32.     Vector file = new Vector();//附件文件集合   
  33.   
  34.     public SendMail()   
  35.     {   
  36.     }   
  37.     public SendMail(String to,String from,String smtpServer,String username,String password,String subject,String content)   
  38.     {   
  39.         this.to = to;   
  40.         this.from = from;   
  41.         this.smtpServer = smtpServer;   
  42.         this.username = username;   
  43.         this.password = password;   
  44.         this.subject = subject;   
  45.         this.content = content;   
  46.     }   
  47.   
  48.     public void setSmtpServer(String smtpServer)   
  49.     {   
  50.         this.smtpServer = smtpServer;   
  51.     }   
  52.     public void setUserName(String usename)   
  53.     {   
  54.         this.username = usename;   
  55.     }   
  56.     public void setPassWord(String pwd)   
  57.     {   
  58.         this.password = pwd;   
  59.     }   
  60.     public void setTo(String to)   
  61.     {   
  62.         this.to = to;    
  63.     }   
  64.     public void setFrom(String from)   
  65.     {   
  66.         this.from = from;   
  67.     }   
  68.     public void setSubject(String subject)   
  69.     {   
  70.         this.subject = subject;   
  71.     }   
  72.     public void setContent(String content)   
  73.     {   
  74.         this.content = content;   
  75.     }   
  76.   
  77.     //把邮件主题转换为中文   
  78.     public String transferChinese(String strText)   
  79.     {   
  80.         try  
  81.         {   
  82.             strText = MimeUtility.encodeText(new String(strText.getBytes(), "GB2312"), "GB2312""B");   
  83.         }   
  84.         catch(Exception e)   
  85.         {   
  86.             e.printStackTrace();   
  87.         }   
  88.         return strText;   
  89.     }   
  90.     //增加附件   
  91.     public void attachfile(String fname)   
  92.     {   
  93.         file.addElement(fname);   
  94.     }   
  95.   
  96.     public boolean send()   
  97.     {   
  98.         //构造mail session   
  99.         Properties props = System.getProperties();   
  100.         props.put("mail.smtp.host",smtpServer);   
  101.         props.put("mail.smtp.auth","true");   
  102.         Session session=Session.getDefaultInstance(props, new Authenticator()   
  103.             {   
  104.                 public PasswordAuthentication getPasswordAuthentication()   
  105.                 {   
  106.                     return new PasswordAuthentication(username,password);    
  107.                 }   
  108.             });   
  109.         try  
  110.         {   
  111.             //构造MimeMessage 并设定基本的值   
  112.             MimeMessage msg = new MimeMessage(session);   
  113.             msg.setFrom(new InternetAddress(from));   
  114.             InternetAddress[] address={new InternetAddress(to)};   
  115.             msg.setRecipients(Message.RecipientType.TO,address);   
  116.             subject = transferChinese(subject);   
  117.             msg.setSubject(subject);       
  118.             //构造Multipart   
  119.             Multipart mp = new MimeMultipart();   
  120.             //向Multipart添加正文   
  121.             MimeBodyPart mbpContent = new MimeBodyPart();   
  122.             mbpContent.setText(content);   
  123.             //向MimeMessage添加(Multipart代表正文)   
  124.             mp.addBodyPart(mbpContent);   
  125.             //向Multipart添加附件   
  126.             Enumeration efile=file.elements();   
  127.             while(efile.hasMoreElements())   
  128.             {   
  129.                 MimeBodyPart mbpFile = new MimeBodyPart();   
  130.                 filename=efile.nextElement().toString();   
  131.                 FileDataSource fds = new FileDataSource(filename);   
  132.                 mbpFile.setDataHandler(new DataHandler(fds));   
  133.                 mbpFile.setFileName(fds.getName());   
  134.                 //向MimeMessage添加(Multipart代表附件)   
  135.                 mp.addBodyPart(mbpFile);   
  136.             }       
  137.             file.removeAllElements();   
  138.             //向Multipart添加MimeMessage   
  139.             msg.setContent(mp);   
  140.             msg.setSentDate(new Date());   
  141.             //发送邮件   
  142.             Transport.send(msg);     
  143.         }   
  144.         catch (MessagingException mex)   
  145.         {   
  146.             mex.printStackTrace();   
  147.             Exception ex = null;   
  148.             if ((ex=mex.getNextException())!=null)   
  149.             {   
  150.                 ex.printStackTrace();   
  151.             }   
  152.             return false;   
  153.         }   
  154.         return true;   
  155.     }   
  156.   
  157.     public static void main(String[] args)   
  158.     {   
  159.         SendMail sendmail = new SendMail();   
  160.         sendmail.setSmtpServer("smtp.163.com");   
  161.         //此处设置登陆的用户名   
  162.         sendmail.setUserName("username");   
  163.         //此处设置登陆的密码   
  164.         sendmail.setPassWord("password");   
  165.         //发送的地址   
  166.         sendmail.setTo("tousername@163.com");   
  167.         //发送人   
  168.         sendmail.setFrom("username@163.com");   
  169.         //设置标题   
  170.         sendmail.setSubject("你好,这是测试!");   
  171.         //设置内容   
  172.         sendmail.setContent("你好这是一个带多附件的测试!");    
  173.         //粘贴附件   
  174.         sendmail.attachfile("bruce/SendMail.java");   
  175.         //sendmail.attachfile("build.xml");   
  176.         sendmail.send();   
  177.     }   
  178. }   
分享到:
评论

相关推荐

    Jmail简单发邮件

    首先,我们来看标题"Jmail简单发邮件",这暗示我们将学习如何通过Jmail组件实现邮件发送。Jmail允许开发者通过SMTP服务器发送邮件,支持HTML格式的邮件内容,还能处理附件,使得邮件功能更加灵活。它的简单性在于...

    VB6+Jmail简单的邮件收发小程序

    【VB6+Jmail简单的邮件收发小程序】 VB6(Visual Basic 6)是微软公司开发的一款集成开发环境,主要用于创建Windows应用程序。它以其简单易学、编程效率高而受到许多初学者和专业开发者的喜爱。Jmail,则是用于VB6...

    jmail组件,jmail组件

    JMail组件是一款在Java环境中用于发送电子邮件的工具,它提供了简单易用的API,使得开发者能够在Java应用程序中方便地实现邮件的发送功能。这个组件通常被用于企业级应用,例如客户支持系统、自动通知服务或者内部...

    jmail.dll 下载

    1. **jmail.dll**:这是一个专门用于ASP.NET应用中的邮件发送组件,提供了方便的接口和方法来实现邮件的发送。jmail.dll通常包含设置发件人、收件人、主题、正文、附件等功能,以及支持HTML格式邮件、SMTP服务器配置...

    Jmail 4.3组件下载(jmail.dll 4.3)

    Jmail是一个强大的SMTP和POP3邮件客户端库,它允许开发人员通过简单的API调用来实现邮件发送、接收和管理。它支持HTML格式的邮件,可以发送带有附件的邮件,并且可以处理复杂的邮件列表和邮件队列管理。 2. **...

    jmail组件,附带从使用调用方法和安装注册方法

    安装JMail组件的过程相对简单。通常,你可以将JMail的DLL文件(如JMail.dll)复制到你的Web应用程序的服务器上,然后在IIS中注册该组件。注册可以通过使用命令行工具Regsvr32.exe完成,例如:`regsvr32 jmail.dll`。...

    简单易用的jmail邮件发送系统

    【Jmail邮件发送系统】是一种在IT行业中广泛用于网页邮件发送的组件,尤其适用于ASP(Active Server Pages)环境。它的简单易用性是其一大特点,使得...无论是个人项目还是商业应用,Jmail都是一个值得信赖的工具。

    Jmail组件收发邮件代码

    Jmail组件是一款在ASP.NET...总之,Jmail组件为ASP.NET开发者提供了便利的邮件处理功能,通过简单的配置和API调用,可以轻松地实现邮件的发送和接收。理解并熟练掌握这些基本操作,将有助于提升Web应用程序的通信能力。

    Jmail 4.4.0 Free Edition

    1. **SMTP 邮件发送**:Jmail 支持使用简单邮件传输协议 (SMTP) 直接发送邮件,允许开发者构建能够发送邮件的应用程序,无需用户通过Web界面操作。 2. **多协议支持**:除了SMTP,Jmail可能还支持其他邮件传输协议...

    JMail4.4pro

    **JMail4.4pro** 是一款用于在ASP.NET应用程序中处理电子邮件的组件,它提供了简单易用的接口,使得开发者能够轻松实现邮件的发送、接收功能。JMail组件是基于SMTP(Simple Mail Transfer Protocol)和POP3(Post ...

    Jmail文档资料,如何使用jmail

    Jmail是基于Java语言的邮件API,它支持SMTP(简单邮件传输协议)和POP3(邮局协议第三版)协议,使得开发者能够轻松地在应用程序中实现邮件的发送和接收。Jmail的使用文档详尽地解释了各个接口和类的功能,是初学者...

    JMail

    **JMail** 是一款专为Java开发者设计的邮件发送组件,它提供了丰富的API接口,使得在Java应用程序中发送电子邮件变得简单而高效。JMail支持SMTP、POP3和IMAP等多种邮件协议,允许开发者构建功能强大的邮件系统,如...

    jmail组件.zip

    JMail组件是一款在Java环境中用于发送邮件的工具,它提供了简单易用的API,使得开发者能够在Java应用程序中轻松实现电子邮件的发送功能。JMail支持SMTP、POP3和IMAP等邮件协议,允许开发者发送文本、HTML甚至带有...

    JMAIL 4.5 dll+JMAIL4.4.dll

    1. **邮件发送功能**:JMAIL支持通过SMTP(简单邮件传输协议)发送邮件,可以设置发件人、收件人、抄送人、密送人等参数,还可以添加附件、设置邮件主题和正文内容。 2. **多语言支持**:JMAIL通常能处理多种字符集...

    jmail4.3安装组件

    开发者可以通过简单的API调用来实现邮件的发送、接收和管理,极大地简化了Web应用中的邮件处理工作。 2. **SMTP和POP3协议**: SMTP(Simple Mail Transfer Protocol)用于发送邮件,而POP3(Post Office Protocol ...

    Jmail 4.0

    Jmail 4.0是该组件的一个重要版本,具有增强的稳定性和更多的特性,使得ASP应用程序能够轻松地实现邮件发送、接收以及邮件服务器的交互。 ### Jmail概述 Jmail是由Dimac Software开发的,它是一个完全基于ASP的...

    vb jmail发送邮件

    JMail是一款功能强大的邮件组件,它提供了丰富的API,使得开发者能够轻松地在应用程序中集成邮件发送功能。下面将详细介绍如何利用VB和JMail.DLL来实现邮件发送。 首先,你需要在你的项目中引入JMail组件。这可以...

    JMail可收可发

    总的来说,JMail是一个强大且实用的邮件组件,为开发者提供了简单易用的接口来实现邮件收发功能。通过学习和使用JMail,你可以快速地在自己的应用程序中集成邮件通信功能,无论是用于通知、自动化还是其他用途。

    Jmail功能测试工具

    Jmail是一款广泛应用于.NET平台的电子邮件发送组件,它为开发者提供了简单且强大的接口来实现邮件的发送、接收以及管理功能。在.NET开发环境中,Jmail是处理电子邮件任务的一个实用工具,尤其适合那些需要构建内部...

    C#调用jmail实现邮件的发送

    Jmail是由Dimio软件公司开发的一款用于.NET Framework的应用程序,它提供了方便的API接口,使得开发者能够轻松地在C#项目中集成邮件发送功能。Jmail支持SMTP、POP3、IMAP等多种邮件协议,可以发送HTML格式的邮件,...

Global site tag (gtag.js) - Google Analytics