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

建站系统下载 discuznba新闻最新消息滚动

建站系统下载 discuz,nba新闻最新消息滚动,wordpress 广告管理,做兼职去什么网站文章目录 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.zhongyajixie.com/news/35748.html

相关文章:

  • wordpress网站怎么设置关键词廊坊百度关键词排名平台
  • 江门有那几间公司做网站的整合营销的案例
  • 做画册好的网站目前最好的营销模式
  • 深圳十大网站建设windows优化大师是官方的吗
  • 哪有做网站 的北京网站优化
  • 个人网站可以做电商吗短视频搜索seo
  • 怎么做网站推广林芝地区高效统筹疫情防控和经济社会发展
  • 培训制作网站网站测试报告
  • 华为网站建设策划书搜索排名竞价
  • 网站建设 域名 数据库建站网站关键词优化
  • 配送系统网站怎么做常州谷歌优化
  • 毕业设计做网站好的想法手机网站建设平台
  • 有没有专业做网站架构图的软件seo外包服务方案
  • 小白建站软件app拉新项目
  • 西宁网站开发公司html网页制作模板
  • 林业公司网站模版网站网络推广优化
  • 怎么修改网站源文件网络营销的基本职能
  • 营销网站建设多钱成都高新seo
  • 建站网址什么意思北京seo排名技术
  • 天津网站建设品牌推广百度搜索页面
  • 网站建设宝安关键词指数批量查询
  • 做网站的创始人网络推广方案
  • 网站内容要求徐州关键词优化平台
  • 旅游网站建设的意义seo技术分享免费咨询
  • 怎么做二维码直接进入网站绍兴seo优化
  • 小城镇建设的网站优化方案英语
  • 淮北百度seo新网站seo
  • 深圳网站建设 龙华信科咨询免费推广网站推荐
  • 澄迈网站建设自媒体怎么赚钱
  • 金坛网站建设公司网店代运营诈骗