手机版
你好,游客 登录 注册
背景:
阅读新闻

Java基础进阶:使用JavaMail发送邮件

[日期:2017-02-25] 来源:Linux社区  作者:caidifa [字体: ]

最近做的一个项目中遇到了要用Java发送邮件的需求, 在网上找了下资料,使用JavaMail发送邮件, 并整理出来。

第一步: 导包

1.使用maven

我这里使用的是maven, IDE工具则是用的idea, 所以这里给出配置文件pom.xml里Jar包资源

<!-- 发送邮件 -->
<dependency>
    <groupId>javax.mail</groupId>
    <artifactId>mail</artifactId>
    <version>1.4.7</version>
</dependency>

2.自己下载架包

如果没用maven的话, 就网上找个找个javaMail的jar包导入到自己的项目里即可

3.总结:

借这次机会正好总结下这2种导包方式 首先说下maven, maven的创建方法先省略, 在以后的博文中我会一步一步讲解 一般在创建完maven并构建刷新完成后, 我们只需要把相关包的API资源写到pom.xml文件里, 则会自动下载(前提是你的本地maven仓库里没有,有的话则不用再次下载了), 这时你的项目可以直接使用这个jar包了; 关于包的API, 这里我个人是在这个网站里找的(速度还挺快的): http://mvnrepository.com/ 大家可以参考下 通过这个网站(或者其他API网站也可), 就可以完成以上2种导包方式;

具体步骤(图解):

1.登陆API网站:

http://mvnrepository.com/ 并搜索所需jar包名
搜索jar包

2.点击找到的jar包

找到所需版本好单击进入(如果不明确, 尽量选Usages(使用次数)最多的)
这里写图片描述
根据方式的不同, 进行相应的操作
这里写图片描述

第二步: 编写Java代码

package com.cai.utils;

import javax.mail.*;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import java.util.Properties;

/**
 * Created by caibaolong on 2017/1/17.
 * 发送邮件的相关工具
 */
public class MailUtil {

    /**
     * 使用Java发送一份邮件
     *
     * @param subject 邮件主题
     * @param content 邮件内容
     * @param address 目标地址
     * @throws MessagingException 邮件发送时异常
     */
    public static void mailForPassword(String subject, String content, String address) throws MessagingException {
        Properties props = new Properties();
        // 发送服务器需要身份验证
        props.setProperty("mail.smtp.auth", "true");
        // 设置邮件服务器主机名
        props.setProperty("mail.host", "发件邮箱stmp地址");
        // 发送邮件协议名称
        props.setProperty("mail.transport.protocol", "smtp");
        // 设置环境信息
        Session session = Session.getInstance(props);
        // 创建邮件对象
        Message msg = new MimeMessage(session);
        // 设置邮件主题
        msg.setSubject(subject);
        // 设置邮件内容
        msg.setText(content);
        // 设置发件人
        msg.setFrom(new InternetAddress("发件邮箱地址"));
        Transport transport = session.getTransport();
        // 连接邮件服务器
        transport.connect("发件邮箱地址", "发件邮箱的密码");
        // 发送邮件
        transport.sendMessage(msg, new Address[]{new InternetAddress(address)});
        // 关闭连接
        transport.close();
    }

}

注:
1. 我自己测试的发件用邮箱是163.com, 测试成功。
2. 发件用的邮箱需要设置stmp服务要打开。

本文永久更新链接地址http://www.linuxidc.com/Linux/2017-02/141064.htm

linux
相关资讯       JavaMail发送邮件  JavaMail 
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款