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

做网站横幅 的网站推荐几个网络营销软件代理

做网站横幅 的网站推荐几个,网络营销软件代理,网站源码调试,精品网站制作使用SpringBoot发送邮件 文章目录 使用SpringBoot发送邮件1. 获取网易邮箱服务的授权码2. 初始化项目maven部分web部分 3. 发送邮件填写配置EmailSendService [已解决]部署时连接超时附:Docker脚本Dockerfile创建镜像启动容器 1. 获取网易邮箱服务的授权码 温馨提示…

使用SpringBoot发送邮件

文章目录

  • 使用SpringBoot发送邮件
    • 1. 获取网易邮箱服务的授权码
    • 2. 初始化项目
      • maven部分
      • web部分
    • 3. 发送邮件
      • 填写配置
      • EmailSendService
    • [已解决]部署时连接超时
    • 附:Docker脚本
      • Dockerfile
      • 创建镜像
      • 启动容器

1. 获取网易邮箱服务的授权码

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

温馨提示:找个地方保管好授权码。

2. 初始化项目

maven部分

这次用到的其实主要是Spring Boot Starter Mail,别的都是为了方便测试才加的。

拿着这个pom文件新建一个demo,然后把资料里的src粘进来。

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>3.3.4</version><relativePath/></parent><groupId>com.example</groupId><artifactId>email-service</artifactId><version>1.0-SNAPSHOT</version><dependencies><!-- Spring Boot Starter Web --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId><version>3.3.4</version></dependency><!-- Spring Boot Starter Mail --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-mail</artifactId><version>3.0.0</version></dependency><!-- Spring Boot Configuration Processor --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-configuration-processor</artifactId><version>3.0.0</version><optional>true</optional></dependency><!-- Lombok --><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.18.24</version><scope>provided</scope></dependency></dependencies><build><plugins><!-- Spring Boot Maven Plugin --><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><version>3.3.4</version></plugin></plugins></build>
</project>

web部分

http://localhost:8080/api/email/sendVerificationCode

在浏览器上尝试访问这个地址,如果看到Send email successfully!,就证明初始化好了,可以继续往后实现发邮件的代码。

3. 发送邮件

填写配置

application.yaml里填写上发送邮件必不可少的配置:

spring:mail:default-encoding: UTF-8host: smtp.163.comusername: 你的邮箱(网易给你授权码乃个邮箱)password: 你的授权码port: 25protocol: smtp

EmailSendService

这里用的是发送验证码这个场景,需要实现的主要是sendEmail,

  • 要成功发送一个邮件必须写明↓,所以封装了一个EmailDTO——方便传数据。
    • to:发给谁
    • from:谁发的
    • subject:主题
    • text:内容
  • 其余创建邮件消息对象并发送的代码,因为简单用了每次都这么写,所以先就这样了。
  • 另外提一下,发邮件的时候,是支持发HTML格式的内容的,直接写在text里就行了,你可以试试。
package com.example.email;import jakarta.mail.MessagingException;
import jakarta.mail.internet.MimeMessage;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.mail.javamail.JavaMailSender;
import org.springframework.mail.javamail.MimeMessageHelper;
import org.springframework.stereotype.Service;/*** @author urfread* @date 2025-02-02 14:02*/
@Service
public class EmailSendService {@Value("${spring.mail.username}")private String fromEmail;@Autowiredprivate JavaMailSender mailSender;public boolean sendVerificationCode(String to){return sendEmail(EmailDTO.builder().from(fromEmail).to(to).subject("注册认证").text("Your verification code is 123456.").build());}private boolean sendEmail(EmailDTO emailDTO) {MimeMessage mimeMessage = mailSender.createMimeMessage();try {MimeMessageHelper helper = new MimeMessageHelper(mimeMessage, true, "UTF-8");helper.setFrom(emailDTO.getFrom());helper.setTo(emailDTO.getTo());helper.setSubject(emailDTO.getSubject());helper.setText(emailDTO.getText(), true); // 第二个参数为 true 表示发送 HTML 格式的内容System.out.println("Sending email from: " + emailDTO.getFrom());System.out.println("Sending email to: " + emailDTO.getTo());System.out.println("Email subject: " + emailDTO.getSubject());mailSender.send(mimeMessage);System.out.println("Email sent successfully.");} catch (MessagingException e) {System.err.println("Failed to send email: " + e.getMessage());return false;}return true;}
}

[已解决]部署时连接超时

把邮件服务器的端口改成465,再用上SSL

spring:mail:default-encoding: UTF-8host: smtp.163.comusername: 你的邮箱password: 你的授权码port: 465  protocol: smtp  properties:mail.smtp.socketFactory.class: javax.net.ssl.SSLSocketFactory  # 启用 SSLmail.smtp.connectiontimeout: 5000  # 设置连接超时(单位:毫秒)mail.smtp.timeout: 5000  # 设置读取超时(单位:毫秒)mail.smtp.writetimeout: 5000  # 设置写入超时(单位:毫秒)
logging:level:root: INFO

附:Docker脚本

Dockerfile

获取jar包,点mvn里的install即可。

FROM openjdk:17-jdk-slim
WORKDIR /app
COPY 你的包名.jar app.jar
EXPOSE 9000
ENTRYPOINT ["java", "-jar", "app.jar"]

创建镜像

docker build -t 镜像名:版本号 .

启动容器

docker run -d -p 9000:8080 --name 容器名 镜像名
http://www.hkea.cn/news/248169/

相关文章:

  • 平面广告设计主题seo是怎么优化上去
  • 正规网站制作公司哪家好四年级写一小段新闻
  • 济南网站建设安卓版快手seo
  • java开发兼职网站开发线上推广平台
  • 北京网站建设开发公司网站自动收录
  • wordpress最多多少用户seo基础知识
  • 湘潭做网站 去磐石网络b站推出的短视频app哪个好
  • 宿迁做网站的公司有人看片吗免费观看视频
  • 什么人最需要建设网站淘宝运营一般要学多久
  • 海南网站优化东莞免费建站公司
  • 传播型网站建设优势有哪些推广类软文
  • 如何在百度做网站推广赚钱的软件
  • c# 网站开发教程周口网站seo
  • 湘西网站建设帮人推广注册app的平台
  • 切图做网站web制作网站的模板
  • 网站的做网站公司哪家好网络优化大师app
  • 国内外包网站今日头条(官方版本)
  • 外网建筑设计网站线上渠道推广有哪些方式
  • 厦门做网站公司排名电工培训机构
  • 武汉网站设计制作外包公司的人好跳槽吗
  • 网站建设哪里最好页面关键词优化
  • 清远建设网站制作seo系统培训课程
  • 网站的网页建设知识ppt北大青鸟职业技术学院简介
  • 巫山网站设计aso优化榜单
  • 关于节约化建设网站的表态发言网站制作报价表
  • 建行网站是多少呢故事式的软文广告例子
  • 阳江市住房和城乡规划建设局网站一级消防工程师考试
  • 做课件的网站有哪些用html制作淘宝网页
  • 网站开发前后台整个流程品牌宣传的推广
  • 深圳市门户网站建设网站推广优化方法