全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

JavaMail实现发送邮件功能

本文实例为大家分享了JavaMail实现发送邮件功能的具体代码,供大家参考,具体内容如下

用java发邮件,必须要导入新的包

       mail.jar – 发邮件的核心包

       activation.jar – 对用户和密码加密.

在mail.jar中有三个核心类:

       Javax.mail.Session – 是指与邮件服务器会话。整个项目中只要一个就可以了.

       Javax.mail.Message(接口)  - 准备发送数据信息。

                      MimeMessage - 可以设置类型的数据信息。

       Transport – 它拥有一个方法可以发送Message。

@Test
 public void sendMail() throws Exception{
  //1,声明properties对象放信息
  Properties props = new Properties();
  //设置连接哪一台服务器
  props.setProperty("mail.host", "smtp.163.com");
  //设置是否认证:
  props.setProperty("mail.smtp.auth", "true");
  
  //2,声明用户名和密码
  Authenticator auth = new Authenticator(){
   //返回用户名和密码对象
   @Override
   protected PasswordAuthentication getPasswordAuthentication() {
    PasswordAuthentication pa = new PasswordAuthentication("xxxxx@163.com", "123456");
    return pa;
   }
  };
  //3,获取session对象
  Session session = Session.getDefaultInstance(props, auth);
  //设置session为调试模式
  session.setDebug(true);
  //4,声明信息
  MimeMessage mm1 = new MimeMessage(session);
  //5,设置发件人信息
  Address form = new InternetAddress("xxxxx@163.com"); 
  mm1.setFrom(form);
  //6,设置收件人 ,RecipientType:发送,抄送,密送 类型
  mm1.setRecipient(RecipientType.TO, new InternetAddress("xxx@qq.com"));
  //mm1.setRecipient(RecipientType.CC, new InternetAddress(""));//抄送
 
  //7,设置主题
  mm1.setSubject("拉面学习通知");
  String cont = "请点击 <a href='http://www.fsy158.com/news/31_207'>官网新闻</a>查看祝您发财";
  mm1.setContent(cont, "text/html;charset=UTF-8");
  
  //8,发送
  Transport.send(mm1);
 
 }

其中的mimeType可是text/plain纯文本。

发送附件:

@Test
 public void sendMailWithFile() throws Exception{
 Properties ps = new Properties();
 ps.setProperty("mail.host", "smtp.163.com");
 ps.setProperty("mail.smtp.auth", "true");
 
 Authenticator auth = new Authenticator(){
  @Override
  protected PasswordAuthentication getPasswordAuthentication() {
  return new PasswordAuthentication("xxx@163.com","xxx.");
  } 
 };
 Session session = Session.getDefaultInstance(ps, auth);
 session.setDebug(true);
 MimeMessage msg = new MimeMessage(session);
 Address address = new InternetAddress("xxx@163.com");
 msg.setFrom(address);
 //发送给
 msg.setRecipient(RecipientType.TO, new InternetAddress("xxx@qq.com"));
 msg.setRecipient(RecipientType.BCC, new InternetAddress("xxx@qq.com"));//密送
 msg.setRecipient(RecipientType.CC, new InternetAddress("xxx@qq.com"));//抄送
 msg.setSubject("$激情小视频*免费观看");
 
 //声明多部件处理
 MimeMultipart mm = new MimeMultipart();
 
 MimeBodyPart body1 = new MimeBodyPart();
 //设置附件
 DataSource ds1 = new FileDataSource(new File("./img/a.jpg"));
 DataHandler dh1 = new DataHandler(ds1);
 body1.setDataHandler(dh1);
 //必须设置名称
 body1.setFileName(MimeUtility.encodeText("|美女|.jpg"));
 
 MimeBodyPart body2 = new MimeBodyPart();
 DataSource ds2 = new FileDataSource(new File("./img/b.jpg"));
 DataHandler dh2 = new DataHandler(ds2);
 body2.setDataHandler(dh2);
 body2.setFileName(MimeUtility.encodeText("|美女|2.jpg"));
 
 MimeBodyPart body3 = new MimeBodyPart();
 DataSource ds3 = new FileDataSource(new File("./img/m.mp3"));
 DataHandler dh3 = new DataHandler(ds3);
 body3.setDataHandler(dh3);
 body3.setFileName(MimeUtility.encodeText("*.mp3"));

 //添加body到mm
 mm.addBodyPart(body1);
 mm.addBodyPart(body2);
 mm.addBodyPart(body3);
 
 msg.setContent(mm);

 //设置发送日期
 Calendar c = Calendar.getInstance();
 c.add(Calendar.DATE, -5);
 msg.setSentDate(c.getTime());

 //发送
 Transport.send(msg);
 }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# JavaMail  # 发送邮件  # Spring Boot中利用JavaMailSender发送邮件的方法示例(附源码)  # 基于SSM框架+Javamail发送邮件的代码实例  # 基于java使用JavaMail发送邮件  # 使用JavaMail发送邮件保证成功的方法  # JavaMail入门教程之发送邮件(3)  # JavaWeb中使用JavaMail实现发送邮件功能实例详解  # Java使用JavaMail发送邮件的方法  # Java基于JavaMail实现向QQ邮箱发送邮件  # 如何使用JavaMail发送邮件  # JavaWeb中JavaMail创建邮件和发送邮件  # 发邮件  # 请点击  # 是指  # 中有  # 大家分享  # 具体内容  # 官网  # 祝您  # 免费观看  # 大家多多  # 邮件服务器  # 就可以  # 发送给  # 小视频  # 必须要  # Authenticator  # true  # properties 


