`
caizi12
  • 浏览: 177782 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

用Hotmail做企业邮箱.发送邮件。

阅读更多

   近日在做一个网站,用到了企业邮箱,之前对邮件发送不太了解,本来有一个网站用的sogou免费企业邮箱,现在老板要用Hotmail无奈之好再来写个,由于Hotmail邮箱需要SSL验证,而sogou不需要,所以这点就比较麻烦。 

    刚开始没做过这样的东西,当然是没法下手,随而网上查了些资料写了个,经过一番苦战终于发出去了,测试了我的gmail邮箱收到了邮件,但是发现国内的比如QQ和126 之类收取邮件时候比较慢,gmail很快。顺便发了上来。

 

 

 

package com.wlw168.mail;

import java.io.UnsupportedEncodingException;
import java.util.Properties;

import javax.mail.Authenticator;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeUtility;

public class SendMail {

public static   void sendMail(String toEmail, String title, String content) {
   String host = "smtp.live.com"; // 指定的smtp服务器
   String from = "XXX信息中心"; // 邮件标题
   String to = "recive@gmail.com"; // 邮件接收人的邮件地址
   final String username = "xxxx@XXX.com"; // 发件人的邮件帐户
   final String password = "password"; // 发件人的邮件密码

   // 创建Properties 对象
   Properties props = System.getProperties();

   // 添加smtp服务器属性 添加了SSL验证
   props.put("mail.smtp.starttls.enable", "true");
   props.put("mail.smtp.host", host);
   props.put("mail.smtp.user", from);
   props.put("mail.smtp.password", password);
   props.put("mail.smtp.port", "25"); // gmail smtp port 587
   props.put("mail.smtp.auth", "true");

   // 创建邮件会话 
   Session session = Session.getDefaultInstance(props,new Authenticator() { // 验账账户
      public PasswordAuthentication getPasswordAuthentication() {
       return new PasswordAuthentication(username, password);
      }});

   try {
    // 定义邮件信息
    MimeMessage message = new MimeMessage(session);
    message.setFrom(new InternetAddress(MimeUtility.encodeText(from,"gb2312", "B")));//GB2312编码,防止接收后标题乱码
    message.addRecipient(Message.RecipientType.TO, new InternetAddress(to));
    message.setSubject(title);
    message.setText(content);

    // 发送消息
    // session.getTransport("smtp").send(message); //也可以这样创建Transport对象
    Transport.send(message);

   } catch (MessagingException e) {
    e.printStackTrace();
   } catch (UnsupportedEncodingException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
   }
}

public static void main(String[] args) {
SendMail.sendMail("XXXXX@gmail.com", "测试", "发送成功");

}

}

 

 

 邮件地址,密码之类修改成你自己的,就可以发送了

 做的过程中出现了好多问题

 

1、javax.mail.AuthenticationFailedException

 

这有可能是你的发送邮件的名字和密码不对,会出现这样的异常

 

 

第二种情况

javax.mail.MessagingException: Could not connect to SMTP host: smtdp.live.com, port: 25;



这是没有连接到邮箱SMTP服务器出现的问题,重点检查你的SMTP是否写对了。

 

 

 

 

第三种:

javax.mail.SendFailedException: Sending failed;
nested exception is:
class javax.mail.MessagingException: 530 5.7.0 Must issue a STARTTLS command first

at javax.mail.Transport.send0(Transport.java:218)
at javax.mail.Transport.send(Transport.java:80)
at com.wlw168.mail.SendMail.sendMail(SendMail.java:58)
at com.wlw168.mail.SendMail.main(SendMail.java:69)

这种就不好说了,我是用MyEclipse6.5开发的,这个可能是mail.jar 和activation.jar版本的问题,出这个问题是在J2EE1.4上面出的。如果用的是JAVAEE1.5的话,就需要删除JAVAEE.JAR里面的mail 和activation这两个文件夹里面的,这样后应该就没事了,不然的话也会出现版本不兼容的问题。JAVAEE.JAR这个JAR包是在MyEclipse的

D:\Program Files\MyEclipse 6.5M1 Blue\myeclipse\eclipse\plugins\com.genuitec.eclipse.j2eedt.core_6.4.100.zmyeclipse64100200805\data\libraryset\EE_5

这是我的路径找到后用解压缩WinRAR打开删除里面的mail 和activation文件夹,我当初是这样做删除后在本地测试通过。 但在J2EE1.4还是出现不兼容的情况,还没有解决

 

1
3
分享到:
评论
1 楼 wings_0921 2011-10-09  
呵呵 不错哟!赞一个!

相关推荐

    hotmail邮箱pop3服务器设置方法.doc

    通过以上设置,用户可以使用 Outlook Express 或 Foxmail 等邮件客户端来发送和接收 hotmail 邮箱的邮件。hotmail 邮箱的 POP3 服务器设置方法可以使用户更方便地管理和使用 hotmail 邮箱。 知识点: 1. 什么是 ...

    浪潮网页邮件群发系统v4.5-0410支持126.163.tom.sina.hotmail.yeah邮箱发送

    【标题】"浪潮网页邮件群发系统v4.5-0410支持126.163.tom.sina.hotmail.yeah邮箱发送"所涉及的知识点主要集中在电子邮件营销和自动化工具上,特别是针对多个主流邮件服务商的兼容性。 1. **电子邮件营销**:电子...

    Foxmail利用live设置Hotmail邮箱

    Foxmail 设置 Hotmail 的方法是在“发送邮件服务器(SMTP)”和“接收邮件服务器(POP3)”中填写相应的服务器地址。例如,在“发送邮件服务器(SMTP)”中填写"smtp.live.com",在“接收邮件服务器(POP3)”中...

    OUTLOOK2007设置HOTMAIL邮箱.pdf

    在“接收邮件服务器”中输入“pop3.live.com”,在“发送邮件服务器”中输入“smtp.live.com”。在“用户名”中输入您的 Hotmail 邮箱用户名(例如:example555@hotmail.com),在“密码”中输入您的 Hotmail 邮箱...

    python自动发送邮件,支持所有邮箱.rar

    这个名为"python自动发送邮件,支持所有邮箱.rar"的压缩包文件很可能包含了一个Python脚本,该脚本能够帮助用户通过编程方式发送邮件,并且兼容各种邮箱服务提供商。下面我们将深入探讨Python发送邮件的相关知识。 ...

    outlook设置hotmail邮箱

    而对于许多用户来说,能够将Outlook与Hotmail邮箱进行整合使用,无疑能极大提升工作效率和便捷性。Hotmail邮箱是微软提供的网络邮件服务,自1996年推出以来,一直是全球使用最广泛的免费电子邮件服务之一。 然而,...

    hotmail邮件转发设置借鉴.pdf

    标题中的“hotmail邮件转发设置借鉴”指的是如何配置Hotmail邮箱以实现邮件自动转发。Hotmail是微软提供的一个电子邮件服务,现在通常称为Outlook.com。这个过程对于那些希望将收到的Hotmail邮件自动转发到其他电子...

    发邮件,支持SSL\TLS,支持Gmail、Hotmail、yahoo

    总的来说,这个项目解决了在.NET环境中使用SSL/TLS与Gmail、Hotmail、Yahoo等邮件服务进行安全通信的问题,提高了邮件发送的安全性和兼容性。对于需要在应用中集成邮件发送功能的开发者来说,这是一个非常实用的资源...

    java发邮件完整以及各个邮箱的设置

    JavaMail是Java编程语言中用于发送和接收电子邮件的标准API,它是通过JavaMail API来实现的。这个API提供了与SMTP(简单邮件传输协议)...通过以上步骤,你应该能够成功地用JavaMail实现从各种邮箱服务发送邮件的功能。

    Hotmail邮箱pop3服务器设置方法.docx

    Hotmail 邮箱 POP3 服务器设置方法 Hotmail 邮箱 POP3 服务器设置方法是指用户可以通过设置 POP3 服务器来收发 Hotmail 邮件,实现邮件客户端与 Hotmail 邮箱的同步。下面是 Hotmail 邮箱 POP3 服务器设置方法的...

    OUTLOOK2007设置HOTMAIL邮箱

    OUTLOOK2007 设置 HOTMAIL 邮箱 OUTLOOK2007 设置 HOTMAIL 邮箱是指使用 OUTLOOK2007 客户端软件...OUTLOOK2007 设置 HOTMAIL 邮箱需要按照上述步骤进行设置,并且需要注意防火墙的监控,以免出现无法发送邮件的情况。

    C# 发送邮件关键代码,绝对能用2010年上传

    根据提供的信息,我们可以总结出以下关于使用C#发送邮件的关键知识点: ### 1. C# 发送邮件的基础概念 在C#中发送电子邮件通常涉及到.NET Framework中的`System.Net.Mail`命名空间,该命名空间提供了用于发送电子...

    Windows Live企业邮箱的注册与使用

    Windows Live企业邮箱是一种由微软提供的免费企业邮件服务,它允许企业使用自己的域名作为电子邮件的后缀,从而提升公司的专业形象并方便地管理员工的邮箱。使用企业邮箱的一大好处是能够自定义邮箱地址,例如,一个...

    hotmail OUTLOOK设置 hotmail OUTLOOK设置

    5. 在“服务器信息”对话框中,输入接收邮件服务器和发送邮件服务器的信息。 6. 在“登录信息”对话框中,输入用户名和密码。 7. 点击“更多设置”,然后选择“发送服务器”,选中“我的发送服务器(SMTP)要求认证...

    java实现发送邮件,注册邮件激活账户

    你需要根据实际使用的邮箱提供商来配置这些信息。 2. **创建Session对象** `Session`对象是JavaMail的核心,它包含了邮件发送的所有属性。可以使用`Properties`类设置SMTP服务器信息,并通过`Session.getInstance...

    精彩编程与编程技巧-Visual Basic 6中发送邮件的新方法...

    ### Visual Basic 6中发送邮件的新方法:使用CDONTS组件 #### 一、引言 随着信息技术的发展,电子邮件已经成为日常工作中不可或缺的一部分。在Visual Basic 6中,开发者可以通过多种方式实现邮件发送功能,其中...

    Hotmail邮箱信件监视器

    在互联网上,电子邮件主要遵循SMTP(简单邮件传输协议)来发送邮件,而IMAP(因特网消息访问协议)或POP3(邮局协议版本3)则用于接收邮件。对于Hotmail(现在已更名为Outlook.com),微软提供了Exchange Web ...

    php_smtp.rar_hotmail smtp php_php smtp hotmail_php 邮件_smtp_smtp_

    标题中的"php_smtp.rar_hotmail smtp php_php smtp hotmail_php 邮件_smtp_smtp_"表明这个压缩包包含的是关于PHP通过SMTP协议发送邮件的相关资源,特别是针对Hotmail邮箱的服务。SMTP(Simple Mail Transfer ...

    java发送邮件功能

    实现java发送邮件功能,以正式gmail,hotmail等主流邮箱邮件都可接收到

    C# SMTP 发送邮件

    本篇将详细阐述如何使用C#通过SMTP来发送邮件,以及针对163、Gmail和Hotmail等主流邮箱服务的实现细节。 首先,为了在C#中发送邮件,我们需要引入`System.Net.Mail`命名空间,它包含了处理SMTP邮件发送所需的类。...

Global site tag (gtag.js) - Google Analytics