使用hutool的MailUtil实现发送邮件的功能

Maven依赖

<!-- hutool的maven依赖 -->
<dependency>
    <groupId>cn.hutool</groupId>
    <artifactId>hutool-all</artifactId>
    <version>5.8.8</version>
</dependency>

<!-- 需要的第三方依赖 -->
<dependency>
    <groupId>com.sun.mail</groupId>
    <artifactId>javax.mail</artifactId>
    <version>1.6.2</version>
</dependency>

具体实现

private void sendEmail() {
        MailAccount mailAccount = new MailAccount();
        mailAccount.setAuth(true);
        mailAccount.setHost("smtp.163.com");
        mailAccount.setUser("发件邮箱号");
        mailAccount.setPass("授权码");
        mailAccount.setFrom("发件邮箱号");
        
		
        Mail mail = Mail.create(mailAccount).setUseGlobalSession(true);
        mail.setTos("接收邮箱号");
        mail.setTitle("标题");
        //content 内容
        //参数true 是否支持HTML,不支持false
        mail.setContent("内容", true);
        /**
        *添加附件
        *我这的url是阿里云oss服务的
        *buckentName ,endPoint 看公司oss的参数配置
        *key1,key2是   文件夹/文件名   例如:a.jpg在oss服务器名字为Java的bucket下面的picture
        *文件夹下,那么URL就是 https://Java.endPoint/picture/a.jpg
        */
        String[] urls = {
                "https://bucketName.endPoint/key1",
                "https://bucketName.endPoint/key2"};
		//构建文件数组
        List<DataSource> dataSources = new ArrayList<>();
        for (String url : urls) {
            DataSource dataSource = new URLDataSource(URLUtil.url(url));
            dataSources.add(dataSource);
        }
        //设置邮件附件
        mail.setAttachments(dataSources.toArray(new DataSource[]{}));
        String send = mail.send();
    }