Java使用JavaMail发送邮件的方法

本文实例讲述了Java使用JavaMail发送邮件的方法。分享给大家供大家参考,具体如下:

代码一、Email_Autherticator.java 服务器验证代码

import javax.mail.Authenticator;
import javax.mail.PasswordAuthentication;
public class Email_Autherticator extends Authenticator {
  String username = "你邮箱的用户名";
  String password = "你邮箱的密码";
  public Email_Autherticator() {
 super();
  }
  public Email_Autherticator(String user,String pwd){
 super();
 username = user;
 password = pwd;
  }
  public PasswordAuthentication getPasswordAuthentication(){
 return new PasswordAuthentication(username,password);
  }
}

代码二、Mail.java 发送邮件的代码

import java.util.Date;
import java.util.Properties;
import javax.mail.Address;
import javax.mail.Authenticator;
import javax.mail.Message;
import javax.mail.SendFailedException;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
public class Mail {
  private String host = "smtp.126.com";
  private String mail_head_name = "this is head of this mail";
  private String mail_head_value = "this is head of this mail";
  private String mail_to = "254173774@qq.com";
  private String mail_from = "hackboyo@126.com";
  private String mail_subject = "this is the subject of this test mail";
  private String mail_body = "this is mail_body of this test mail";
  private String personalName = "我的邮件";
  public void sendMail() throws SendFailedException{
 try {
   Properties props = new Properties();//获取系统环境
   Authenticator auth = new Email_Autherticator();//进行邮件服务用户认证
   props.put("mail.smtp.host", host);
   props.put("mail.smtp.auth", "true");
   System.out.println(props);
   Session session = Session.getDefaultInstance(props,auth);
   //设置session,和邮件服务器进行通讯
   MimeMessage message = new MimeMessage(session);
   message.setContent("Hello","text/plain");//设置邮件格式
   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);
   System.out.println(message);
   Transport.send(message);
   System.out.println("Send Mail Ok!");
 } catch (Exception e) {
   e.printStackTrace();
 }
 //return flag;
  }
}

代码三、Test.java 测试发送邮件的代码

public class Test {
  public static void main(String[] args) {
 Mail m = new Mail();
 try {
   m.sendMail();
 } catch (Exception e) {
 }
  }
}

希望本文所述对大家Java程序设计有所帮助。

(0)

