一般发送邮件的话系统项目中可能会用到,像一些通知信息自动发送等,会用到发送邮件的情况,发送邮件有好多种,包括设置各种格式,添加图片附件等,当然今天我们先看一下怎么实现发送成功。

  工欲善其事必先利其器,开始之前,一定要引入依赖 ,不然程序会报错

  引入pom.xml文件

<!--发送邮件引入jar包-->
<dependency >
<groupId >javax.mail </groupId >
<artifactId >mail </artifactId >
<version >1.4.6 </version >
</dependency >
<dependency >
<groupId >com.sun.mail </groupId >
<artifactId >javax.mail </artifactId >
<version >1.5.5 </version >
</dependency >

  

引入依赖之后,我们就可以写发送邮件的测试类了

import org.apache.commons.mail.EmailException;
import org.apache.commons.mail.HtmlEmail;
/**
* @author pillar
* @date 2019-05-10
*/ public class testMail {
public static void main(String[] args) {
String msg="testMail: hello word";
testMail.sendMailMessage(msg);
}
/**
* 发送邮件实现类
* @param msg
*/
public static void sendMailMessage(String msg) {
try {
//邮箱服务器地址如:mail.qq.com
String hostName ="139.159.XXX";
// 帐号与密码
String userName ="用户名";
String password = "密码";
// 发件人
String fromAddress ="用户名@XXX.com";
// 发件人姓名
String fromName = "pillarzhang";
HtmlEmail email=new HtmlEmail();
email.setHostName(hostName);// 设置smtp服务器
email.setAuthentication(userName, password);// 设置授权信息
email.setCharset("utf-8");
email.setFrom(fromAddress, fromName, "utf-8");// 设置发件人信息
email.setSubject("testMail");// 设置主题
email.setHtmlMsg(msg);// 设置邮件内容
email.addTo("1208699589@qq.com", "pillarzhang", "utf-8");
System.err.println(email.getSmtpPort());
System.err.println(email.getHostName());
String res = email.send();// 发送邮件
System.err.println(res);
} catch (EmailException e) {
System.err.println("邮件发送失败");
e.printStackTrace();
}
}
}

  

  如果要用qq,163等其他邮箱做服务器测试注意25端口和授权码的设置   否则可能会提示发送失败哦

  这里我用的是我本地邮箱服务器地址,启动测试执行之后,qq邮箱就会收到邮件了!

  邮件可以正常发送邮件了,当然如有不当之处请多多指正,一起交流学习进步!

HtmlEmail实现简单发送邮件的更多相关文章

  1. Android简单发送邮件(可带附件)

    项目中遇到了一个发送邮件的功能,在网上查了很多,资料也很多.这里就不一一介绍了,只是写出我使用的方案(最简单的) Intent email = new Intent(android.content.I ...

  2. python最简单发送邮件

    #!/usr/bin/env python #coding:utf8 #Author:lsp #Date:下午5:51:13 #Version:0.1 #Function: #导入smtplib和MI ...

  3. MVC 简单发送邮件示例

    没啥好说的 直接上代码 @{ try { WebMail.SmtpServer = "smtp.qq.com";//SMTP邮件服务器 WebMail.SmtpPort = ;// ...

  4. java简单发送邮件

    需要的jar 据说是: <dependency> <groupId>javax.mail</groupId> <artifactId>mail</ ...

  5. springboot简单发送邮件介绍

    1.新建一个springboot项目 2.所需要的的jar包: <dependency> <groupId>org.springframework.boot</group ...

  6. yagmail让发邮件更简单

    这是我迄今为止碰到的最良心的库,真tm简单啊 import yagmail # 连接邮箱服务器 yag = yagmail.SMTP(user="wuyongqiang2012@163.co ...

  7. C#使用 System.Net.Mail发送邮件功能

    .NET 里包含了很多很丰富的邮件发送与接受的API在 System.Net.Mail命名空间里,使得我们开发发送和接受邮件相关功能变得简单,下面是一个简单发送邮件的功能: private void ...

  8. C# 实现邮件收取发送功能

    .Net调用QQ邮箱发送邮件   话说网上发送邮件的代码很多,但是我由于不细心,导致拿别人的代码发送邮件老是失败,今天就说说几个要注意的地方吧!!! ? 1 2 3 4 5 6 7 8 9 10 11 ...

  9. springboot---发送邮件

    1.pom.xml配置 <dependencies> <dependency> <groupId>org.springframework.boot</grou ...

随机推荐

  1. JAVA基础篇—文件上传下载

    /index.jsp <%@ page language="java" contentType="text/html; charset=UTF-8" pa ...

  2. CentOS 7 配置OpenCL环境(安装NVIDIA cuda sdk、Cmake、Eclipse CDT)

    序 最近需要在Linux下进行一个OpenCL开发的项目,现将开发环境的配置过程记录如下,方便查阅. 完整的环境配置需要以下几个部分: 安装一个OpenCL实现,基于硬件,选择NVIDIA CUDA ...

  3. cf 1020 C

    C. Elections time limit per test 2 seconds memory limit per test 256 megabytes input standard input ...

  4. 天气API接口的使用

    最近项目中使用到了天气预报的功能,需要从网上获取天气数据,然后显示在公司系统的页面上. 在这里和大家分享下我的做法,希望能对大家有所帮助,如果有错误,欢迎大家指正. 先给大家看看效果: 下面开始进行讲 ...

  5. python基础学习笔记—— 多继承

    本节主要内容: 1.python多继承 2.python经典类的MRO 3.python新式类的MRO.C3算法 4.super是什么鬼? 一.python多继承 在前⾯的学习过程中. 我们已经知道了 ...

  6. 【原创】Mysql中事务ACID实现原理

    引言 照例,我们先来一个场景~ 面试官:"知道事务的四大特性么?" 你:"懂,ACID嘛,原子性(Atomicity).一致性(Consistency).隔离性(Isol ...

  7. JavaScript 将当地时间转换成其它时区

    毫无疑问,用JavaScript脚本可以通过直接查看用户的时钟,方便地在网页上显示本地时间. 但是,如果你想显示不同地区的时间—--例如,如果你的本部在别的国家,你想查看“本国”时间而非当地时间,又该 ...

  8. luogu3381 【模板】最小费用最大流

    每次选代价最小的流增广 #include <iostream> #include <cstring> #include <cstdio> #include < ...

  9. mongodb系统出错。 发生系统错误 1067。 进程意外终止。

    MongoDB安装目录\data\将此文件夹下的mongod.lock删除 mongod.exe --config E:\ruanjian\MongoDB\mongod.cfg --remove mo ...

  10. Leetcode 423.从英文中重建数字

    从英文中重建数字 给定一个非空字符串,其中包含字母顺序打乱的英文单词表示的数字0-9.按升序输出原始的数字. 注意: 输入只包含小写英文字母. 输入保证合法并可以转换为原始的数字,这意味着像 &quo ...