这个例子是张三同学写给李四mm的一封email情书...

import java.util.Date;

import java.util.Properties; import javax.mail.Address;

import javax.mail.Authenticator;

import javax.mail.Message;

import javax.mail.PasswordAuthentication;

import javax.mail.Session;

import javax.mail.Transport;

import javax.mail.internet.InternetAddress;

import javax.mail.internet.MimeMessage;

/**

*

* @author:Ellrien

* @date: 2013-10-8上午10:26:26

* @version: 1.0

*/

public class EmailSupport {

/**

* 发送普通邮件

*/

// 邮箱服务器

private String host = "smtp.126.com";

// 这个是你的邮箱用户名

private String username = "zhangsan";

// 你的邮箱密码

private String password = "password";

private String mail_head_name = "this is head of this mail";

private String mail_head_value = "this is head of this mail";

//收件人email地址

private String mail_to = "lisi@163.com";

//发件人email地址

private String mail_from = "zhangsan@126.com";

//邮件主题

private String mail_subject = "邮件主题";

//邮件内容

private String mail_body = "邮件内容:李四mm,巴拉巴拉一大堆令李四mm心动的话...";

//发件人名称

private String personalName = "发件人姓名";

/**

* 此段代码用来发送普通电子邮件

*/

public void send() throws Exception {

try {

Properties props = new Properties(); // 获取系统环境

Authenticator auth = new Email_Autherticator(); // 进行邮件服务器用户认证

props.put("mail.smtp.host", host);

props.put("mail.smtp.auth", "true");

Session session = Session.getDefaultInstance(props, auth);

// 设置session,和邮件服务器进行通讯。

MimeMessage message = new MimeMessage(session);

// message.setContent("foobar, "application/x-foobar"); // 设置邮件格式

message.setSubject(mail_subject); // 设置邮件主题

message.setText(mail_body); // 设置邮件正文

message.setHeader(mail_head_name, mail_head_value); // 设置邮件标题

message.setSentDate(new Date()); // 设置邮件发送日期

Address address = new InternetAddress(mail_from, personalName);

message.setFrom(address); // 设置邮件发送者的地址

Address toAddress = new InternetAddress(mail_to); // 设置邮件接收方的地址

message.addRecipient(Message.RecipientType.TO, toAddress);

Transport.send(message); // 发送邮件

System.out.println("send ok!");

} catch (Exception ex) {

ex.printStackTrace();

throw new Exception(ex.getMessage());

}

}

/**

* 用来进行服务器对用户的认证

*/

public class Email_Autherticator extends Authenticator {

public Email_Autherticator() {

super();

}

public Email_Autherticator(String user, String pwd) {

super();

username = user;

password = pwd;

}

public PasswordAuthentication getPasswordAuthentication() {

return new PasswordAuthentication(username, password);

}

}

public static void main(String[] args) {

EmailSupport sendmail = new EmailSupport();

try {

sendmail.send();

} catch (Exception ex) {

}

}

}

需要:javamail.jar,下载地址见下面的评论。

