`
阅读更多
简单的读收邮件
package smtp;

import java.util.Properties;

import javax.mail.Authenticator;
import javax.mail.Folder;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.NoSuchProviderException;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Store;
import javax.mail.Transport;
import javax.mail.internet.AddressException;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;

public class SmtpTest {
	private Session session;

	public void init() {
		Properties props = new Properties();
		props.put("mail.smtp.host", "smtp.163.com");
		props.put("mail.smtp.auth", "true");
		session = Session.getInstance(props, new Authenticator() {
			@Override
			public PasswordAuthentication getPasswordAuthentication() {
				return new PasswordAuthentication("lujin55", "123456");
			}
		});
	}

	public void sendMail() {
		MimeMessage mm = new MimeMessage(session);
		try {
			InternetAddress fia = new InternetAddress("lujin55@163.com");
			mm.setFrom(fia);
			InternetAddress tia = new InternetAddress("417952406@qq.com");
			mm.addRecipient(Message.RecipientType.TO, tia);
			mm.setSubject("study");
			mm.setText("dear liu");
			Transport.send(mm);
		} catch (AddressException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (MessagingException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}

	public void readMail() {
		try {
			Properties props = new Properties();
			Session s = Session.getInstance(props, null);
			//s.setDebug(true);
			Store store = s.getStore("pop3");
			store.connect("pop3.163.com","lujin55@163.com", "123456");
			Folder folder = store.getFolder("INBOX");
			folder.open(Folder.READ_ONLY);
			Message[] messages = folder.getMessages();
			for(int i=0;i<messages.length;i++){
				System.out.println(messages[i].getFrom());
				System.out.println(messages[i].getSubject());
			}
		} catch (NoSuchProviderException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (MessagingException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}

	public static void main(String args[]) {
		SmtpTest test = new SmtpTest();
		// test.init();
		// test.sendMail();
		test.readMail();
	}

}

其中遇见:553 you are not authorized to send mail authentication is required。
解决:props.put("mail.smtp.auth", "true");  true没加双引号,真的是郁闷了半天。
读取的时候遇见问题:connect refused。
解决:store.connect("pop3.163.com","lujin55@163.com", "123456");我看别人都是用smtp.163.com,可是报错了,改成pop3.163.com就对了。还不知道为什么?


下面的地址有更详细的介绍。
http://www.blogjava.net/action/archive/2006/04/24/42794.html
http://blog.csdn.net/steven_05514/article/details/3478776
http://www.roseindia.net/tutorialhelp/comment/86637
分享到:
评论

相关推荐

    SMTP错误码建议解决方法

    SMTP 错误码建议解决方法 SMTP(Simple Mail Transfer Protocol)是互联网上使用最广泛的邮件传输协议之一。然而,在邮件传输过程中,经常会出现各种错误,使得邮件不能正常传输。下面我们将详细介绍常见的 SMTP ...

    SMTP邮箱连接测试工具

    SMTP邮箱连接测试工具,用于SMTP测试邮箱是否正常

    计算机网络课程设计报告:基于SMTP协议的模拟邮件系统

    本文是 基于SMTP协议的模拟邮件系统的 课程设计报告 全文包括:设计内容、需求分析、系统总体设计(系统功能模块设计、系统数据库总体设计、)、数据库设计、系统功能设计与实现、总结与反思(问题及解决问题、收获...

    SMTP传输配置课件

    8、1 SMTP配置和虚拟服务器 8、1、1 配置附加的SMTP虚拟服务器 8、1、2 管理来信通信量 8、1、3 管理外发消息通信量 8、1、4 配置协议日志 8、1、5 练习1:中继限制和垃圾邮件 8、2 自定义SMTP服务 ...

    Magento-SMTP-Email

    magento的SMTP插件magento的SMTP插件magento的SMTP插件

    基于邮件交换(MX)与SMTP协议发送邮件

    基于邮件交换(MX)与SMTP协议发送邮件,可以无须SMTP服务器中转直接将E-Mail电子邮件发送到对方邮箱,代码中提供了网卡信息获取类,可以获取本机IP地址、子网掩码、DNS、Wins、网卡MAC地址等相关信息;还提供了SMTP协议...

    C++ QT SMTP 发送邮件(最新,成功的)

    1. 指定 SMTP的服务器 2. 指定发件人的用户名(一般都是邮箱),密码 3. 指定发件人(同2中的发件人),收件人(可多个),主题,正文,附件,点击发送按钮,即可发送 4. 内附了很多Demo代码,供大家参考,非常的容易 ...

    发送邮件发送,先提一下SMTP

    说到发送邮件发送,先提一下SMTP(呵呵,高手就跳过这一段吧!)。 SMTP的全称是“Simple Mail Transfer Protocol”,即简单邮件传输协议。它是一组用于从源地址到目的地址传输邮件的规范,通过它来控制邮件的中转方式...

    C语言socket/smtp发送邮件,支持附件,支持windows和linux

    /* * 使用规则: * 可以发送带附件的邮件,附件大小限制由发送方服务器而定,暂未测试具体为多少MB ...* 自动解析发件箱的SMTP服务器 */ 支持windows系统,linux系统。 上一版本的更新版。 详细情况件压缩包的readme

    基于POP3、SMTP协议的MFC实现邮件客户端

    POP3: 1.支持本地缓存最新的3封邮件。 2.正常解析出收件人、发件人、主题、日期、邮件内容。 3.正常解析无格式纯文本,支持中文、英文和中英... SMTP: 1.支持发送中英文的邮件。 2.支持给多人发送邮件,每个收件人之

    SMTP测试邮件发送工具

    SMTP测试工具,简单快捷,测试电脑是否能够发送邮件。

    Swift-SMTP:Swift SMTP客户端

    迅捷SMTP Swift SMTP客户端。特征必要时通过SSL / TLS安全连接使用CRAM-MD5,LOGIN,PLAIN或XOAUTH2进行身份验证发送带有本地文件,HTML和原始数据附件的电子邮件添加自定义标题迅捷版macOS和Linux: Swift 4.0.3 ,...

    netty-codec-smtp-4.1.73.Final-API文档-中英对照版.zip

    赠送jar包:netty-codec-smtp-4.1.73.Final.jar; 赠送原API文档:netty-codec-smtp-4.1.73.Final-javadoc.jar; 赠送源代码:netty-codec-smtp-4.1.73.Final-sources.jar; 赠送Maven依赖信息文件:netty-codec-...

    Go-smtp2http是一个简单的smtp服务器

    smtp2http是一个简单的smtp服务器,它接收 smtp请求(电子邮件)并作为http post请求发送到指定的webhook

    基于SMTP协议的邮件发送客户端程序设计说明书

    通过对“基于SMTP协议的邮件发送客户端程序”的系统分析、系统设计、编码、调试等工作的实践,了解基于TCP/IP协议的网络编程的一般设计和实现思路,熟悉和掌握软件设计和实现的一般方法,深入了解邮件传输协议的基本...

    最新SMTP企业邮箱探测器

    4.自动根据邮箱地址获取邮箱的SMTP服务器,支持获取三种方式 顶级域名,smtp.+顶级域名 和 mail. + 顶级域名。 5.完美支持多线程扫描,非一般软件的多开所能比拟(单线程用多开的方式让你开你能开几十个而纯多线程...

    SMTP&POP3协议详细&MIME规范

    该压缩包包含三个文档,分别是SMTP协议详解,POP3协议详解,MIME规范详解,文档中详细介绍了一个邮件发送和接收的过程分析,协议本身的包含的命令和工作过程,为开发邮件代理的客户端提供技术基础。如下是部分SMTP...

    PHP邮件发送类SMTP

    发送电子邮件通过SMTP协议。它可以通过一个指定的服务器进行邮件传递或直接发送邮件到收件人的邮件服务器的紧急运送。它支持安全连接 使用SSL或TLS的后开始建立连接,连接超时,验证使用PHP SASL级(普通,登录,...

    最新SMTP探测新版.zip

    4.自动根据邮箱地址获取邮箱的SMTP服务器,支持获取三种方式 顶级域名,smtp.+顶级域名 和 mail. + 顶级域名。 5.完美支持多线程扫描,非一般软件的多开所能比拟(单线程用多开的方式让你开你能开几十个而纯多线程...

    前端发邮件smtp.js

    前端发邮件smtp.js

Global site tag (gtag.js) - Google Analytics