相关推荐

  • 基于java使用JavaMail发送邮件

    一.邮件的相关概念 邮件协议.主要包括: SMTP协议:Simple Mail Transfer Protocol,即简单邮件传输协议,用于发送电子邮件 POP3协议:Post Office Protocol 3,即邮局协议的第三个版本,用于接收邮件 IMAP协议:Internet Message Access Protocol,即互联网消息访问协议,是POP3的替代协议 --------------------------------------------------------------

  • 使用JavaMail发送邮件保证成功的方法

    前言 相信大家应该都知道,一般的开放的api给我们调用都会有个返回值或者状态码,来告诉我们执行成功与否.但是JavaMail却没有提供这样一个返回值. 所以在调用JavaMail发送邮件的时候,我们只能通过catch异常的方式来判断邮件是否发送成功.我们认为只要没有异常发生,那么邮件就能发送成功.那么我们就来分析一下JavaMail为什么没有提供返回值,和通过异常判断邮件发送成功状态是否靠谱. JavaMail发送邮件原理 在使用JavaMail进行发送邮件时,我们必须提供一个邮件会话.创建邮件

  • JavaMail入门教程之发送邮件(3)

    JavaMail API中定义了一个java.mail.Transport类,它专门用于执行邮件发送任务,这个类的实例对象封装了某种邮件发送协议的底层实施细节,应用程序调用这个类中的方法就可以把Message对象中封装的邮件数据发送到指定的SMTP服务器.使用JavaMail发送邮件时设计到的主要API之间的工作关系如下所示: 1.从Session对象中获得实现了某种邮件发送协议的Transport对象: 2.使用Session对象创建Message对象,并调用Message对象的方法封装邮件数

  • JavaWeb中使用JavaMail实现发送邮件功能实例详解

    现在很多的网站都提供有用户注册功能, 通常我们注册成功之后就会收到一封来自注册网站的邮件.邮件里面的内容可能包含了我们的注册的用户名和密码以及一个激活账户的超链接等信息.今天我们也来实现一个这样的功能,用户注册成功之后,就将用户的注册信息以Email的形式发送到用户的注册邮箱当中,实现发送邮件功能就得借助于JavaMail了. 一.搭建开发环境 1.1.创建Web项目 1.2.用户注册的Jsp页面 register.jsp <%@ page language="java" pag

  • javamail 发送邮件的实例代码分享

    注意:要先导入javamail的mail.jar包.以下三段代码是我的全部代码,朋友们如果想用,直接复制即可.第一个类:MailSenderInfo.java 复制代码 代码如下: package com.util.mail;import java.util.Properties;/** * 发送邮件需要使用的基本信息 */public class MailSenderInfo {    //发送邮件的服务器的IP和端口    private String mailServerHost;   

  • Java基于JavaMail实现向QQ邮箱发送邮件

    最近项目在做新闻爬虫,想实现这个功能:爬虫某个页面失败后,把这个页面的 url 发到邮箱.最终实现的效果图如下,后期可以加上过滤标签.失败状态码等,方便分类搜索异常. 开发人员可以根据邮件里的 url 和堆栈信息,分析爬虫失败的原因. 是不是服务器 down 了? 还是爬虫的 Dom 解析没有解析到内容? 还是正则表达式对于这个页面不适用? 开启SMTP服务 在 QQ 邮箱里的 设置->账户里开启 SMTP 服务 注意开启完之后,QQ 邮箱会生成一个授权码,在代码里连接邮箱使用这个授权码而不是原

  • JavaWeb中JavaMail创建邮件和发送邮件

    一.RFC882文档简单说明 RFC882文档规定了如何编写一封简单的邮件(纯文本邮件),一封简单的邮件包含邮件头和邮件体两个部分,邮件头和邮件体之间使用空行分隔. 邮件头包含的内容有: from字段 --用于指明发件人 to字段     --用于指明收件人 subject字段  --用于说明邮件主题 cc字段    -- 抄送,将邮件发送给收件人的同时抄送给另一个收件人,收件人可以看到邮件抄送给了谁 bcc字段 -- 密送,将邮件发送给收件人的同时将邮件秘密发送给另一个收件人,收件人无法看到邮

  • 如何使用JavaMail发送邮件

    现在很多的网站都提供有用户注册功能, 通常我们注册成功之后就会收到一封来自注册网站的邮件.邮件里面的内容可能包含了我们的注册的用户名和密码以及一个激活账户的超链接等信息.今天我们也来实现一个这样的功能,用户注册成功之后,就将用户的注册信息以Email的形式发送到用户的注册邮箱当中,实现发送邮件功能就得借助于JavaMail了. 一.搭建开发环境 1.1.创建Web项目 1.2.用户注册的Jsp页面 register.jsp <%@ page language="java" pag

  • JavaMail发送(带图片和附件)和接收邮件实现详解(四)

    好了,进入这个系列教程最主要的步骤了,前面邮件的理论知识我们都了解了,那么这篇博客我们将用代码完成邮件的发送.这在实际项目中应用的非常广泛,比如注册需要发送邮件进行账号激活,再比如OA项目中利用邮件进行任务提醒等等.我们这里所讲的就是利用 JavaMail 完成邮件的发送和接收功能. PS:本篇博客源码下载链接:https://github.com/YSOcean/cnblogs 1.JavaMail 介绍 JavaMail 是sun公司(现以被甲骨文收购)为方便Java开发人员在应用程序中实现

  • 基于SSM框架+Javamail发送邮件的代码实例

    本篇介绍基于SSM框架(Spring4.0+SpringMVC+Mybatis)组合的Javamail应用,邮箱的话基于腾讯的QQ邮箱,其实也是Foxmail邮箱 先要了解一下SMTP协议和SSL加密 SMTP:称为简单邮件传输协议(Simple Mail Transfer Protocal),目标是向用户提供高效.可靠的邮件传输.SMTP是一种请求响应的协议,也就是客户机向远程服务器发送请求,服务器响应,监听端口是25,所以其工作模式有两种:发送SMTP,接收SMTP. SSL加密:用来保障浏

随机推荐