package com.ws.common.mail;

import java.io.File;

import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeUtility; import org.apache.log4j.Logger;
import org.springframework.core.io.FileSystemResource;
import org.springframework.mail.javamail.JavaMailSenderImpl;
import org.springframework.mail.javamail.MimeMessageHelper; public class EmailSample {
private static Logger logger = Logger.getLogger(EmailSample.class); /**
* 邮件测试工具类
*
* @param subject 邮件主题
* @param content HTML格式的邮件内容
*/
public static void sendFileMail(String subject, String content) {
JavaMailSenderImpl senderImpl = new JavaMailSenderImpl();
// 设置自己登陆email的服务商提供的host
senderImpl.setHost("smtp.****.com");
// 设置自己登陆邮箱账号
senderImpl.setUsername("ACCC*@xx.com");
// 邮箱密码
senderImpl.setPassword("****************");
try {
// 建立HTML邮件消息
MimeMessage mailMessage = senderImpl.createMimeMessage();
// true表示开始附件模式.如果邮件不需要附件设置成false即可
MimeMessageHelper messageHelper = new MimeMessageHelper(
mailMessage, true, "utf-8");
// 设置收信人的email地址
messageHelper.setTo("81****909@qq.com");
// 设置寄信人的email地址{与上面登陆的邮件一致}
messageHelper.setFrom("ac1315419@aliyun.com");
// 设置邮件发送内容的主题
messageHelper.setSubject(subject);
// true 表示启动HTML格式的邮件
messageHelper.setText("<html><title>这是一封test邮件</title><body>"
+ content + "</body></html>", true);
// 如不需要附件,这里可以省略---------------------------------------START
// 读取附件一
FileSystemResource file1 = new FileSystemResource(new File(
"e:/test/pic/ngc1.png"));
// 读取附件二
FileSystemResource file2 = new FileSystemResource(new File(
"e:/test/pic/gongbo1.png"));
FileSystemResource file3 = new FileSystemResource(new File(
"e:/test/db/xiuzhenguilai.txt"));
// 添加附件一
messageHelper.addAttachment("test.jpg", file1);
messageHelper.addAttachment("picgongbo1.jpg", file2);
// 添加附件二
// 附件名有中文可能出现乱码
messageHelper.addAttachment(MimeUtility.encodeWord("测试.txt"), file3);
// 如不需要附件,这里可以省略------------------------------------------END
// 发送邮件
senderImpl.send(mailMessage);
logger.info("Email Send Success!");
} catch (Exception e) {
logger.error("Email Send Error!" + e.getMessage());
}
}
public static void main(String[] agrs) {
// 注意测试需要修改您自己的邮件服务商host,登陆邮件用户,邮件密码,附件,收信人地址
sendFileMail("测试邮件", "<H1>测试邮件标题</H1>");
}
}

  

java web spring 发送邮件的更多相关文章

  1. [Java web]Spring+Struts2+Hibernate整合过程

    摘要 最近一直在折腾java web相关内容,这里就把最近学习的spring+struts2+hibernate进行一个整合,也就是大家经常说的ssh. 环境 工具IDE :Idea 2018 数据库 ...

  2. IDEA Java Web(Spring)项目从创建到打包(war)

    创建Maven管理的Java Web应用 创建新项目,"create new project",左侧类型选择"maven",右侧上方选择自己的SDK,点击&qu ...

  3. java web spring异步方法

    在项目中,时常会有异步调用的需求 web.xml配置 <servlet> <description>spring mvc servlet</description> ...

  4. [Java web]Spring+Struts2+Hibernate整合过程(2)

    摘要 上篇文章介绍了一种整合方式,不妨就叫做有hibernate配置文件的方式,这里介绍一种不用hibernate.cfg.xml的一种配置方式,为了方便,就仍在上篇的demo中,继续修改了. 步骤 ...

  5. java web(spring mvc) 获取请求host 和 如何获取静态页的相对路径

    1.获取请求host StringBuffer url = request.getRequestURL(); String tempContextUrl = url.delete(url.length ...

  6. java 利用spring JavaMailSenderImpl发送邮件,支持普通文本、附件、html、velocity模板

    java 利用spring JavaMailSenderImpl发送邮件,支持普通文本.附件.html.velocity模板 博客分类: Java Spring   本文主要介绍利用JavaMailS ...

  7. java web后台开发SSM框架(Spring+SpringMVC+MyBaitis)搭建与优化

    一.ssm框架搭建 1.1创建项目 新建项目后规划好各层的包. 1.2导入包 搭建SSM框架所需包百度云链接:http://pan.baidu.com/s/1cvKjL0 1.3整合spring与my ...

  8. 使用Spring Boot来加速Java web项目的开发

    我想,现在企业级的Java web项目应该或多或少都会使用到Spring框架的. 回首我们以前使用Spring框架的时候,我们需要首先在(如果你使用Maven的话)pom文件中增加对相关的的依赖(使用 ...

  9. Java Web学习系列——Maven Web项目中集成使用Spring、MyBatis实现对MySQL的数据访问

    本篇内容还是建立在上一篇Java Web学习系列——Maven Web项目中集成使用Spring基础之上,对之前的Maven Web项目进行升级改造,实现对MySQL的数据访问. 添加依赖Jar包 这 ...

随机推荐

  1. Handling Text in Python 相关命令

    s.isalpha()意思就是是不是字母,s.isdigit()意思就是是不是0-9,s.isalnum()意思就是是不是由字母和数字组成.

  2. 原型设计工具—Axure

    作为软件设计的一员,需要在软件开发初期确保软件的具体内容,防止后期大幅度的修改. 在这样的情况下,原型设计软件就起到了关键的作用. 摘要: 原型设计为什么这么重要呢? 因为它帮助我们搭建了低保真或高保 ...

  3. CentOS7+CDH5.14.0安装全流程记录,图文详解全程实测-5安装JDK及安装mysql数据库

    1.安装JDK 可以不用卸载自带的openjdk,配好环境变量即可. 下载文件:jdk-8u151-linux-x64.tar.gz 附:JDK各版本下载地址:https://www.oracle.c ...

  4. 阅读笔记:JAVA - chapter 1 & 2

    static 即使没有创建对象,也能调用这个方法. 当Static method, static变量有定义,不同对象将指向同一存储空间,将其初始化. 存储方式 寄存器 堆栈:对象引用,需要知道存活多久 ...

  5. 如何解决出现AXIOS的跨域问题:Request header field Content-Type is not allowed by Access-Control-Allow-Headers in preflight response.

    转载:https://www.cnblogs.com/caimuqing/p/6733405.html 问题描述: 由于restful接口需要在头部header传递两个字段: Content-Type ...

  6. 使用串口安装centos操作系统

    https://linuxconfig.org/how-to-force-text-mode-installation-of-redhat-linux https://www.centos.org/f ...

  7. Pixel Recurrent Neural Networks翻译

    Pixel Recurrent Neural Networks 目前主要在用的文档存放: https://www.yuque.com/lart/papers/prnn github存档: https: ...

  8. IntelliJ隐藏特定后缀文件

    preference-

  9. 启动tomcat报错com.sun.faces.config.ConfigureListener

    小白一个,最近想着上网看看自己搭建个用maven+spring+springmvc+mybaties的框架 然后......就出来这个么东东 java.lang.ClassNotFoundExcept ...

  10. 数据库基础 RDBMS、NoSQL