发送邮件,如何使用java发邮件HuTool发送邮件

邮件发送

事先准备一个邮箱(最好不要使用QQ,以新浪为例)

  1. 申请一个邮箱

  2. 开启客户端授权(新浪为例)
    在这里插入图片描述

开启时会给你的手机发送一个验证码然后给你一串密码提示此密码只给一次记好这个密码

  1. 打开IDE创建springboot项目(其他java项目也是可以)

  2. 导入相关依赖

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-mail</artifactId>
        <version>2.3.0.RELEASE</version>
    </dependency>
    
  3. 编写发送邮件的相关配置

    spring:
      mail:
        host: smtp.sina.com #客户端设置
        port: 465
        username: 		#自己邮箱的邮箱地址	
        password:       #开启客户端smtp
        protocol: smtps
        properties:#开启加密
          mail:
            smtp:
              ssl:
                enable: true
    
  4. 编写工具类(编写工具类方便调用)

    @Component
    public class MailClient {
        @Autowired
        private JavaMailSender mailSender;
        @Value("${spring.mail.username}")
        private String from;
        /**
         * 邮件发送
         * @param to 发送给谁
         * @param subject 标题
         * @param content 内容 (是否支持HTML标签)
         */
        public void sendMail(String to,String subject,String content){
            try {
                MimeMessage mimeMessage = mailSender.createMimeMessage();
                MimeMessageHelper helper = new MimeMessageHelper(mimeMessage);
                helper.setFrom(from);
                helper.setTo(to);
                helper.setSubject(subject);
                helper.setText(content,true);
                mailSender.send(helper.getMimeMessage());
            }catch (Exception e){
                System.err.println("邮件发送失败"+e.getMessage());
            }
        }
    }
    
  5. 编写测试类测试是否成功

    @Autowired
    private MailClient mailClient;
    
    @Test
    void emailTest(){
        mailClient.sendMail("填写测试邮箱","测试邮件发送","发送成功");
        System.out.println("成功");
    }
    
  6. 运行结果

在这里插入图片描述

邮箱信息:

在这里插入图片描述

第二种方式:使用HuTool邮件工具MailUtil发送

HuTool简介:官方简介

  • Hutool是一个小而全的Java工具类库,通过静态方法封装,降低相关API的学习成本,提高工作效率,使Java拥有函数式语言般的优雅,让Java语言也可以“甜甜的”。

  • Hutool中的工具方法来自于每个用户的精雕细琢,它涵盖了Java开发底层代码中的方方面面,它既是大型项目开发中解决小问题的利器,也是小型项目中的效率担当;

  • Hutool是项目中“util”包友好的替代,它节省了开发人员对项目中公用类和公用工具方法的封装时间,使开发专注于业务,同时可以最大限度的避免封装不完善带来的bug。

  1. 除了上述依赖,还需要引入HuTool依赖

    <dependency>
        <groupId>javax.mail</groupId>
        <artifactId>mail</artifactId>
        <version>1.4.7</version>
    </dependency>
    
  2. 相关配置 注意官方要求必须吧这个配置放在src/main/resources下的config目录下命名为:mail.setting

    #简单配置:
    # 发件人(必须正确,否则发送失败)
    from = hutool@yeah.net
    # 密码(注意,某些邮箱需要为SMTP服务单独设置密码,详情查看相关帮助)
    pass = q1w2e3
    
   #Hutool可以提供完整的配置文件:
   # 邮件服务器的SMTP地址,可选,默认为smtp.<发件人邮箱后缀>
   host = smtp.yeah.net
   # 邮件服务器的SMTP端口,可选,默认25
   port = 25
   # 发件人(必须正确,否则发送失败)
   from = hutool@yeah.net
   # 用户名,默认为发件人邮箱前缀
   user = hutool
   # 密码(注意,某些邮箱需要为SMTP服务单独设置授权码,详情查看相关帮助)
   pass = q1w2e3
  1. 代码测试

    MailUtil.send("67937807@qq.com","我是标题","我是内容",true);
    System.out.println("成功");
    
  2. 结果

在这里插入图片描述

在这里插入图片描述

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值