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

利用gmail发送邮件代码

阅读更多
现在能使用pop3/smtp的邮箱不多了,而且还需要手动设置,gmail邮箱就不错,他的端口号和其他的邮箱不一样,发信的端口号是465,这段代码是我从网上找到的,感觉很简洁,只是没有附件功能,不过还是可以满足需求的。
package com.util;

import java.security.Security;
import java.util.Date;
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.AddressException;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;

public class GmailSender {

public void sender(String to,String title,String text) throws AddressException, MessagingException {
   Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider());
   final String SSL_FACTORY = "javax.net.ssl.SSLSocketFactory";
   // Get a Properties object
   Properties props = System.getProperties();
   props.setProperty("mail.smtp.host", "smtp.gmail.com");
   props.setProperty("mail.smtp.socketFactory.class", SSL_FACTORY);
   props.setProperty("mail.smtp.socketFactory.fallback", "false");
   props.setProperty("mail.smtp.port", "465");
   props.setProperty("mail.smtp.socketFactory.port", "465");
   props.put("mail.smtp.auth", "true");
   final String username = "你要利用发信的gmail邮箱";
   final String password = "密码";
   Session session = Session.getDefaultInstance(props, new Authenticator(){
      protected PasswordAuthentication getPasswordAuthentication() {
          return new PasswordAuthentication(username, password);
      }});

       // -- Create a new message --
   Message msg = new MimeMessage(session);

   // -- Set the FROM and TO fields --
   msg.setFrom(new InternetAddress(username));
   msg.setRecipients(Message.RecipientType.TO,
     InternetAddress.parse(to,false));//收件人地址
   msg.setSubject(title);//邮件标题
   msg.setText(text);//邮件正文
   msg.setSentDate(new Date());
   Transport.send(msg);

   System.out.println("Message sent.");
}
}
分享到:
评论
1 楼 jespring 2010-06-24  
当使用非gmail域名的gmail邮箱作为smtp发送电子邮件时报异常:
Exception in thread "main" javax.mail.AuthenticationFailedException: 535-5.7.1 Username and Password not accepted. Learn more at                  
535 5.7.1 http://mail.google.com/support/bin/answer.py?answer=14257 t1sm5948620rvl.21

at com.sun.mail.smtp.SMTPTransport$Authenticator.authenticate(SMTPTransport.java:648)
at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:583)
at javax.mail.Service.connect(Service.java:313)
at javax.mail.Service.connect(Service.java:172)
at javax.mail.Service.connect(Service.java:121)
at javax.mail.Transport.send0(Transport.java:190)
at javax.mail.Transport.send(Transport.java:120)
at com.maweis.util.GmailSender.main(GmailSender.java:44)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:110)

