邮件发送原理

邮件发送原理

协议:

发送邮件:SMTP协议

接收邮件:POP3协议

准备

JavaMail 和Activation jar包

步骤

只含纯文本的邮件

1.创建定义整个应用程序所需的环境信息的session对象, Authenticator 认证对象

Session session = Session.getDefaultInstance(properties, new Authenticator() {
            @Override
            protected PasswordAuthentication getPasswordAuthentication() {
                return new PasswordAuthentication("1982595723@qq.com", "bxqtjwyyyndvcccd");
            }
        });

2.从session中获取transport对象

Transport transport = session.getTransport();

3.使用邮箱的用户名和授权码连接上邮件服务器

transport.connect("smtp.qq.com","1982595723@qq.com","bxqtjwyyyndvcccd");

4.创建邮件

​ 1> 指明邮件收件人

​ 2> 邮件标题

​ 3> 邮件文本内容

​ 4> 邮件发送人

		MimeMessage message = new MimeMessage(session);

        message.setFrom(new InternetAddress("1982595723@qq.com"));
        message.setRecipients(Message.RecipientType.TO, new InternetAddress[]{new InternetAddress("1982595723@qq.com")});
        message.setSubject("邮件主题");
        message.setContent("邮件内容","text/html;charset=utf-8");

5.发送邮件

        transport.sendMessage(message,message.getAllRecipients());
        transport.close();

包含内嵌资源和附件的邮件

只需在上述中修改邮件内容即可

创建邮件:

        //内嵌资源-图片
        MimeBodyPart img = new MimeBodyPart();
        DataHandler dh = new DataHandler(new FileDataSource("src/1.jpg"));
        img.setDataHandler(dh);
        img.setContentID("1");

        //文本
        MimeBodyPart text=new MimeBodyPart();
        text.setContent("这是一封包含图片的邮件<img src='cid:1'>","text/html;charset=utf-8");

        //将内容添加至框架中
        MimeMultipart mimeMultipart = new MimeMultipart();
        mimeMultipart.addBodyPart(img);
        mimeMultipart.addBodyPart(text);
        mimeMultipart.setSubType("mixed");

        message.setContent(mimeMultipart);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值