Java中实现两个邮箱之间发送邮件

今天要记录一下写到的关于邮箱之间发送邮件的功能。
以前不知道怎么发送邮件,经过一番学习,实现了这个功能。
步骤:
1.首先在你的maven 的pom.xml文件中配置jar包

        <dependency>
            <groupId>javax.mail</groupId>
            <artifactId>mail</artifactId>
            <version>1.4.7</version>
        </dependency>

2.在你的主程序或者某个函数体内加入以下代码,并记得自动import 更改

		 	Properties props = new Properties();
            props.setProperty("mail.smtp.auth", "true");
            props.setProperty("mail.transport.protocol", "smtp");
            props.put("mail.smtp.host","smtp.163.com");// smtp服务器地址
            
            Session session = Session.getInstance(props);
            session.setDebug(true);
            
            Message msg = new MimeMessage(session);
            msg.setSubject("测试程序——邮件的主题名.");
            msg.setText("你好!这是我的第一个javamail程序---mail");
            msg.setFrom(new InternetAddress("发件人@163.com"));//发件人邮箱(我的163邮箱)
            msg.setRecipient(Message.RecipientType.TO,
                    new InternetAddress("收件人@任意邮箱")); //收件人邮箱(如:QQ邮箱或是Outlook邮箱等)
            msg.saveChanges();

            Transport transport = session.getTransport();
            transport.connect("发件人@163.com","授权码字符串");//发件人邮箱,授权码(可以在邮箱设置中获取到授权码的信息)
            
            transport.sendMessage(msg, msg.getAllRecipients());
            
            System.out.println("邮件发送成功...");
            transport.close();

3.有适当的细节部分可根据你的需要更改,另外,关于设置收件人的邮箱字符串方面,扩展的建议就是获取界面输入的邮箱名,将值传入 该处,可实现灵活发送邮件的功能。

4.如果是163邮箱的话,必须登录PC版的163邮箱,且最好打开自动保存已发送文件的设置,这样可方便你及时看到是否发送成功的效果。

5.授权码的获取:
在这里插入图片描述
邮箱中心—>小齿轮 设置—>客户端授权密码—>开启—>设置你的授权码---->该授权码即你自己填写的。
在这里插入图片描述
开启–并设置授权码–即可
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_37887131/article/details/89487005