SpringBoot 实现发邮箱

163网易邮箱发邮件的服务

首先你需要在163开通一下服务

开通之后会显示授权码,拿好了别丢了

Spring配置文件

到SpringBoot里进行配置

java 复制代码
spring.mail.host=smtp.163.com
# 填你的邮箱↓
spring.mail.username=15032895039@163.com
# 填你的授权码
spring.mail.password=haorenyishenpinan
spring.mail.port=25
spring.mail.protocol=smtp
spring.mail.default-encoding=UTF-8

除了邮箱授权码其实别的地方都一样。

pom里添加依赖

xml 复制代码
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-mail</artifactId>
    <version>3.0.0</version>
</dependency>

编写后端处理请求->发送右键的代码

配好之后,可以写一个接收发邮箱的请求

这里为了简单写,就把目标邮箱什么的都写在后端了

controller

java 复制代码
package com.example.demo.mail;

import jakarta.mail.MessagingException;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;


@RestController
@RequestMapping("/email")
public class EmailController {

    @Autowired
    private EmailService emailService;

    @GetMapping("/send")
    public String sendEmail() {
        try {
        	// 第一个参数是目标邮箱,就是你要发到哪儿,可以填自己qq邮箱
            emailService.sendEmail("3131015733@qq.com", "测试发送邮箱服务", "5873");
            return "Email sent successfully to " + "3131015733@qq.com";
        } catch (MessagingException e) {
            return "Error sending email: " + e.getMessage();
        }
    }
}
java 复制代码
package com.example.demo.mail;

import jakarta.mail.MessagingException;
import jakarta.mail.internet.MimeMessage;
import org.springframework.mail.MailSender;
import org.springframework.mail.SimpleMailMessage;
import org.springframework.mail.javamail.JavaMailSender;
import org.springframework.mail.javamail.MimeMessageHelper;
import org.springframework.stereotype.Service;



@Service
public class EmailService {

    private final MailSender mailSender;

    public EmailService(MailSender mailSender) {
        this.mailSender = mailSender;
    }

    public void sendEmail(String to, String subject, String text) throws MessagingException {
        System.out.println("尝试发送邮箱");
        SimpleMailMessage message = new SimpleMailMessage();
        message.setFrom("15032895039@163.com");
        message.setTo(to);
        message.setSubject(subject);
        message.setText(text);
        mailSender.send(message);
        System.out.println("发送成功");
    }
}

测试

在浏览器上输入

复制代码
localhost:8080/email/send

就ok了

相关推荐
腻害兔3 小时前
【若依项目-产品经理视角】深度拆解 RuoYi-Vue-Pro 商城模块:从商品管理到交易引擎,50 张表撑起一整套电商系统
java·大数据·vue.js·产品经理·ai编程
码智社4 小时前
AES加密原理详解及Java实现加解密实战
java·开发语言
萧瑟余晖5 小时前
JDK 26 新特性详解
java·开发语言
马优晨5 小时前
Freemarker 完整讲解(后端 Java 模板引擎)
java·开发语言·freemarker·freemarker 完整讲解·freemarker模板引擎
维天说8 小时前
CLI-Switch 2026年3月版历史设计:Hook、TTY 隔离与 JSON 状态
java·服务器·json
Zane19949 小时前
并发 vs 并行:别再傻傻分不清了,一文讲透 Java 并发编程的第一课
java·后端
噢,我明白了9 小时前
java中Excel的导入和导出(EasyExcel)
java·开发语言·excel
吠品9 小时前
Zabbix Web界面误报Server未运行的排查与解决
java·服务器·数据库
啊湘9 小时前
天气查询API接口 按月Token鉴权 实时天气 物联网可用 文档齐全
java·后端·struts
Java内核笔记10 小时前
告别十亿美元的错误 : Spring Boot 4 空安全 (JSpecify) 实战
java·spring boot·后端