// 发送邮件
public static void send(String toEmail, String content) {
Session session = getSession();
try {
System.out.println("--send--" + content);
// Instantiate a message
Message msg = new MimeMessage(session); // Set message attributes
msg.setFrom(new InternetAddress("from@qq.com"));//发件人地址
InternetAddress[] address = { new InternetAddress("to@qq.com") };
msg.setRecipients(Message.RecipientType.TO, address);// 收件人地址
msg.setSubject("这是发生的主题");// 发送的主题
msg.setSentDate(new Date());// 发送日期
msg.setContent("这是发生的内容", "text/html;charset=utf-8");// 发送类型 // Send the message
Transport.send(msg);
} catch (MessagingException mex) {
mex.printStackTrace();
}
} private static Session getSession() {
Properties props = new Properties();
props.put("mail.smtp.host", "smtp.qq.com");// 设置服务器地址
props.put("mail.store.protocol", "smtp");// 设置协议
props.put("mail.smtp.port", 25);// 设置端口
props.put("mail.smtp.auth", "true");// 一定要这么设置,验证"true",不能设置为true
// 创建一个密码验证器
Authenticator authenticator = new Authenticator() { @Override
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication("from@qq.com", "****");//发送邮件的账户和密码
} };
// 根据邮件会话属性和密码验证器构造一个发送邮件的session
Session session = Session.getDefaultInstance(props, authenticator); return session;
}

我用的是mail.jar和activation-1.1.1.jar。

发送者邮箱需要开启POP3/SMTP服务和IMAP/SMTP服务。qq邮箱发送,设置服务的时候需要设置独立密码,上面使用的验证密码就是这个独立密码,使用qq邮箱的登录密码是不行的。否则会报:535 Authentication failed 这个错误。

调用上面的send方法,把要接受邮箱的地址和内容传过来就可以。

javamail邮件发送的更多相关文章

  1. javamail邮件发送例子

    public class EmailTask{        // Session used by the javamail classes    private Session session;   ...

  2. Spring的javaMail邮件发送(带附件)

    项目中经常用到邮件功能,在这里简单的做一下笔记,方便日后温习. 首先需要在配置文件jdbc.properties添加: #------------ Mail ------------ mail.smt ...

  3. JavaMail邮件发送不成功的那些坑人情况及分析说明

    [我的Segmentfault原文]https://segmentfault.com/a/1190000008030346 前言   JavaMail的使用本身并不难,网上有不少案例,简单易懂,而且有 ...

  4. javaMail 邮件发送和接收示例,支持正文图片、html、附件(转)

    转自:https://blog.csdn.net/star_fly4/article/details/52037587 一.RFC882文档简单说明 RFC882文档规定了如何编写一封简单的邮件(纯文 ...

  5. JavaMail 邮件发送

    jar包部署 /** * 通过SMTP进行邮件集成 */ public class CmpSendMail { // 邮件发送服务器主机 private final static String HOS ...

  6. 应用层之E-mail服务及javaMail邮件发送的知识总结

    关于Email服务你需要知道的知识点: 概述: 今天来介绍一下应用层的电子邮件服务,我们每天几乎都在用,电子邮件(email)服务也是一种基于C/S模式的服务,它采用的是一种"存储-转发&q ...

  7. javaMail邮件发送的简单实现

    package com.test.mail; import java.util.Properties; import javax.mail.Message; import javax.mail.Ses ...

  8. (转)JavaMail邮件发送-发送一个文本邮件和一些问题说明

    需要下载的JAR包: JavaMail:http://www.oracle.com/technetwork/java/javamail/index.html JAF:http://www.oracle ...

  9. 带有附件及图片正文的JavaMail邮件发送

    1 package javamail; 2 3 import java.io.UnsupportedEncodingException; 4 import java.util.Properties; ...

随机推荐

  1. css学习之 display:inline-block;

    设置display:inline-block;后的元素 就是一个格式化为行内元素的块容器( Block container ):通俗讲就是:将对象呈递为内联对象,但是对象的内容作为块对象呈递.旁边的内 ...

  2. http请求的概念

    我曾多次阅读http协议,但是理解依然不深,在此,再次阅读,再次理解.加深两点:解析头部信息\r\n,分解头部和主体用\r\n\r\n.之所以一次请求会看到网络里有很多请求,是因为浏览器代替访问了多次 ...

  3. typeof做类型判断时容易犯下的错

    学过js同学都知道js的数据类型有 字符串.数字.布尔.Null.Undefined和object(数组.function......) 作为一个初学者我一直认为每个数据类型返回的结果是这样的 typ ...

  4. php的redis的pconnect

    1. 当使用pconnect时,连接会被重用,连接的生命周期是fpm进程的生命周期,而非一次php的执行. 2.如果代码中使用pconnect, close的作用仅是使当前php不能再进行redis请 ...

  5. C#中使用like和in参数传值

    like 参数string strSql = "select * from Person.Address where City like '%'+ @add + '%'";SqlP ...

  6. Math.round(),Math.ceil(),Math.floor()的区别

    1.Math.round():根据"round"的字面意思"附近.周围",可以猜测该函数是求一个附近的整数,看下面几个例子就明白. 小数点后第一位<5 正 ...

  7. Hive 安装过程中的问题

    org.apache.thrift.transport.TTransportException: Could not create ServerSocket on address 0.0.0.0/0. ...

  8. @Autowired注解(转)

    5.6.4 @Autowired注解 自Spring诞生以来,

  9. Python基础篇-day7

    本节目录-面向对象1 类介绍1.1 面向对象oo特征1.2 类的特性1.3 创建与调用 1.3.1 基本结构 1.3.2 结构说明 1.3.3 对外部提供只读访问接口 1.3.4 析构方法2 继承2. ...

  10. HDU 1028 HDU Ignatius and the Princess III

    简单的钱币兑换问题,就是钱的种类多了一点,完全背包. #include<cstdio> #include<cstring> int main () { ]; memset(dp ...