今天第一次来上海市虹口图书馆上自习,感觉还是很爽的。自己撸代码学会了发送邮件。啥都不说了,直接撸代码吧!

首先 必须引进来三个jar包:

compile ‘javax.mail:mail:1.4.7‘

compile ‘org.apache.commons:commons-email:1.3.2‘

compile ‘javax.activation:activation:1.1‘

这是我gradle配置文件的配制方法。

1.Mail对象  里面包含发送邮件的信息

importjava.io.Serializable;/*** Mail属性实体

*

*@authorshadow

**/@SuppressWarnings("serial")public class Mail implementsSerializable {public static final String ENCODEING = "UTF-8";private String host; //服务器地址

private String sender; //发件人的邮箱

private String receiver; //收件人的邮箱

private String name; //发件人昵称

private String username; //账号

private String password; //密码

private String subject; //主题

private String message; //信息(支持HTML)

publicString getHost() {returnhost;

}public voidsetHost(String host) {this.host =host;

}publicString getSender() {returnsender;

}public voidsetSender(String sender) {this.sender =sender;

}publicString getReceiver() {returnreceiver;

}public voidsetReceiver(String receiver) {this.receiver =receiver;

}publicString getName() {returnname;

}public voidsetName(String name) {this.name =name;

}publicString getUsername() {returnusername;

}public voidsetUsername(String username) {this.username =username;

}publicString getPassword() {returnpassword;

}public voidsetPassword(String password) {this.password =password;

}publicString getSubject() {returnsubject;

}public voidsetSubject(String subject) {this.subject =subject;

}publicString getMessage() {returnmessage;

}public voidsetMessage(String message) {this.message =message;

}

}

2.发送邮件的工具类

import org.apache.commons.mail.EmailException;

import org.apache.commons.mail.HtmlEmail;

import org.apache.log4j.Logger;

/**

* 邮件发送工具实现类

*

* @author shadow

* @create 2013/07/12

*/

public class MailUtil {

protected final Logger logger = Logger.getLogger(getClass());

public boolean send(Mail mail) {

// 发送email

HtmlEmail email = new HtmlEmail();

try {

// 这里是SMTP发送服务器的名字:163的如下:"smtp.163.com"

email.setHostName(mail.getHost());

// 字符编码集的设置

email.setCharset(Mail.ENCODEING);

// 收件人的邮箱

email.addTo(mail.getReceiver());

// 发送人的邮箱

email.setFrom(mail.getSender(), mail.getName());

// 如果需要认证信息的话,设置认证:用户名-密码。分别为发件人在邮件服务器上的注册名称和密码

email.setAuthentication(mail.getUsername(), mail.getPassword());

// 要发送的邮件主题

email.setSubject(mail.getSubject());

// 要发送的信息,由于使用了HtmlEmail,可以在邮件内容中使用HTML标签

email.setMsg(mail.getMessage());

// 发送

email.send();

if (logger.isDebugEnabled()) {

logger.debug(mail.getSender() + " 发送邮件到 " + mail.getReceiver());

}

return true;

} catch (EmailException e) {

e.printStackTrace();

logger.info(mail.getSender() + " 发送邮件到 " + mail.getReceiver()

+ " 失败");

return false;

}

}

}

3.测试类

/**

* Created by DELL on 2016/6/19.

*/

public class test {

public static void main(String[] args) {

Mail mail = new Mail();

mail.setHost("smtp.163.com"); // 设置邮件服务器,如果不用163的,自己找找看相关的

mail.setSender("[email protected]");

mail.setReceiver("[email protected]"); // 接收人

mail.setUsername("[email protected]"); // 登录账号,一般都是和邮箱名一样吧

mail.setPassword("XXXxxxx"); // 发件人邮箱的登录密码 此密码必须是你在邮箱设置打开pop3和SMTP之后设置的密码,否则收不到邮件的

mail.setSubject("nishishsi");

mail.setMessage("welcome to china");

new MailUtil().send(mail);

}

}

4.总结 :不管怎么说还是有点成就感的。以后每周还是要来图书馆充充电的。

