发送图片带网络图片

正文

依赖

    <dependency><groupId>javax.mail</groupId><artifactId>mail</artifactId><version>1.4.5</version><scope>compile</scope></dependency><dependency><groupId>org.apache.commons</groupId><artifactId>commons-email</artifactId><version>1.4</version></dependency>

代码


import lombok.extern.slf4j.Slf4j;
import org.apache.commons.mail.DataSourceResolver;
import org.apache.commons.mail.DefaultAuthenticator;
import org.apache.commons.mail.ImageHtmlEmail;
import org.apache.commons.mail.resolver.DataSourceCompositeResolver;
import org.apache.commons.mail.resolver.DataSourceFileResolver;
import org.apache.commons.mail.resolver.DataSourceUrlResolver;import java.net.URL;@Slf4j
public class MailUtils {//收件人 名字private static final String TO = "xxx@126.com";private static final String TO_MSG = "中国人民";//发件人 名字private static final String FROM = "xxx@qq.com";private static final String FROM_MSG = "超级无敌大西瓜";//发件人名字private static final String USER_NAME = "xxx@qq.com";//发件人授权密码private static final String PWD = "mxxxxx";//邮件标题private static final String TITLE = "你号没了";//图片邮件public static void sendEmail(String name, String[] arr) {StringBuilder builder = new StringBuilder();try {builder.append("姓名: ").append(name);for (String s : arr) {//添加网络连接builder.append("<img src=").append(s).append(">");}ImageHtmlEmail email = new ImageHtmlEmail();//用ImageHtmlEmail来发送email.setDebug(true);//可以看到执行过程的debug信息email.setCharset("UTF-8");//防止乱码email.setSSLCheckServerIdentity(true);email.setSslSmtpPort("465"); // 设定SSL端口DataSourceResolver[] dataSourceResolvers =new DataSourceResolver[]{new DataSourceFileResolver(),//添加DataSourceFileResolver用于解析本地图片new DataSourceUrlResolver(new URL("http://"))};//添加DataSourceUrlResolver用于解析网络图片,注意:new URL("http://")email.setDataSourceResolver(new DataSourceCompositeResolver(dataSourceResolvers));email.setHostName("smtp.qq.com");email.addTo(TO, TO_MSG);email.setFrom(FROM, FROM_MSG);email.setAuthenticator(new DefaultAuthenticator(USER_NAME, PWD));email.setSubject(TITLE);email.setHtmlMsg(builder.toString());//如果客户端不去持HTML格式会显示这句话,不过应该很少有不支持HTML格式的客户端了吧email.setTextMsg("你的邮箱客户端不支持HTML格式邮件");email.send();} catch (Exception e) {log.error("银行邮件发送失败");}}public static void main(String[] args) {String[] arr = {"https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1555673149454&di=95dbe50f75af52d7c92db957330dcaa6&imgtype=0&src=http%3A%2F%2Fb-ssl.duitang.com%2Fuploads%2Fitem%2F201804%2F21%2F20180421163232_JvceQ.jpeg","https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1555673226599&di=80b0bb248a9614cf2d595afa6ad69d1f&imgtype=0&src=http%3A%2F%2Fb-ssl.duitang.com%2Fuploads%2Fitem%2F201805%2F24%2F20180524130347_fkxwv.jpg"};}
}

填坑 阿里云服务器25端口默认不可用

