1. import java.util.Date;
  2. import java.util.Properties;
  3. import javax.activation.DataHandler;
  4. import javax.activation.FileDataSource;
  5. import javax.mail.Authenticator;
  6. import javax.mail.Message;
  7. import javax.mail.MessagingException;
  8. import javax.mail.Multipart;
  9. import javax.mail.PasswordAuthentication;
  10. import javax.mail.Session;
  11. import javax.mail.Transport;
  12. import javax.mail.internet.InternetAddress;
  13. import javax.mail.internet.MimeBodyPart;
  14. import javax.mail.internet.MimeMessage;
  15. import javax.mail.internet.MimeMultipart;
  16. public class demo {
  17. /**
  18. * @param args
  19. */
  20. public static void main(String[] args) {
  21. // TODO Auto-generated method stub
  22. Properties props = new Properties();
  23. props.put("mail.smtp.host","smtp.qq.com");
  24. props.put("mail.smtp.auth", "true"); // 指定是否需要SMTP验证
  25. Session session = Session.getDefaultInstance(props
  26. //以匿名内部类的形式创建登录服务器的认证对象
  27. , new Authenticator()
  28. {
  29. public PasswordAuthentication getPasswordAuthentication()
  30. {
  31. return new PasswordAuthentication("717608039@qq.com","justdoit@qq");
  32. }
  33. });
  34. try {
  35. MimeMessage msg = new MimeMessage(session);
  36. msg.setFrom("717608039@qq.com");
  37. msg.setSubject("JavaMail hello world example");
  38. msg.setSentDate(new Date());
  39. InternetAddress[] addresses = {new InternetAddress("289495433@qq.com")};
  40. msg.setRecipients(Message.RecipientType.TO , addresses);
  41. msg.setText("Hello, world!\n");
  42. Multipart mp = new MimeMultipart();
  43. //向Multipart添加正文
  44. MimeBodyPart mbpContent = new MimeBodyPart();
  45. mbpContent.setText("hello");
  46. //将BodyPart添加到MultiPart中
  47. mp.addBodyPart(mbpContent);
  48. MimeBodyPart mbpFile = new MimeBodyPart();
  49. //以文件名创建FileDataSource对象
  50. FileDataSource fds = new FileDataSource("D://002.jpg");
  51. //处理附件
  52. mbpFile.setDataHandler(new DataHandler(fds));
  53. mbpFile.setFileName(fds.getName());
  54. //将BodyPart添加到MultiPart中
  55. mp.addBodyPart(mbpFile);
  56. msg.setContent(mp);
  57. Transport.send(msg);
  58. } catch (MessagingException mex) {
  59. System.out.println("send failed, exception: " + mex);
  60. }
  61. }
  62. }

版权声明:本文为博主原创文章,未经博主允许不得转载。

利用java mail发送邮件的更多相关文章

  1. 利用java mail发送邮件(转)

    JavaMail是SUN提供给开发者在应用程序中实现邮件发送和接收功能而提供的一套标准开发类库,支持经常使用的邮件协议,如SMTP.POP3.IMAP.开发者使用JavaMail编写邮件程序时,无需考 ...

  2. Java网络编程:利用Java mail包发送电子邮件

    下面代码是利用Java mail包封装了一个发送邮件的类 import java.io.File; import java.util.ArrayList; import java.util.Date; ...

  3. Spring Boot 揭秘与实战(七) 实用技术篇 - Java Mail 发送邮件

    文章目录 1. Spring Boot 集成 Java Mail 2. 单元测试 3. 源代码 Spring 对 Java Mail 有很好的支持.因此,Spring Boot 也提供了自动配置的支持 ...

  4. java mail(发送邮件--163邮箱)

    package com.util.mail; /** * 发送邮件需要使用的基本信息 */ import java.util.Properties; public class MailSenderIn ...

  5. java mail发送邮件

    最近做了自动发送邮件功能,带附件的:需要的jar包有

  6. 使用Java Mail发送邮件

    本笔记参考自:高爽|Coder,原文地址:http://blog.csdn.net/ghsau/article/details/17839983 JavaMail是SUN提供给开发人员在应用程序中实现 ...

  7. 简单的java mail发送邮件实例

    mail.jar ,commons-email-X.X.jar ,activation.jar ,log4j.jar  这四个jar,放进项目里 下载地址 http://www.oracle.com/ ...

  8. Java Mail 发送邮件(SSL加密方式,TSL加密方式)

    一.一般配置 发送邮件需要用到  mail包 maven 依赖如下: <!-- https://mvnrepository.com/artifact/javax.mail/mail --> ...

  9. 使用java mail 发送邮件

    1.关联jar包:   activation.jar   mail.jar 2.调用 @Test public void test1() { List<String> imageUrlLi ...

随机推荐

  1. 关于date和String互相转换的问题

    其实原理很简单,就是将String类型的变量使用SimpleDateFormat来转换成Date,然后用getTime()方法比较 SimpleDateFormat sdf = new SimpleD ...

  2. python基础1 ---python简介

    python基础 一.python前言 1.什么是编程语言 编程语言是程序员与计算机之间沟通的介质. 2.编程语言的分类 机器语言:机器语言是用二进制代码表示的计算机能直接识别和执行的一种机器指令的集 ...

  3. BootStrap实现左侧或右侧竖式tab选项卡

    BootStrap实现左侧或右侧竖式tab选项卡 代码如下: <div style="height: 100px;"> <div class="col- ...

  4. 第一篇 css导入方式 及选择器

    一 推荐资料 推荐书籍 css Zen Garden 中文(css禅意花园) 二.css样式 1.css样式表特征 继承性  大多数css的样式规则可以被继承 层叠性 1)可以定义 多个样式 2)不冲 ...

  5. 剑指offer——树中两个节点的最低公共祖先

    代码来源与<剑指offer> 得到从根节点开始到输入的两个结点的两条,需要遍历两次树,每遍历一次的时间复杂度是O(n),得到的两条路径的长度在最差情况时是O(n),通常情况下两条路径的长度 ...

  6. GetTickCount的几个案例

    一,获得运行时间: var T1,T2 : double; begin T1 := GetTickCount; //需要做的事情 T2 := GetTickCount; ShowMessage( fl ...

  7. 字典树 HDU 1075 What Are You Talking About

    http://acm.hdu.edu.cn/showproblem.php?pid=1075 ;}

  8. UOJ278 【UTR #2】题目排列顺序

    本文作者:ljh2000 作者博客:http://www.cnblogs.com/ljh2000-jump/转载请注明出处,侵权必究,保留最终解释权!   题目链接: http://uoj.ac/co ...

  9. Oracle数据库定义语言(DDL)

    --使用Create遇见创建表 Create Table table_name ( column_name datatype [null|not null], column_name datatype ...

  10. HDU 4034 Graph:反向floyd

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4034 题意: 有一个有向图,n个节点.给出两两节点之间的最短路长度,问你原图至少有多少条边. 如果无解 ...