html在线发邮件代码,通过HtmlEmail 发送邮件(示例代码)相关推荐

  1. PHP在线发邮件 无需服务端软件

    PHP在线发邮件代码 为解决一些主机空间或服务器上不带发邮件sendmail程序 发一个自己使用的在线发邮件小程序,按自己要求修改 index.html <!DOCTYPE html PUBLI ...

  2. 简单快捷实现ASP在线发邮件功能

    简单快捷实现ASP在线发邮件功能 在编写网上应用程序时,经常碰到需要在线发送邮件的问题,邮件内容是由程序动态决定的,如果你采用的是ASP方式来编写网上应用程序,如何简单.快捷地实现这一功能呢? 笔者在 ...

  3. python通过代理自动发邮件脚本_python自动发送邮件脚本

    本文实例为大家分享了python自动发送邮件的具体代码,供大家参考,具体内容如下 #coding=utf8 ''''' 该模块使自动发送邮件的模块 模块初始化时需要设置: sender:发送人 rec ...

  4. python发送邮件并返回提示_用python3的smtplib库发邮件一直返回无法发送邮件提示,是什么原因?...

    按照网上python3发邮件的教程,在jupyter运行都返回发送失败提示,是缺少了什么环境吗? 代码应该没问题,不过还是贴出来: # import smtplib # from email.mime ...

  5. asp使用组件在线发邮件的多种方法

        一.jmail.smtpmail的核心代码: <%   Set jmail = Server.CreateObject("JMAIL.SMTPMail")   '创建 ...

  6. java 多线程 发邮件_Spring多线程批量发送邮件(ThreadPoolTaskExecutor)

    1,需求:使用多线程批量发送邮件 需要批量发送邮件大概400封左右,但是因为发送邮件受网络限制,所以经常导致等待超时.所以就想到了使用多线程来发邮件,因为是异步的所以返回结果不受发邮件影响. 2,思路 ...

  7. python用outlook自动发邮件_Python 调用outlook发送邮件(转 )

    单账号: import win32com.client as win32 def send_mail(): outlook = win32.Dispatch('Outlook.Application' ...

  8. html风车相册代码,Css Html 大风车(示例代码)

    简介这篇文章主要介绍了Css Html 大风车(示例代码)以及相关的经验技巧,文章约3675字,浏览量138,点赞数2,值得参考! div{ border-radius: 50%;position: ...

  9. linux mv编写代码,Linux命令--mv(示例代码)

    简介这篇文章主要介绍了Linux命令--mv(示例代码)以及相关的经验技巧,文章约4069字,浏览量253,点赞数7,值得推荐! Linux--mv mv经常被用来做备份 命令参数: -b :若需覆盖 ...

最新文章

  1. JVM---虚拟机栈(动态链接与方法返回地址)
  2. 联想激发青年公益创业彰显“责任”意识
  3. 操作 Wave 文件(4): 获取 Wave 文件主块与子块的信息
  4. xheditor开源编辑器ajax上传功能的完善
  5. 阿里P7/P8学习路线图——技术封神之路
  6. sizeof和gcvt转换双精度函数的函数不是小结的小结
  7. JS-数据属性与访问器属性
  8. php 连接oracle插入多张图片的方法
  9. 捕鱼达人java源代码解析_捕鱼达人源码Java
  10. 使用 Chrome Timeline 来优化页面性能
  11. PHP公鸡五文钱,公鸡
  12. alinq mysql_ALinq 使用教程(移植 Linq to SQL 的利器)
  13. React组件方法中为什么要绑定this
  14. 中国移动停售华为5G手机?双方回应...
  15. Python之爬虫(七)正则的基本使用
  16. 常见视频编码比较大全 常见视频解码技术资料1
  17. Comega -- O/R Mapper的终结者?
  18. CFDA发布GMP《计算机化系统和确认与验证》两个附录
  19. Java 关键字及其作用(保留字)
  20. 汇编程序设计:钟表显示

热门文章

  1. W650DC_DD_CFL_Win64(刷八代CPUBios)
  2. EBS系统的启动及关闭
  3. 王道考研数据结构笔记之基本概念
  4. TUTK[摄像头开发系列]之添加摄像头到手机APP
  5. 【SRIO】6、Xilinx RapidIO核仿真与包时序分析
  6. 强化存储和网络 VMware SDDC不止是计算
  7. ubuntu c语言调用串口,ubuntu 下使用串口工具(呕心沥血整理调试成功)
  8. C语言实现100的阶乘
  9. *.accdb数据文件的数据解析工具类
  10. 软件工程-大学体育馆管理系统用例图