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. HTML5代码段

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  2. 20175126《Java程序设计》第四周学习总结

    # 20175126 2016-2017-2 <Java程序设计>第四周学习总结 ## 教材学习内容总结 - 本周学习方式主要为手动敲打教材代码和观看APP上的视频资源自学. - 学习内容 ...

  3. mysql中文查询问题

    alter table t_foo change `str` `str` varchar(100) character set utf8 not null ;

  4. php操作redis数据库方法总结

    一.安装php_redis扩展,用以操作redis http://pecl.php.net/package/redis 选择自已系统php版本对应的扩展. 二.redis连接与验证 <?php ...

  5. js如何获取点击<li>标签里的内容值

    路:为li对象添加单击事件→事件触发后利用innerHTML获取li的文本.实例演示如下: 1.HTML结构 <ul id="test"> <li>Glen ...

  6. The web application registered the JDBC driver * but failed to unregister it when the web application was stopped. To prevent a memory leak, the JDBC Driver has been forcibly unregistered.

    最近使用了最新版的tomcat9,使用jdbc链接mysql数据库.关闭tomcat过程中出现警告 13-Sep-2017 22:22:54.369 WARNING [main] org.apache ...

  7. mkfs.ext4快速格式化大容量硬盘

    安装ext4: yum -y install e4fsprogs 使用如下命令可以快速格式化大容量硬盘: mkfs.ext4 -T largefile /dev/xxx

  8. 20175325 《JAVA程序设计》实验二《JAVA开发环境的熟悉》实验报告

    20175325 <JAVA程序设计>实验二<JAVA开发环境的熟悉>实验报告 一.实验报告封面 课程:Java程序设计 班级:1753班 姓名:石淦铭 学号:20175325 ...

  9. google搜索引擎正确打开姿势

    Google搜索引擎 原文来自黑白之道微信公众号       https://mp.weixin.qq.com/s/Ey_ODP_mG00of5DPwcQtfg   这里之所以要介绍google搜索引 ...

  10. 安卓adb工具的安装方法

    adb是Android的一个很重要的调试工具,熟练掌握后可实现很多功能,比如有些手机的解锁.ROOT就会用到adb工具.可很多朋友都说不会安装,今天就从最开始的安装方法说起. adb工具其实不用安装, ...