相关推荐

    c#gmail发送邮件资料

    在C#编程环境中,利用.NET Framework的System.Net.Mail命名空间中的MailMessage和SmtpClient类,我们可以轻松地实现通过Gmail服务发送电子邮件的功能。本文将详细介绍这个过程,并提供相关的代码示例。 首先,确保...

    Android自带的邮件发送代码

    在Android平台上,开发人员可以利用内置的SMTP(Simple Mail Transfer Protocol)支持来实现邮件发送功能。这个过程涉及到多个步骤和关键知识点,包括设置权限、构建邮件消息对象、选择邮件服务提供商以及处理网络...

    利用 spring mail 通过 gmail(SSL) 发邮件

    本教程将详细讲解如何利用Spring Mail通过Gmail的SSL(安全套接层)协议来发送邮件。 首先,我们需要在项目中引入Spring Mail的依赖。如果你使用的是Maven,可以在pom.xml文件中添加以下依赖: ```xml <groupId>...

    邮件发送源代码

    本教程将探讨如何在Java环境中利用SMTP(Simple Mail Transfer Protocol)协议通过编程方式发送邮件。我们将以IntelliJ IDEA 2018.1.2 x64作为开发工具,这个版本的IDE提供了强大的支持来构建和调试Java应用。 首先...

    VC简单邮件发送代码

    【VC简单邮件发送代码】是基于Visual C++ 6.0开发的一个小型应用程序,它主要用于实现基础的电子邮件发送功能。这个程序的核心在于利用SMTP(Simple Mail Transfer Protocol)协议,这是一种互联网标准,用于从一个...

    VS2015C++利用SMTP发送邮件的例子(支持附件发送)Gmail,163,qq,yahoo等邮箱

    在本文中,我们将深入探讨如何使用Visual Studio 2015 C++ Win32应用程序通过SMTP(Simple Mail Transfer Protocol)发送邮件,特别是针对Gmail、163、QQ和Yahoo等主流邮件服务提供商。这个例子提供了完整的源代码,...

    Python操作Gmail@定时定向群发邮件

    通过这个库,我们可以连接到Gmail服务器并发送邮件。而email库则提供了构建邮件消息体的工具,包括创建邮件头信息和正文。 在`sentGmail.py`这个文件中,我们首先需要配置Gmail的SMTP服务器地址('smtp.gmail.com'...

    gmail-sender-helper,这个库帮助你向gmail发送电子邮件.zip

    总之,`gmail-sender-helper` 是一个方便的工具,它使得通过Gmail发送邮件变得更加简单,同时也为开发者提供了一个学习和理解SMTP协议、OAuth2认证以及Python库集成的好机会。正确理解和使用这个库,可以极大地提升...

    php发邮件类smtp发邮件发送文本发送附件和图片全部代码

    在`send_mail`文件中,你可能会看到类似这样的结构,通过参数传递邮件的相关信息,然后调用上述代码来完成邮件的发送。这个`send_mail`文件可以作为一个实用工具,帮助你在项目中轻松地处理邮件发送的需求。

    利用Bean发邮件.rar_bean mail_发邮件

    这个压缩包文件可能包含了相关教程或者示例代码,如"www.pudn.com.txt"可能是从某个论坛或资源网站下载的资料链接,而"利用Bean发邮件"可能是一个Java类或者项目文件,用于演示如何使用Spring Bean来发送邮件。...

    C#发送邮件例子 By Andrew

    Andrew提供的这个例子将向我们展示如何利用C#的SMTP(Simple Mail Transfer Protocol)服务来实现邮件的发送。以下是一些关于C#发送邮件的关键知识点: 1. **System.Net.Mail命名空间**:C#中发送邮件主要依赖于`...

    Android后台发送邮件.rar

    在服务中调用上述邮件发送代码。 ```java public class EmailService extends IntentService { public EmailService() { super("EmailService"); } @Override protected void onHandleIntent(Intent intent...

    java发邮件例子代码

    这个例子代码将演示如何在Java环境中利用`commons-email-1.0.jar`库来发送带有附件的邮件。Apache Commons Email库提供了丰富的功能,简化了邮件发送过程。 首先,你需要在项目中引入`commons-email-1.0.jar`库。这...

    pb 发送邮件+邮箱设置+安装

    在PowerBuilder中实现邮件发送,通常会利用.NET或Java的SMTP服务,通过创建一个SMTP客户端来连接邮件服务器,设置发件人、收件人、主题、正文等信息,然后发送邮件。SMTP(Simple Mail Transfer Protocol)是互联网...

    android邮件发送客户端代码

    在本例中,我们将关注如何实现一个能够利用Gmail、163和QQ邮箱服务进行邮件发送的客户端代码。这个客户端应该能够处理各种SMTP服务器的配置,以支持不同的邮件提供商。 首先,我们需要在Android项目中引入必要的库...

    批量发送邮件(excel表格里面的邮箱地址)

    本教程将详细讲解如何利用按键精灵(AutoHotkey)脚本编写一个批量发送邮件的软件,并结合Excel表格来管理收件人邮箱地址。 首先,我们需要了解SMTP(Simple Mail Transfer Protocol)服务。SMTP是互联网上传输电子...

    Laravel开发-laravel-gmail

    6. **邮件标签和分类**:利用Gmail的标签功能,你可以对邮件进行分类和管理,方便用户查找和组织邮件。 7. **事件监听**:可以监听Gmail的事件,比如当有新邮件到达时触发某些操作,实现自动化工作流。 8. **异步...

    Java邮件发送代码

    本教程将详细解释如何使用Java编写邮件发送代码,以及如何利用附带的说明文档进行配置。 首先,要发送邮件,你需要在项目中引入JavaMail API的相关依赖。这通常包括`javax.mail`和`javax.mail-api`库。在Maven项目...

    java发送邮件实例

    Java程序可以利用SMTP服务发送邮件,但需要通过一个API来实现,JavaMail就是这样的工具。 JavaMail API是Java中用于处理邮件的接口库,它提供了创建、发送和接收邮件的功能。要使用JavaMail发送邮件,你需要以下...

    28_单片机发送电子邮件(SMTP).rar

    本压缩包文件“28_单片机发送电子邮件(SMTP).rar”显然是一个关于如何利用单片机通过SMTP(Simple Mail Transfer Protocol)协议发送电子邮件的教学资源。下面我们将深入探讨这一主题,讲解相关知识点。 首先,...

Global site tag (gtag.js) - Google Analytics