【JavaMail开发总结】编写简单的发送邮件程序
来源:互联网 发布:div 标签中调用js 编辑:程序博客网 时间:2024/06/15 06:01
上一篇文章主要介绍了,用JavaMail来开发发送邮件程序前的一些了解以及准备,这篇文章就主要来讲如何运用java.mail提供的函数库写一个hello world 程序(不要说怎么又是hello world,编程入门第一个应该都是它了),功能是能够发送一封内容为hello world,主题为hello world的邮件。
回顾下,我们日常生活中发送邮件时,会有哪些操作:
1、 打开邮件登陆网站 (QQ、新浪等等,这时会建立会话Session)
2、 填写用户名和密码登陆 (username, password) ,已登录的用户可省略这一步
3、 选择写信,填写收件人 (Recipient)
4、 填写主题和正文 (Subject, Text)
5、 发送 (sendMessage)
这些步骤由JavaMail.jar文件提供的一些核心类来完成:Session、Message、Address、Authenticator、Transport、Store、Folder。以及javax.mail.internet包中还有一些常用的子类,下面用示例来讲解这些核心类作用。
示例代码
package com.javamail.test.demo;import java.util.Properties;import javax.mail.Address;import javax.mail.Session;import javax.mail.Transport;import javax.mail.internet.InternetAddress;import javax.mail.internet.MimeMessage;public class JavaMailDemo { public static void main(String[] args) throws Exception { Properties props = new Properties(); props.put("mail.smtp.host", "smtp.qq.com"); props.put("mail.smtp.auth", "true"); //基本的邮件会话,Session对象利用了java.util.Properties对象获得了邮件服务器、用户名、密码信息和整个应用程序都要使用到的共享信息。 Session session = Session.getInstance(props); //建立了Session对象后,便可以被发送的构造信息体Message抽象类 MimeMessage message = new MimeMessage(session); //发件地址 Address address = new InternetAddress("***@qq.com"); //设置发信人 message.setFrom(address); //收件地址 Address toAddress = new InternetAddress("**@qq.com"); //设置收信人,Message.RecipientType.TO 收信人,Message.RecipientType.CC抄送人 message.setRecipient(MimeMessage.RecipientType.TO, toAddress); //主题 message.setSubject("hello world"); //正文 message.setText("hello world"); //保存文件 message.saveChanges(); //监控邮件发送过程 session.setDebug(true); //获取实现了SMTP协议的Transport类 Transport transport = session.getTransport("smtp"); //连接服务器(依次填入邮件服务器、用户名、密码信息) transport.connect("smtp.qq.com", "***@qq.com", "***"); //发送 transport.sendMessage(message, message.getAllRecipients()); //关闭连接 transport.close(); }}
运行成功后控制台输出:
收到邮件
0 0
- 【JavaMail开发总结】编写简单的发送邮件程序
- Javamail,编写简单的程序发送邮件
- 【Java邮件开发】5.编写一个JavaMail发送邮件的程序
- javaMail编写发送邮件的程序,以及遇到的问题
- JSP与JavaMail(6)---编写灵活的邮件发送程序
- JSP与JavaMail(6)---编写灵活的邮件发送程序
- 【JavaMail开发总结】配置文件形式--发送邮件程序
- 简单的JavaMail邮件发送
- javamail发送简单的邮件
- javamail简单的发送邮件
- javamail简单的邮件发送
- 邮件发送JavaMail的开发
- JavaMail发送简单邮件
- JavaMail 发送简单邮件
- JavaMail 简单发送邮件
- javaMail简单发送邮件
- JavaMail发送邮件程序
- javamail发送邮件的简单实例
- 丑数
- HDU - 1873 - 看病要排队(模拟栈)
- python thread学习
- leetcode 104 —— Maximum Depth of Binary Tree
- Lucene全文检索入门体验
- 【JavaMail开发总结】编写简单的发送邮件程序
- windows内存管理的几种方式的优缺点
- hdu1285 确定比赛名次 (拓扑排序)
- C语言:顺序结构(数组)的循环队列
- PyQt5初级教程--PyQt5中的对话框[7/13]
- Day8.07
- MongoDB学习笔记记录(C#)
- UIStepper
- STM32学习笔记 ——流水灯