javamail 发送邮件
2017-08-22 22:49
232 查看
使用javamail 测试163发送邮件动能时
在测试发送邮件时与几个问题
代码如下:
[java] view
plain copy
public void sendMail() {
String host = "smtp.163.com"; //邮件服务器
String from = "*****@163.com";
String to = "*****@163.com";
String userName = "*******";
String pwd = "***************"; //客户端授权码(这里用客户端授权码登陆,而不是用密码登陆)
Properties properties = new Properties();
properties.put("mail.smtp.host", host);
properties.put("mail.smtp.auth", "true");
Session session = Session.getDefaultInstance(properties);
session.setDebug(true);
MimeMessage message = new MimeMessage(session);
try {
message.setFrom(new InternetAddress(from));
message.addRecipient(Message.RecipientType.TO, new InternetAddress(to)); //send
message.setSubject("just a test .....");
message.setText("this is content...");
message.saveChanges();
Transport transport = session.getTransport("smtp");
transport.connect(host, userName, pwd);
transport.sendMessage(message, message.getRecipients(Message.RecipientType.TO));
System.out.println("Send ok ......");
} catch (AddressException e) {
// TODO: handle exception
e.printStackTrace();
}catch (MessagingException e) {
// TODO: handle exception
e.printStackTrace();
}
运行程序出现问题:
550 User has no permission
网上查了下 是 说 smtp,pop3 等 没开启。
手机认证后开启服务,并给力一个客户端授权码。
然后在测试程序,又有错误:
535 Error: authentication failed
又在网上查了下,最最终找到问题,开启smtp,pop3后,客户端登陆邮箱的话 要使用客户端授权码,将程序中的密码改成客户端授权码,程序运行正常
在测试发送邮件时与几个问题
代码如下:
[java] view
plain copy
public void sendMail() {
String host = "smtp.163.com"; //邮件服务器
String from = "*****@163.com";
String to = "*****@163.com";
String userName = "*******";
String pwd = "***************"; //客户端授权码(这里用客户端授权码登陆,而不是用密码登陆)
Properties properties = new Properties();
properties.put("mail.smtp.host", host);
properties.put("mail.smtp.auth", "true");
Session session = Session.getDefaultInstance(properties);
session.setDebug(true);
MimeMessage message = new MimeMessage(session);
try {
message.setFrom(new InternetAddress(from));
message.addRecipient(Message.RecipientType.TO, new InternetAddress(to)); //send
message.setSubject("just a test .....");
message.setText("this is content...");
message.saveChanges();
Transport transport = session.getTransport("smtp");
transport.connect(host, userName, pwd);
transport.sendMessage(message, message.getRecipients(Message.RecipientType.TO));
System.out.println("Send ok ......");
} catch (AddressException e) {
// TODO: handle exception
e.printStackTrace();
}catch (MessagingException e) {
// TODO: handle exception
e.printStackTrace();
}
运行程序出现问题:
550 User has no permission
网上查了下 是 说 smtp,pop3 等 没开启。
手机认证后开启服务,并给力一个客户端授权码。
然后在测试程序,又有错误:
535 Error: authentication failed
又在网上查了下,最最终找到问题,开启smtp,pop3后,客户端登陆邮箱的话 要使用客户端授权码,将程序中的密码改成客户端授权码,程序运行正常
相关文章推荐
- 使用javaMail发送 邮件需要jar包mail.jar 和 activtion.jar
- J2EE: 用Javamail发送邮件
- (转载)JavaWeb学习总结(五十二)——使用JavaMail创建邮件和发送邮件
- javaMail 发送邮件
- 在Spring Boot中使用JavaMailSender发送各类邮件
- javamail发送网页邮件,且有中文
- JavaMail实现发送邮件功能
- JavaMail发送邮件
- JavaMail学习笔记-1(简单纯文本的邮件发送)
- Web应用中使用JavaMail发送邮件
- JavaMail 邮件发送案例
- spring配置javamail利用qq企业邮箱发送邮件。
- 使用JavaMail发送邮件
- javamail发送邮件工具类
- javamail发送邮件的简单实例
- JavaMail 发送邮件 Demo
- javamail发送邮件的简单实例
- 用JavaMail API编写可带附件的邮件发送程序
- 【java基础】javaMail发送邮件设置发件人,重点设置中文昵称