相关文章: 高防服务器租用首荐平台,企业级优惠套餐快速部署  怎么制作一个起泡网,水泡粪全漏粪育肥舍冬季氨气超过25ppm,可以有哪些措施降低舍内氨气水平?  如何在建站主机中优化服务器配置?  如何在IIS服务器上快速部署高效网站?  如何快速查询网站的真实建站时间?  网站制作公司哪里好做,成都网站制作公司哪家做得比较好,更正规?  大连网站制作费用,大连新青年网站,五年四班里的视频怎样下载啊?  高性能网站服务器配置指南:安全稳定与高效建站核心方案  如何注册花生壳免费域名并搭建个人网站?  桂林网站制作公司有哪些,桂林马拉松怎么报名?  在线ppt制作网站有哪些软件,如何把网页的内容做成ppt?  网站代码制作软件有哪些,如何生成自己网站的代码?  ppt制作免费网站有哪些,ppt模板免费下载网站?  制作网站的网址是什么,请问后缀为.com和.com.cn还有.cn的这三种网站是分别是什么类型的网站?  购物网站制作费用多少,开办网上购物网站,需要办理哪些手续?  寿县云建站:智能SEO优化与多行业模板快速上线指南  建站主机核心功能解析:服务器选择与网站搭建流程指南  建站之星下载版如何获取与安装?  如何用5美元大硬盘VPS安全高效搭建个人网站?  广州网站设计制作一条龙,广州巨网网络科技有限公司是干什么的?  如何在香港免费服务器上快速搭建网站?  如何在Golang中使用replace替换模块_指定本地或远程路径  MySQL查询结果复制到新表的方法(更新、插入)  c++怎么实现高并发下的无锁队列_c++ std::atomic原子变量与CAS操作【详解】  制作门户网站的参考文献在哪,小说网站怎么建立?  TestNG的testng.xml配置文件怎么写  英语简历制作免费网站推荐,如何将简历翻译成英文?  Avalonia如何实现跨窗口通信 Avalonia窗口间数据传递  如何快速完成中国万网建站详细流程?  如何在Windows虚拟主机上快速搭建网站?  Swift中swift中的switch 语句  如何在万网自助建站平台快速创建网站?  建站之星3.0如何解决常见操作问题?  宝塔建站无法访问?如何排查配置与端口问题?  常州自助建站费用包含哪些项目?  网站按钮制作软件,如何实现网页中按钮的自动点击?  建站之星上传入口如何快速找到?  c# 在ASP.NET Core中管理和取消后台任务  保定网站制作方案定制,保定招聘的渠道有哪些?找工作的人一般都去哪里看招聘信息?  ,sp开头的版面叫什么?  Python如何创建带属性的XML节点  如何通过VPS建站无需域名直接访问?  如何用IIS7快速搭建并优化网站站点?  php8.4新语法match怎么用_php8.4match表达式替代switch【方法】  免费制作海报的网站,哪位做平面的朋友告诉我用什么软件做海报比较好?ps还是cd还是ai这几个软件我都会些我是做网页的?  如何通过FTP服务器快速搭建网站?  专业企业网站设计制作公司,如何理解商贸企业的统一配送和分销网络建设?  PHP正则匹配日期和时间(时间戳转换)的实例代码  宝华建站服务条款解析:五站合一功能与SEO优化设置指南  如何选择可靠的免备案建站服务器? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。