email java,java email 过程相关推荐

  1. 用java开发Email工具之发送邮件 (1)作者:冯睿

    作者:冯睿 来源:赛迪网 本文介绍了如何利用Java的网络API来实现一个电子邮件工具程序.通常Email工具都 是使用SMTP(简单邮件传输协议, Simple Mail Transfer Prot ...

  2. 档案电子封装包Java类,email: Android电子邮件库(基于JavaMail封装)

    Email for Android Email for Android是基于JavaMail封装的电子邮件库,简化在Android客户端中编写发送和接收电子邮件的的代码.把它集成到你的Android项 ...

  3. java applet 在线demo_编写可在线收发E-mail的Java Applet

    编写可在线收发E-mail的Java Applet 作者:未知    文章来源:www.jspcn.net 发布日期:2005年01月19日 说起Java,有些人可能会想到一些用于修饰主页的Apple ...

  4. java 程序运行过程 简介

    这里的Java程序运行过程,是指我们编译好代码之后,在命令行开始执行java xxx命令,到java程序开始执行起来的这一过程,我们称其为运行时. 第一步,操作系统解析我们输入的java xxx命令, ...

  5. java创建对象的过程_Java创建对象的过程

    Java创建对象的过程 Java是一门面向对象的编程语言,在Java程序运行过程中每时每刻都有对象被创建出来.在语言层面上,创建对象通常仅仅是一个new关键字而已,而在虚拟机中,对象的创建又是怎样一个 ...

  6. 53.垃圾回收算法的实现原理、启动Java垃圾回收、Java垃圾回收过程、垃圾回收中实例的终结、对象什么时候符合垃圾回收的条件、GC Scope 示例程序、GC OutOfMemoryError的示例

    53.垃圾回收算法的实现原理 53.1.目录 53.2.启动Java垃圾回收 53.3.Java垃圾回收过程 53.4.垃圾回收中实例的终结 53.5.对象什么时候符合垃圾回收的条件? 53.5.1. ...

  7. 【Java】类加载过程

    JVM把class文件加载到内存,并对数据进行校验.解析和初始化,最终形成JVM可以直接使用的Java类型的过程. 类加载的过程主要分为三个部分: 加载 链接 初始化 而链接又可以细分为三个小部分: ...

  8. 下列叙述中正确的是 java语言_1. 下列关于JAVA语言特点的叙述中,错误的是[   ] A、Java是面向过程的编程语言...

    1. 下列关于JAVA语言特点的叙述中,错误的是[  ]A.Java是面向过程的编程语言   B.Java支持分布式计算C.Java是跨平台的编程语言   &... 1. 下列关于JAVA语言 ...

  9. Java创建对象的过程

    java创建对象的过程主要分为一下五个步骤: (1)类加载检查 Java虚拟机(jvm)在读取一条new指令时候,首先检查能否在常量池中定位到这个类的符号引用,并且检查这个符号引用代表的类是否被加载. ...

  10. (转载)CentOS7搭建FastDFS V5.11分布式文件系统及Java整合详细过程

    CentOS7搭建FastDFS V5.11分布式文件系统及Java整合详细过程 绪论 应用场景 详细介绍 上传文件交互过程 下载文件交互过程 FastDFS搭建工具下载 下载工具 安装 libfas ...

最新文章

  1. javascript 代码_如何使您JavaScript代码保持简单并提高其可读性
  2. IntelliLock托管代码保护和许可授权管理系统软件详细介绍及下载
  3. 控制寄存器(CR0,CR1,CR2,CR3,CR4)
  4. syslog-ng 正确配置udp接受端口
  5. BZOJ 1071组队
  6. 初识类的构造方法 c# 1214
  7. linux 查看手机硬件信息失败,linux下硬件信息的查看总结
  8. 深入理解 Java 线程池!
  9. jpetstore学习第4章
  10. sql复制表结构和数据_SQL复制表
  11. 湖北警方打掉一制贩假酒团伙 涉案金额1.6亿元
  12. Mac 配置PHP运行环境
  13. 欠阿里云 1 分钱,数据被删除
  14. css学习----边框属性
  15. python编写个人信息_Python爬取个人微信朋友信息操作示例
  16. 斐波那契数列_详解(C语言)
  17. IDEAR 自动生成serialVersionUID
  18. h5 上 删除 交互_iH5高级教程:H5交互进阶,擦一擦效果
  19. win10无法启动_win10电脑开机进入不了系统如何解决?
  20. 安卓版旅行青蛙三叶草修改教程

热门文章

  1. exchange2010 DAG备份
  2. 谍影重重,由片名想起
  3. 简单总结一下JS的Array对象
  4. linux常用命令示例
  5. MySQL 5.6 关于登陆的初始化设置
  6. 基于用户名/密码认证和流量控制 安装pam_mysql(太麻烦,已放弃;以下步骤可以参考,有报错解决...
  7. 合伙人的重要性超过了商业模式和行业选择(转)
  8. cmd创建一个用户并升级成管理员
  9. iSCSI网络储存应用
  10. android输入法手势程序源码