javaMail实现收发邮件(五)】的更多相关文章

控制台打印出的内容,我们无法阅读,其实,让我们自己来解析一封复杂的邮件是很不容易的,邮件里面格式.规范复杂得很.不过,我们所用的浏览器内置了解析各种数据类型的数据处理模块,我们只需要在把数据流传输给浏览器之前明确地指定该数据流属于哪种数据类型即可,之后一切的解析操作由浏览器自动帮我们完成.下面这张图可以很好的说明解析邮件的步骤: 1.调用Message对象的getFrom.getSubject等方法,可以得到邮件的发件人和主题等信息,调用getContentType方法得到邮件的类型:2.通过M…
JavaMail API中也提供了一些专门的类来对邮件的接收进行相关的操作,在介绍这些类之前,我们先来了解下邮件接收API的体系结构,JavaMai API中定义了一个java.mail.Store类,它用于执行邮件的接收任务,我们在程序中调用这个类中的方法可以获取邮箱中的各个邮件夹的信息.JavaMail使用Folder对象表示邮件夹,通过Folder对象的方法可以获取邮件夹中的所有邮件信息,而我们知道邮件的信息可以使用Message对象来表示,Message类中就包含了操作邮件的各种方法了,…
JavaMail API中定义了一个java.mail.Transport类,它专门用于执行邮件发送任务,这个类的实例对象封装了某种邮件发送协议的底层实施细节,应用程序调用这个类中的方法就可以把Message对象中封装的邮件数据发送到指定的SMTP服务器.使用JavaMail发送邮件时设计到的主要API之间的工作关系如下所示: 1.从Session对象中获得实现了某种邮件发送协议的Transport对象:2.使用Session对象创建Message对象,并调用Message对象的方法封装邮件数据…
JavaMail API常用类 JavaMail API使用javax.mail.Message类来表示一封邮件,Message类是一个抽象类,所以我们需要使用其子类javax.mail.internet.MimeMessage类来创建Message类的实例对象,如果我们创建的是一个简单文本邮件,那么MimeMessage类就可以满足我们的需求了,但是如果需要创建一封包含内嵌资源或者是带附件的复杂邮件,则需要使用到JavaMail API中的MimeMessage.javax.mail.inte…
电子邮件的传输过程 电子邮件系统采用客户/服务器模式.电子邮件传送需要用到以下3个重要模块:MUA(Mail User Agent,邮件用户代理):用户通过它与电子邮件服务器打交道.MUA实际上就是邮件客户端软件.MTA(Mail Transfer Agent,邮件传输代理):它主要负责处理所有接收和发送的邮件,为MUA或者MTA提供邮件发送服务,接收其他MTA发送过来的邮件.MDA(Mail Delivery Agent,邮件投递代理):它负责邮件本地投递.当MTA决定某邮件发送本地用户时,M…
概述 1.邮件相关的标准 厂商所提供的 JavaMail 服务程序可以有选择地实现某些邮件协议,常见的邮件协议包括: SMTP(Simple Mail Transfer Protocol) :即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式. POP3(Post Office Protocol – Version 3) :即邮局协议版本 3 ,用于接收电子邮件的标准协议. IMAP(Internet Mail Access Protocol) :即 In…
一.前言 参考博客: http://blog.csdn.net/xietansheng/article/details/51722660 http://www.cnblogs.com/HigginCui/p/5764509.html 关于JavaMail实现带附件的收发邮件网上的例子很多,自己兴趣来了,自己也动手尝试了一番. 其中问题大部分在代码注释中,这里也就不过多描述了,直接上代码作为记录,方便以后查阅. 二.工程目录 三.工程代码 1.Mail.java package com.xie.u…
Apache James 简称 James, 是 Java Apache Mail Enterprise Server的缩写.James 是100%基于Java的电子邮件服务器.它是一种独立的邮件服务器,并提供了一个完整的电子邮件解决方案,用来收.发电子邮件. 本文不赘述James服务器的参数细节,这个以后有机会再详细讨论,这里先从服务器搭建开始,用搭建的服务器收.发电子邮件来熟悉一下Apache James.本人也是新手,希望能得到各位高手的指点,使大家能悟到进阶的方向. 开始之前,先声明一下…
协议:规定好的格式就是协议.就像http协议有请求协议和响应协议,邮件传输也分为发.收邮件的协议. 邮件协议分3种: 发邮件的:SMTP (Simple Mail Transport  Protocal)简单邮件传输协议 收邮件的协议:pop3 (Post Office Protocal 3)邮局协议3 IMAP 新协议 发邮件也可以收邮件. http协议是组织好协议,一块扔给服务器,而SMTP和pop3则是一步步的与服务器交互,对话模式.接收到服务器的响应后才能发起下次请求. 收发邮件的过程:…
一.收发邮件 --->第一步:发邮件首先要有发送者的邮箱地址和登录的密码才能发送 这些都写在APP里  不要写死 --->第二步:发邮件就要有网络,要添加net.Mail命名空间 要发送的邮件的对象 MaileMessage  mail=new MaileMessage(); 设置发信人的地址 maile.From=new MaileMessage(发件人的地址); 设置收信人的地址 mail.To.Add(new MaileMessage(收件人的地址)); 设置标题 mail.Subjec…
非常多网友在使用Outlook Express收发邮件的过程中,有时能够发送邮件,但出现不能接收信件的问题.每次在收邮件都会在某个地方停止不动,然后报超时,出现错误代码0x800CCC19或0x800CCC0F等等,无法接收邮件. 主要是因为您安装了杀毒软件或者防火墙,而且开启了“发送和接收的邮件进行扫描”选项,所以杀毒这些软件阻挡.误诊断时,或者网速不稳定时可能就会出现此类报错,会把110(POP3)接收邮件port给关闭了. 解决方法: 关闭杀毒软件电子邮件扫描监控功能: 1.在杀毒软件的‘…
使用Emacs,将尽可能多的工作放到Emacs中来完成,这样可以提高工作效率. 1.安装必要的LISP插件和程序 $sudo apt-get install stunnel4 $sudo apt-get install mew //邮件处理程序 $sudo apt-get install w3m w3m-el //用于阅读HTML邮件 2.编辑emacs配置文件 ;; mew收发邮件配置 (autoload 'mew "mew" nil t) (autoload 'mew-send &…
发送邮件使用SMTP协议,接受POP3或IMAP: 创建邮件内容email模块,发送邮件smtplib模块.发送邮件比较简单,只需先创建SMTP对象,登录服务器后根据发收邮箱地址发送即可: POP3接受邮件poplib模块,接收到的是原始邮件,需经email模块解析成为能阅读的邮件 IMAP接收邮件imaplib模块. 收发邮件都比较简单,相反,麻烦的是构造邮件以及解析邮件,因为邮件内容的形式可以有多种多样(纯文本.HTML.图片.附件等) 1,电子邮件发送流程: 使用邮件用户代理(客户端)编辑…
mailkit库用于收发邮件.这个库可以替代C#自带的发邮件库 环境  W10 / VS2017CMMT / MailKit version="2.0.3" "net46"  / MimeKit version="2.0.3" "net46" mailkit使用nuget下载或者到GIT  https://github.com/jstedfast/MailKit 邮件收发是与邮件服务器交互,原理参考 https://www.c…
官方 import smtplib from email.mime.text import MIMEText from email.header import Header # 发送邮箱服务器 smtpserver = 'smtp.sina.com' # 发送邮箱用户/密码 user = 'username@sina.com' password = '123456' # 发送邮箱 sender = 'username@sina.com' # 接收邮箱 receiver = 'receive@12…
c#使用SMTP.QQ.COM的SSL验证时,收发邮件,请勿设置端口,代码如下: (1)虽然SSL端口是465,但是,在代码里,不能直接设置端口,很奇怪?挺奇怪,好吧腾讯SSL好像用的是587端口!! (2)smtpClient.UseDefaultCredentials = false; 在smtpClient.Credentials = nc; 前 (3)密码是授权码 string sendto = "983506039@qq.com";//启明星工作室收件人 SmtpClient…
基于shell 现在已经有了 Mail.app, Thunderbird, Outlook 这些图形化工具能很方便的处理邮件,为啥还需要 mutt 这种命令行文本方式的邮件工具呢?mutt 的一个优势是占用资源小,可以很好的运行在低配置的虚拟机或古老的电脑上(应该不会有人想在 256MB 内存的虚拟机或 VPS 上用 X Window/Gnome/Thunderbird 这种组合吧).那为什么要在虚拟机上收发邮件呢,不能在自己电脑上处理邮件吗?可能有多个电脑而且电脑经常换,电脑可能被盗,硬盘可能…
使用python的email.smtplib.poplib模块收发邮件 一封电子邮件的旅程是: MUA:Mail User Agent——邮件用户代理.(即类似Outlook的电子邮件软件) MTA:Mail Transfer Agent——邮件传输代理,就是那些Email服务提供商,比如网易.新浪等等. MDA:Mail Delivery Agent——邮件投递代理.Email服务提供商的某个服务器 发件人 -> MUA -> MTA -> MTA -> 若干个MTA ->…
1.基于JavaMail的Java邮件发送:简单邮件发送 2.基于JavaMail的Java邮件发送:复杂邮件发送…
参考:http://blog.csdn.net/xietansheng/article/details/51722660package com.bfd.ftp.utils;import java.util.Date;import java.util.Properties; import javax.activation.DataHandler;import javax.activation.FileDataSource;import javax.mail.Message.RecipientTyp…
def acptmail(): email = 'xxx@163.com' #input('Email:') password = 'xxx' #input('Password: ') pop3_server = 'pop3.163.com' #下载原始邮件 server = poplib.POP3(pop3_server) server.set_debuglevel(0) #print(server.getwelcome().decode('utf-8')) server.user(email…
实现mutt下收发邮件须要安装,mutt,fbterm,fetchmail,msmtp,procmail 下面是各配置文件.在home文件夹下,隐私信息有马赛克... .muttrc : 当中Mail是我建立的邮件文件夹,还有比較舒适的界面配置 set editor="vim" set mbox="/home/xiaojunyu/Mail/inbox" set spoolfile="/home/xiaojunyu/Mail/inbox/xiaojunyu&…
关于用Delphi中的Indy控件实现收发邮件的几点学习记录             这几天心里颇不宁静,不是因为项目延期,而是因为自己几个月前做的邮件发送程序至今无任何进展,虽然一向谦虚的人在网上发贴总以“小弟”自称.也发过N多关于此类问题的贴子,但总是收益甚少,但也十分感谢参与贴子的各位同仁.必竟,用Indy控件实现收发邮件的例子太少了,于是小弟决定写一篇关于Indy收发邮件的文章,供大家参考.由于本人才疏学浅,故难免有不少谬误,还请各位见谅. 在做例子之前,应明白整个发送和接收邮件流程:…
现在邮件发送功能已经是几乎每个系统或网址必备的功能了,从用户注册的确认到找回密码再到消息提醒,这些功能普遍的会用到邮件发送功能.我们都买过火车票,买完后会有邮件提醒,有时候邮件并不是买完票立马就能收到邮件通知,这个就用到了异步邮件发送. 那怎么实现邮件的异步发送呢? 很显然,引入MQ是一个不错的选择.刚好这段时间在练习ActiveMQ,那就拿activemq来实现异步发送邮件吧. 一.springboot整合JavaMailSender 在发送异步邮件之前,先来简单介绍下邮件发送的基本内容,了解…
本文介绍Outlook2016客户端配置QQ邮箱收发邮件 1.打开Outlook客户端,文件->信息->-添加账户 2.输入需要添加的邮箱账户,点击连接 3.输入密码并连接 4.打开QQ邮箱,进入邮箱设置->账户->开启POP3/IMAP/SMTP/Exchange服务 5.验证密保 6.获取授权码 7.在Outlook服务器输入用户名和密码,密码是邮箱发送的授权码 8.点击确定,绑定成功…
上一篇文章我们学习了利用JavaMail发送简单邮件,这篇文章我们利用JavaMail发送稍微复杂一点的邮件(包含文本.图片.附件).这里只贴出核心代码,其余代码可参考JavaMail(一):利用JavaMail发送简单邮件 封装发送邮件代码 /** * 封装发送邮件代码 * @author fly * @时间 2017-05-09 * */ public class Email { /** * 创建并发送一封包含文本.图片.附件的复杂邮件 * @throws Exception */ publ…
1.Properties属性类 Properties p = new Properties(); p.put(key, value); key -| mail.smtp.host -| mail.smtp.port -| mail.smtp.auth ->"true":"false" 2.生成Authenticator的子类 @Override protected PasswordAuthentication getPasswordAuthentication…
一.前言 今天闲来没事,想着通过程序来给别人发邮件.于是,上网搜了一下,相应的资料也很多,刚开始完成了邮件的简单发送,后来想如何能发送附件,继续寻找 答案,但是遇到了一个问题是当我使用txt类型作为附件时,附件里的内容总是会显示在正文里面,并且还会出现正文乱码的现象,之后经过不断的查阅资料,终 于解决了问题,实现了我自己想要的功能. 二.准备工作 需要的jar包下载地址:https://java.net/projects/javamail/pages/Home 三.源代码 主要的类有三个,代码分…
1.导入javamail.jar        自行百度下载 2.使用模板发送邮件架包 freemarker.jar 3.Spring配置文件  以及架包这里就不需要说了吧,如果不明白的发我Email :xkjava@sina.com //邮件信息设置类 main.java package cn.jbit.email; import java.io.IOException; import java.io.UnsupportedEncodingException; import java.util…
使用过JavaMail的api发送邮件的人可能会有这样一个疑惑:我如何知道我调用该api发送的邮件是否成功呢?一般的开放的api给我们调用都会有个返回值或者状态码,来告诉我们执行成功与否.但是JavaMail却没有提供这样一个返回值. 所以在调用JavaMail发送邮件的时候,我们只能通过catch异常的方式来判断邮件是否发送成功.我们认为只要没有异常发生,那么邮件就能发送成功.那么我们就来分析一下JavaMail为什么没有提供返回值,和通过异常判断邮件发送成功状态是否靠谱. JavaMail发…