java发送网络图片邮件相关推荐

  1. Java发送QQ邮件问题Could not connect to SMTP host: smtp.qq.com, port: 465(内附完整代码)

    邮件发送失败,本地测试可以,部署到服务器就不行. 之前就碰到这个问题,解决办法就是把port端口改成587,然后注释这一段 MailSSLSocketFactory sf = new MailSSLS ...

  2. java发送gmail邮件_如何从R和Gmail发送电子邮件

    java发送gmail邮件 在您的R人生的某个时刻,您可能希望与不使用R的同事共享分析结果. 有很多方法可以做到这一点. 最简单(也是最便宜)的方法之一是通过电子邮件发送结果. 但它是一种悲哀自动化您 ...

  3. JAVA 发送GMAIL 邮件

    JAVA发送GMAIL邮件    废话不多说 上代码 不懂的方法可以百度 都有 package com.pos.pos_conn.util.email;import java.util.Propert ...

  4. java 发送激活邮件 以qq邮箱为例

    java发送激活邮件 以qq邮箱为例 1.首先发送者邮箱需要开启服务 登录qq邮箱,选择设置--账号,开启以上两个服务.会获得相应的两个授权码 2.以下代码为发送邮件代码 package com.em ...

  5. java发送outlook邮件_通过Java代码发送OutLook邮件

    准备 我们想通过Java代码实现发送OutLook邮件,必须准备以下材料: OutLook邮箱 目标邮箱 查看OutLook邮箱信息 打开OutLook邮箱,在Settings中搜索或找到SMTP: ...

  6. Java 发送QQ邮件

    1. 安装jdk,配置好环境变量 2. 安装 JavaMail API 和 Java Activation Framework(JAF) Java EE Platform Downloads Java ...

  7. Java发送email邮件

    首先导入3个Jar文件 activation.jar commons-email-1.4.jar mail.jar email实体类: Mail package com.ljf.www.common. ...

  8. java 发送qq邮件

    发送qq邮件的简单demo  一: 在myEclipse中创建一个java项目         1:直接将该文件引入到src ,                    2:将activation.ja ...

  9. Java发送QQ邮件的3种形式(commons-email)

    第一步:项目引入相应资源   commons-email-xx.jar,mail.jar,activation.jar maven项目pom引入 (注意对应配置的版本问题哦~)     可参考 --& ...

  10. java发送简单邮件_Java程序实现发送简单文本邮件

    /** * Java程序实现发送简单文本邮件 * * @author Administrator * */ public class SendTextMail { // 定义发件人地址 public  ...

最新文章

  1. EntityFramework+DomainDataSource+Silverlight完成数据读取分页排序与修改
  2. Amazon Aurora是如何设计原生云关系型数据库的?
  3. maven使用小技巧 optional
  4. [设计模式篇]工厂模式和抽象工厂模式
  5. java swing form_在java swing中创建表单最简单的方法是什么?
  6. linux手工迁移php,Linux+PHP+MySql网站迁移配置
  7. 怎样使用My97日期控件
  8. 把一个数组分为多个数组
  9. c 语言 while break,26 C 语言中的break和continue - C 语言基础教程
  10. hadoop学习笔记-目录
  11. [No000048]程序员的成长过程中,有哪些阶段?
  12. 易语言操作数据库之Access数据库(数据库连接和记录集组件)
  13. 什么是python的内置函数_python 内置函数
  14. 万卷书计划-2016年开启
  15. python实现随机森林
  16. vue 3 的devtools beta 版离线下载
  17. 李白关于鸿蒙的诗,名诗欣赏:李白《把酒问月》之--青天有月来几时
  18. transforms及Compose
  19. bzoj1605 / P2905 [USACO08OPEN]农场危机Crisis on the Farm
  20. 火火火---12幅算法生成火的图像

热门文章

  1. ZZULIOJ1016
  2. 免费WEB打印控件(插件)——打天下
  3. Spark2.1.1中用各种模式运行计算圆周率的官方Demo
  4. LEACH算法改进 SEP算法源代码
  5. 香农编码(C语言实现香农编码,并计算信源熵、平均码长、编码效率)
  6. 第68天-内网安全-域横向 PTHPTKPTT 哈希票据传
  7. 西工大机考《会计电算化》大作业网考
  8. linux终端字体放大_5 个 PowerShell 主题,让你的 Windows 终端更好看
  9. 二、建模及画网格软件推荐
  10. [牛年第一贴 09.2.1] 51CTO 编辑部的那些事儿