Java之Mail入门Demo

Check it out on github

demo-mail

DESC:

  • spring integration mail

快速上手:

pom.xml
<dependencies>
    <!-- swagger spring 由父工程 pom 提供 -->
    <!-- java mail -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-mail</artifactId>
    </dependency>
</dependencies>
application.yml
spring: 
    mail:
        # host: smtp.exmail.qq.com  #企业
        host: smtp.qq.com  # 个人
        # 端口号465或587
        port: 587
        # 你的邮箱 或者 企业邮箱
        username: you_email@qq.com
        # 这里QQ邮箱开通POP3/SMTP提供的授权码,如果邮箱服务商没有授权码,可以使用密码代替
        password: pwd_or_code
        # 下面默认就好
        protocol: smtp
        default-encoding: UTF-8
编写MailHelper

com.quaint.demo.mail.helper.MailHelper

@Component
public class MailHelper {

    /**
     * 注入 JavaMailSender
     */
    @Autowired
    private JavaMailSender mailSender;

    /**
     * 注入配置文件中的 username 用来当发送邮件的邮箱
     */
    @Value("${spring.mail.username}")
    private String senderEmail;


    // ======= function test ======= 

    /**
     * 发送包含简单文本的邮件
     * @param toMail 要发送的 邮箱地址
     * @param title  邮件标题
     * @param text   邮件内容
     */
    public void sendText(String toMail,String title,String text) {
        SimpleMailMessage simpleMailMessage = new SimpleMailMessage();
        // 设置收件人
        simpleMailMessage.setTo(new String[] {toMail});
        //寄件人
        simpleMailMessage.setFrom(senderEmail);
        simpleMailMessage.setSubject(title);
        simpleMailMessage.setText(text);
        // 发送邮件
        mailSender.send(simpleMailMessage);
		System.out.printf("---邮件已发送---");
    }

    /**
     * 发送包含简单html文本的邮件
     * @param toMail 要发送的 邮箱地址
     * @param title  邮件标题
     * @param text   邮件内容
     * @throws Exception ex
     */
    public void sendHtml(String toMail,String title,String text) throws Exception {
        MimeMessage mimeMessage = mailSender.createMimeMessage();
        MimeMessageHelper mimeMessageHelper = new MimeMessageHelper(mimeMessage);
        //发送到传进来的邮箱
        mimeMessageHelper.setTo(toMail);
        mimeMessageHelper.setFrom(senderEmail);
        mimeMessageHelper.setSubject(title);
        StringBuilder sb = new StringBuilder();
        sb.append("<html><head></head><body>");
        sb.append(text);
        sb.append("</body></html>");
        // 启用html
        mimeMessageHelper.setText(sb.toString(), true);
        // 发送邮件
        mailSender.send(mimeMessage);
		System.out.printf("---邮件已发送---");
    }
}

Check it out on github

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值