Java代码实现邮件发送

使用Java代码实现邮件发送demo(使用springboot)

1.创建springboot项目

勾选模板(这里基本用不到),选择依赖的版本2.1.15

2.导入邮件发送的依赖
<!--java邮件发送的依赖-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-mail</artifactId>
</dependency>
3.创建包controller,service。。。。。

在这里插入图片描述
程序员敲代码要有仪式感,要优雅。。。。。

4.配置文件中添加对应的配置application.properties
# 使用QQ的邮件传输协议(如果是163或其他的可以根据实际情况修改)
spring.mail.host=smtp.qq.com

# 自己的QQ邮箱
spring.mail.username=27********67@qq.com

# 在自己QQ邮箱开启对应的服务,收到一个password,详情见下图
spring.mail.password=****************

# 端口号465或587
properties.mail.smtp.port=465

# 邮件发送的邮箱(之后写可能需要,配不配无所谓)
# spring.mail.from=1234567890@qq.com

在这里插入图片描述

5.编写Java代码

service层代码(这里就挑实现类代码写吧)

public class ServiceImp implements Service {

    //springboot自动集成JavaMailSender
    @Autowired
    private JavaMailSender mailSender;

    //发送的对象地址,可以直接写,也可以在配置文件李配置
    @Value("${spring.mail.from}")
    private String from;

    @Override
    @Async
    public void sendSimpleMail(String address, String title, String content) {
        SimpleMailMessage mailMessage=new SimpleMailMessage();
        mailMessage.setFrom(from);
        //发送地址
        mailMessage.setTo(address);
        //邮件标题
        mailMessage.setSubject(title);
        //邮件内容
        mailMessage.setText(content);
        mailSender.send(mailMessage);
    }
}

controller层的代码

public class Controller {
    @Resource
    private Service service;

    @RequestMapping("/send")
    public void sendJava(){
        service.sendSimpleMail("27********67@qq.com","给张巍警的情书","做梦吧!单身狗。。。");
    }

}

好的嘛,准备就绪,开启程序,访问配置的端口:稍等几秒(这里有时会出现接收不到消息的情况,嗯。。。。多试几次就好)
在这里插入图片描述
卧槽。。。。好残忍!
找对象干屁,敲代码它不香吗。。。哈哈!!
在这里插入图片描述
水一篇文章,明天补上优化版的代码。
老规矩送给位一句话:不要说你不会做!你是个人你就会做!
技术人,各位好梦呀!!

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
非常感谢您的提问!实现邮件发送功能可以使用JavaMail API,以下是一个示例代码: ```java import javax.mail.*; import javax.mail.internet.InternetAddress; import javax.mail.internet.MimeMessage; import java.util.Properties; public class MailUtil { // 发送邮件的邮箱地址 private static final String FROM_ADDRESS = "from@example.com"; // 发送邮件的邮箱密码 private static final String FROM_PASSWORD = "password"; // 发送邮件的 SMTP 服务器地址 private static final String SMTP_SERVER = "smtp.example.com"; // 收件人邮箱地址 private static final String TO_ADDRESS = "to@example.com"; public static void sendMail(String subject, String content) { Properties props = new Properties(); // 设置发送邮件的属性 props.setProperty("mail.transport.protocol", "smtp"); props.setProperty("mail.smtp.host", SMTP_SERVER); props.setProperty("mail.smtp.auth", "true"); // 创建会话 Session session = Session.getDefaultInstance(props, new Authenticator() { protected PasswordAuthentication getPasswordAuthentication() { return new PasswordAuthentication(FROM_ADDRESS, FROM_PASSWORD); } }); session.setDebug(true); try { // 创建邮件 MimeMessage message = new MimeMessage(session); message.setFrom(new InternetAddress(FROM_ADDRESS)); message.addRecipient(Message.RecipientType.TO, new InternetAddress(TO_ADDRESS)); message.setSubject(subject); message.setText(content); // 发送邮件 Transport.send(message); System.out.println("邮件发送成功"); } catch (MessagingException e) { System.out.println("邮件发送失败:" + e.getMessage()); } } } ``` 您可以调用`MailUtil.sendMail("邮件主题", "邮件内容")`方法来发送邮件。注意要替换示例代码中的发送邮箱地址、密码、SMTP 服务器地址和收件人邮箱地址。如果有其它问题,欢迎随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值