当前位置: 首页 > news >正文

建站之星官网 discuz产品推广朋友圈文案

建站之星官网 discuz,产品推广朋友圈文案,定制开发小程序和模板小程序,建设部证书公布网站文章目录 0、相关协议1、SpringBoot整合JavaMail2、发送简单邮件3、发送复杂邮件 0、相关协议 SMTP(Simple Mail Transfer Protocol):简单邮件传输协议,用于发送电子邮件的传输协议POP3(Post Office Protocol - Versi…

文章目录

  • 0、相关协议
  • 1、SpringBoot整合JavaMail
  • 2、发送简单邮件
  • 3、发送复杂邮件

0、相关协议

  • SMTP(Simple Mail Transfer Protocol):简单邮件传输协议,用于发送电子邮件的传输协议
  • POP3(Post Office Protocol - Version 3):用于接收电子邮件的标准协议
  • IMAP(Internet Mail Access Protocol):互联网消息协议,是POP3的替代协议

1、SpringBoot整合JavaMail

STEP1:加入JavaMail起步依赖:

<dependency>    <groupId>org.springframework.boot</groupId>    <artifactId>spring-boot-starter-mail</artifactId>
</dependency>

STEP2:相关配置:

spring:  mail:    host: smtp.qq.com  # 发邮件,smtp协议,后面.运营商    username: *********@qq.com    password: *********  # 不是邮箱的密码,是下面获取的一个授权码

注意password,不是邮箱的登录密码,是一个授权码,获取方式,在QQ邮箱中是【设置】-【邮箱账号】-【开启】

在这里插入图片描述

发送验证短信:

在这里插入图片描述

然后在上个页面点保存更改,(记得点保存更改)复制这个授权码就是password的值,即可配置邮件客户端成功。

在这里插入图片描述
其他类型的邮箱获取方式类似,比如163:

在这里插入图片描述

STEP3:注入JavaMailSender对象,定义发送邮件的接口

@Autowired    
private JavaMailSender javaMailSender;   

整合完成,下面按简单邮件和复杂邮件来写。简单即普通文本,复杂即超链接、附件等。

2、发送简单邮件

以下用QQ邮箱给163邮箱发一个简单文本的邮件:

//定义接口
public interface SendMailService{void sendMail();
}
//实现类@Service
public class SendMailServiceImpl implements SendMailService { @Autowired    private JavaMailSender javaMailSender;   //这些值也可以不硬编码,写在配置文件中@Value取值private String from = "********@qq.com";	 // 发送人    private String to = "********@126.com";	 // 接收人   private String subject = "测试邮件";		 // 邮件主题   private String text = "测试邮件正文";	 	// 邮件内容@Override    public void sendMail() {       SimpleMailMessage mailMessage = new SimpleMailMessage();  //mailMessage.setFrom(from); //from后面加个名字,比如xxx公司,不然发送发一串邮箱数字,谁知道你是谁      mailMessage.setFrom(from + "别名");   //这里的to是个可变长String,即可发送多人mailMessage.setTo(to);        mailMessage.setSubject(subject);        mailMessage.setText(text);//mailMessage.setSendDate();        //设置发送的时间//其他设置自行setjavaMailSender.send(mailMessage);     //发送}}

写个测试类看下效果:

在这里插入图片描述
联不通:

在这里插入图片描述

我在公司内网写的,网络不通,不是25端口被禁的原因,在外网是可以ping通smtp.qq.com这个host的。先跳过了。

3、发送复杂邮件

正文为html,比如超链接或者图片。以及发送附件:

//超链接
private String text = "<a href='https://www.baidu.com/'>百度</a>";//图片
private String img = "<img src='https://pic35.photophoto.cn/20150511/0034034892281415_b.jpg' />";@Override
public void sendMail() {    try {        MimeMessage mimeMessage = javaMailSender.createMimeMessage(); //第二个参数,即是否允许添加多部件//我后面要添加各种附件,所以这里必须是true       MimeMessageHelper mimeMessageHelper = new MimeMessageHelper(mimeMessage,true);       mimeMessageHelper.setFrom(from);       mimeMessageHelper.setTo(to);        mimeMessageHelper.setSubject(subject);//不加true,默认当普通文本,true即按html来解析        mimeMessageHelper.setText(text,true);  //添加附件File file1 = new File("logo.png"); File file2 = new File("D:\\myboot.jar"); //如果是手写文件名,记得添加个后缀,比如.png,方便在邮件里可预览 mimeMessageHelper.addAttachment(file1.getName(),file1);  mimeMessageHelper.addAttachment("一个jar包.jar",file2);    javaMailSender.send(mimeMessage);    } catch (Exception e) {       e.printStackTrace();   }
}

注意点:

  • 不再用简单消息对象,而是MimeMessage对象,并把它包装成mimeMessageHelper对象
  • 要传附件的话,mimeMessageHelper对象构造方法的第二个参数传true
  • setText方法重载,第二个参数传true,就是讲text按照html来解析,而不是普通文本
  • 注意最后send的还是MimeMessage对象,不是mimeMessageHelper对象
http://www.shuangfujiaoyu.com/news/59699.html

相关文章:

  • 济南pc网站建设公司软件外包公司有前途吗
  • 公司网站搭建费用广州今日新闻最新消息
  • 匀贵网站建设株洲网站设计
  • 高平市网站建设公司怎么能在百度上做推广
  • 吉林智能网站建设价格国际新闻最新消息
  • wordpress 新标签打开seo的培训课程
  • 做淘宝那样的网站百度用户服务中心官网
  • 手机访问wordpress网站卡河北搜索引擎优化
  • 网站建设先进个人代表发言搜索引擎营销的内容和层次有哪些
  • 肥乡企业做网站推广广西百度seo
  • 郑州app制作公司seo黑帽技术有哪些
  • 商城网站备案流程网络seo哈尔滨
  • 360网站seo优化怎么做seo排名优化软件有用吗
  • 快云助手网站建设视频教程新余seo
  • 最主流的网页制作软件北京快速优化排名
  • 找人做的网站怎么看ftp优化排名seo
  • 视频网站咋么做淘宝排名查询工具
  • 烟台优化网站建设网站推广的基本手段有哪些
  • 做定制的B2b网站关键词搜索工具有哪些
  • magento 网站谷歌google play官网下载
  • 平面设计培训班哪里有平台优化是指什么
  • 短视频运营推广深圳seo优化外包公司
  • 郑州网站制作报价网站优化比较好的公司
  • 网站服务器怎么收费网站设计制作在哪能看
  • 建筑公司取名字参考大全抖音seo搜索引擎优化
  • 海口澄迈县建设局网站数据分析师培训需要多少钱
  • 吕梁网站定制app优化推广
  • 寮步镇网站仿做营销手机都有什么功能啊
  • 龙之向导外贸网站 网络服务产品免费推广网站有哪些
  • 企业网站成品源码网站推广途径