张孝祥java邮件开发详解笔记(生成文本邮件)

package zxx.createMessage;

import java.io.FileOutputStream;
import java.util.Date;
import java.util.Properties;
import javax.mail.Message;
import javax.mail.Session;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;

/**
 * 张孝祥java邮件开发详解 5.5创建简单的纯文本邮件 这个里面只是创建一个文本的邮件(此时mime的类型:text/plain),并没有涉及到发送的部分
 * 要点: 1、如何设置发件人,收件人 2、设置邮件主题,邮件正文,邮件发送时间
 * 
 * @author 后飞IT
 * 
 */
public class TestMessage {

	public static void main(String[] args) {
		try {
			/** 发件人 */
			String from = "[email protected]";
			/** 收件人 */
			String to = "[email protected]";
			/** 邮件主题 */
			String subject = "test";
			/** 邮件内容 */
			String body = "test!!!";

			// 创建一个session实例,用于定义客户端和邮件服务器之间的网络连接信息
			// Properties指的是javamail中有关的属性
			/** 通过properties创建一个会话对象session */
			Session session = Session.getDefaultInstance(new Properties());

			/** 有会话对象session,来构建一封邮件,创建MimeMessage实例对象 */
			MimeMessage msg = new MimeMessage(session);

			/** 设置发件人 */
			msg.setFrom(new InternetAddress(from));
			/** 设置收件人 */
			// to -> 主要接受人 cc-> 抄送接收人 bcc->暗送接受者
			msg.setRecipients(Message.RecipientType.TO,
					InternetAddress.parse(to));

			/** 设置发送日期 */
			msg.setSentDate(new Date());
			/** 设置纯文本的邮件主题 */
			msg.setSubject(subject);
			/** 设置邮件的正文,在纯文本中才是直接这样的,其他的就要注意了 */
			msg.setText(body);

			/** 保存最终生成的邮件正文,这个在测试的时候,貌似不是必须的 */
			msg.saveChanges();
			/** 把MimeMessage对象中的内容写入到文件中去 */
			/*
			 * .eml 是可以用office的outlook打开的,至于其他的,我就不清楚了! 用outlook可以很方便的查看你生成的邮件
			 * 当然你可以用记事本等,直接打开,查看其内容
			 */
			msg.writeTo(new FileOutputStream("C:\\TestMessage.eml"));
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章