今天要记录一下写到的关于邮箱之间发送邮件的功能。
以前不知道怎么发送邮件,经过一番学习,实现了这个功能。
步骤:
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.授权码的获取:
邮箱中心—>小齿轮 设置—>客户端授权密码—>开启—>设置你的授权码---->该授权码即你自己填写的。
开启–并设置授权码–即可