所需要的jar包: http://pan.baidu.com/s/1qWGZRJm

如果遇到这个错误:在windows防火墙允许 javaw.exe访问网络.或者关闭防火墙

FATAL ERROR in native method: JDWP No transports initialized, jvmtiError=AGENT_ERROR_TRANSPORT_INIT(197)
ERROR: transport error 202: connect failed: Connection timed out
ERROR: JDWP Transport dt_socket failed to initialize, TRANSPORT_INIT(510)
JDWP exit error AGENT_ERROR_TRANSPORT_INIT(197): No transports initialized [../../../src/share/back/debugInit.c:750]

如果你使用qq邮箱,将会遇到这个错误

454 Authentication failed, please open smtp flag first!

在QQ邮箱的设置里面,找到账户-> POP3/IMAP/SMTP选择开启POP3/SMTP服务

package study;

import java.util.Date;
import java.util.Properties;
import java.util.Scanner; import javax.mail.Address;
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; public class email
{
public static void main(String [] args) throws MessagingException
{
final String userName="1653157218@qq.com"; //设置发件人用户名
final String password="*********"; //设置发件人密码
Properties pro=new Properties();
pro.put("mail.smtp.host", "smtp.qq.com");
// 设置发送邮件端口号
pro.put("mail.smtp.port", "25");
// 设置邮件发送需要认证
pro.put("mail.smtp.auth", "true");
// 创建邮件验证信息,即发送邮件的用户名和密码 Authenticator authenticator = new Authenticator() { protected PasswordAuthentication getPasswordAuthentication() {
// 重写验证方法,填写用户名,密码
return new PasswordAuthentication(userName, password);
}
};
// 根据邮件会话 构建一个邮件的session
Session sendMailSession = Session.getDefaultInstance(pro, authenticator);
// 创建一个邮件消息
Message message = new MimeMessage(sendMailSession);
// 创建邮件发送者地址
Address sourceAddress = new InternetAddress(userName);
// 将原地址设置到消息的信息中
message.setFrom(sourceAddress);
// 创建邮件的接收者地址
Address destAddress = new InternetAddress("dbyl@dbyl.cn");
// 将接收者的地址设置到消息的信息中
message.setRecipient(Message.RecipientType.TO, destAddress);
// 设置邮件的主题
message.setSubject("Merry Christmas!");
// 设置邮件的发送内容
message.setText("Hi there,Merry Christmas!"); Transport.send(message);;
System.out.print("your Email send successful\n");
} }

java mail api 使用的更多相关文章

  1. Android使用Java Mail API发送邮件

    最近在考虑为已经有的一个应用程序增加一个用户反馈的功能,用户可以通过反馈功能将用户的意见和建议.程序出现的问题以一种更符合用户习惯的方式反馈回来.网上也有一些实现好的反馈程序的服务,包括bug的提交. ...

  2. 通过Spring Mail Api发送邮件

    使用Java Mail API来发送邮件也很容易实现,但是最近公司一个同事封装的邮件API实在让我无法接受,于是便打算改用Spring Mail API来发送邮件,顺便记录下这篇文章. [Spring ...

  3. java mail使用中遇到的550类型错误

    前言 首先,需要说明的是,本错误来自于一个简单的基于java mail的api程序,邮件服务器是163的SMTP,即smtp.163.com. 程序 需要说明一下,下面这个程序,是来自于网络上,本人为 ...

  4. Java Mail(三):Session、Message详解

    http://blog.csdn.net/ghsau/article/details/17909093 ************************************* 本文来自:高爽|Co ...

  5. Java邮件服务学习之三:邮箱服务客户端-Java Mail

    一.java mail的两个JAR包 1.mail.jar:不在JDK中,核心功能依赖JDK4及以上,该jar包已经加入到java EE5: 下载地址:http://www.oracle.com/te ...

  6. 使用Java Mail发送邮件

    本笔记参考自:高爽|Coder,原文地址:http://blog.csdn.net/ghsau/article/details/17839983 JavaMail是SUN提供给开发人员在应用程序中实现 ...

  7. 《Java Mail》

    <Java Mail> 文/冯皓林 完稿:2016.3.16--2016.3.19 “特定环境.一类问题.N个解决方案” 一.RFC821文档说明 核心: 邮件(Mail): 1.邮件头( ...

  8. 利用java mail发送邮件(转)

    JavaMail是SUN提供给开发者在应用程序中实现邮件发送和接收功能而提供的一套标准开发类库,支持经常使用的邮件协议,如SMTP.POP3.IMAP.开发者使用JavaMail编写邮件程序时,无需考 ...

  9. Java Mail(二):JavaMail介绍及发送一封简单邮件

    http://blog.csdn.net/ghsau/article/details/17839983 ************************************************ ...

随机推荐

  1. CocoaLumberjack

    刚学iOS时候,调试找问题的时候一般就两种方式. 1.输出NSLog日志. 2.打断点,一步一步查看问题,查找崩溃点所在的方法,再进一步查看崩溃具体原因,稍微高级一点的就在控制台用命令打印各种参数. ...

  2. android自定义控件(9)-Android触摸事件分发机制

    触摸事件的传递机制:   首先是最外层的viewgroup接收到事件,然后调用会调用自己的dispatchTouchEvent方法.如果在ACTION_DOWN的时候dispatchTouchEven ...

  3. 如何解压.bz2文件包

    .bz2  解压1:bzip2 -d FileName.bz2  解压2:bunzip2 FileName.bz2  压缩: bzip2 -z FileName  .tar.bz2  解压:tar j ...

  4. UTF-8-BOM

    https://www.zhihu.com/question/20167122 知乎 「带 BOM 的 UTF-8」和「无 BOM 的 UTF-8」有什么区别?网页代码一般使用哪个? http://b ...

  5. CString

    CString gray("Gray"); CString cat("Cat"); CString graycat = gray + cat;   与其用 sp ...

  6. 机器码call和jmp地址的计算

    call和jmp都是跳转指令,但是call的同时会把pc地址压入堆栈,并且这两种方式都有远和近跳转.下面的分析不全,因为没有在网上找到足够的资料,个人创造这个情景还是有些困难. 1.例子中的call的 ...

  7. Perl 正则表达式

    匹配:m/<regexp>;/ (还可以简写为 /<regexp>;/ ,略去 m)替换:s/<pattern>;/<replacement>;/转化: ...

  8. 资源URL地址记录

    1. 如何搭建VPN服务器 http://www.360doc.com/content/11/0217/11/3084932_93749130.shtml http://www.softxp.net/ ...

  9. polymorphic-associations 多态关联实例 ruby on rails

    这次做新项目的时候,把图片都放在了一个表里,其他表中不再存图片信息,通过多态关联建立表之间的关系. (1)新建picture表, component表不需要处理 class CreatePicture ...

  10. ORA-14402: 更新分区关键字列将导致分区的更改

    默认情况下,oracle的分区表对于分区字段是不允许进行update操作的,如果有对分区字段行进update,就会报错——ORA-14402: 更新分区关键字列将导致分区的更改.這種情況可以通過開啟表 ...