邮件转发功能

                                 邮件转发功能

 

转发功能的描述:
主题的样式:       转发: + 原主题
邮件内容:
   --------原始邮件-------
发件人:
发送时间:
收件人:
主题:

邮件内容

有附件的话下面会添加附件。
 

获取用户的邮件然后进行转发,假设获取用户的第一条邮件,代码实现如下:部分代码需要在先前的博文能够查找到。
https://blog.csdn.net/xiao__jia__jia/article/details/83684462

ForwardMessage.java

package com.hstc.bean;

import javax.mail.*;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeBodyPart;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeMultipart;
import java.util.Date;


public class ForwardMessage {

        public static void main(String [] args) throws Exception{
            String host = "localhost";
            String username = "panjia";
            String password = "panjia";
            // 2、读取邮件夹
            Folder folder = POP3Help.getFolder(host, username,password );
            // 获取邮件夹中第1封邮件信息

            Message[] messages = new Message[0];
            try {
                messages = folder.getMessages();
            } catch (MessagingException e) {
                e.printStackTrace();
            }

            if (messages.length <= 0) {
                return;
            }
            Message message = messages[0];
            // 打印邮件关键信息
            String from = InternetAddress.toString(message.getFrom());
            if (from != null) {
                System.out.println("From: " + from);
            }
            String replyTo = InternetAddress.toString(message.getReplyTo());
            if (replyTo != null) {
                System.out.println("Reply-to: " + replyTo);
            }

            String to = InternetAddress.toString(message.getRecipients(Message.RecipientType.TO));
            if (to != null) {
                System.out.println("To: " + to);
            }
            String subject = message.getSubject();
            if (subject != null) {
                System.out.println("Subject: " + subject);
            }
            Date sent = message.getSentDate();
            if (sent != null) {
                System.out.println("Sent: " + sent);
            }
            // 设置转发邮件信息头
            Session session = SMTPHelp.createSession();
            Message forward = new MimeMessage(session);
            forward.setFrom(new InternetAddress(from));
            forward.setRecipient(Message.RecipientType.TO, new InternetAddress(replyTo));
            forward.setSubject("Fwd: " + message.getSubject());
            // 设置转发邮件内容
            MimeBodyPart bodyPart = new MimeBodyPart();
            bodyPart.setContent(message, "message/rfc822");
            Multipart multipart = new MimeMultipart();
            multipart.addBodyPart(bodyPart);
            forward.setContent(multipart);
            forward.saveChanges();
            Transport transport = session.getTransport();
            transport.connect(host, username, password);
            transport.sendMessage(message, message.getRecipients(Message.RecipientType.TO));
            transport.close();
            folder.close(false);
            System.out.println("message forwarded successfully....");

        }
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值