java 登陆邮箱_java如何登陆163邮箱,获取登陆用户的好友列表(1)
packagetcpip.smtp;importjava.util.Properties;importjavax.activation.DataHandler;importjavax.activation.FileDataSource;importjavax.mail.*;importjavax.mail.internet.*;/*** 本程序用java来实现Email的发送,所用到的协议为:SMTP,端口号为25;
* 方法:用Socket进行实现,打开客户端的Socket,并连接上服务器:
* 如:Socket sockClient = new Socket("smtp.qq.com",23);
* 这表示发件方连接的是QQ邮箱的服务器,端口号为23
**/publicclassEmail {/*** 整个MIME邮件对象*/privateMimeMessage mimeMsg;/*** 专门用来发送邮件的Session会话*/privateSession session;/*** 封装邮件发送时的一些配置信息的一个属性对象*/privateProperties props;/*** 发件人的用户名*/privateString username;/*** 发件人的密码*/privateString password;/*** 用来实现附件添加的组件*/privateMultipart mp;/*** 发送参数初始化,有的服务器不需要用户验证,所以这里对用户名和密码进行初始化""
*
*@paramsmtp
* SMTP服务器的地址,比如要用QQ邮箱,哪么应为:"smtp.qq.com",163为:"smtp.163.com"*/publicEmail(String smtp) {
username="";
password="";//设置邮件服务器setSmtpHost(smtp);//创建邮件createMimeMessage();
}/*** 设置发送邮件的主机(JavaMail需要Properties来创建一个session对象。
* 它将寻找字符串"mail.smtp.host",属性值就是发送邮件的主机);
*
*@paramhostName*/publicvoidsetSmtpHost(String hostName) {
System.out.println("设置系统属性:mail.smtp.host ="+hostName);if(props==null)
props=System.getProperties();
props.put("mail.smtp.host", hostName);
}/*** (这个Session类代表JavaMail 中的一个邮件session. 每一个基于
* JavaMail的应用程序至少有一个session但是可以有任意多的session。 在这个例子中,
* Session对象需要知道用来处理邮件的SMTP 服务器。*/publicbooleancreateMimeMessage() {try{
System.out.println("准备获取邮件会话对象!");//用props对象来创建并初始化session对象session=Session.getDefaultInstance(props,null);
}catch(Exception e) {
System.err.println("获取邮件会话对象时发生错误!"+e);returnfalse;
}
System.out.println("准备创建MIME邮件对象!");try{//用session对象来创建并初始化邮件对象mimeMsg=newMimeMessage(session);//生成附件组件的实例mp=newMimeMultipart();
}catch(Exception e) {
System.err.println("创建MIME邮件对象失败!"+e);returnfalse;
}returntrue;
}/*** 设置SMTP的身份认证*/publicvoidsetNeedAuth(booleanneed) {
System.out.println("设置smtp身份认证:mail.smtp.auth ="+need);if(props==null)
props=System.getProperties();if(need)
props.put("mail.smtp.auth","true");elseprops.put("mail.smtp.auth","false");
}/*** 进行用户身份验证时,设置用户名和密码*/publicvoidsetNamePass(String name, String pass) {
System.out.println("程序得到用户名与密码");
username=name;
password=pass;
}/*** 设置邮件主题
*
*@parammailSubject
*@return*/publicbooleansetSubject(String mailSubject) {
System.out.println("设置邮件主题!");try{
mimeMsg.setSubject(mailSubject);
}catch(Exception e) {
System.err.println("设置邮件主题发生错误!");returnfalse;
}returntrue;
}/*** 设置邮件内容,并设置其为文本格式或HTML文件格式,编码方式为UTF-8
*
*@parammailBody
*@return*/publicbooleansetBody(String mailBody) {try{
System.out.println("设置邮件体格式");
BodyPart bp=newMimeBodyPart();
bp.setContent(""+mailBody,"text/html;charset=UTF-8");//在组件上添加邮件文本mp.addBodyPart(bp);
}catch(Exception e) {
System.err.println("设置邮件正文时发生错误!"+e);returnfalse;
}returntrue;
}/*** 增加发送附件
*
*@paramfilename
* 邮件附件的地址,只能是本机地址而不能是网络地址,否则抛出异常
*@return*/publicbooleanaddFileAffix(String filename) {
System.out.println("增加邮件附件:"+filename);try{
BodyPart bp=newMimeBodyPart();
FileDataSource fileds=newFileDataSource(filename);
bp.setDataHandler(newDataHandler(fileds));//发送的附件前加上一个用户名的前缀bp.setFileName(fileds.getName());//添加附件mp.addBodyPart(bp);
}catch(Exception e) {
System.err.println("增加邮件附件:"+filename+"发生错误!"+e);returnfalse;
}returntrue;
}/*** 设置发件人地址
*
*@paramfrom
* 发件人地址
*@return*/publicbooleansetFrom(String from) {
System.out.println("设置发信人!");try{
mimeMsg.setFrom(newInternetAddress(from));
}catch(Exception e) {returnfalse;
}returntrue;
}/*** 设置收件人地址
*
*@paramto
* 收件人的地址
*@return*/publicbooleansetTo(String to) {
System.out.println("设置收信人");if(to==null)returnfalse;try{
mimeMsg.setRecipients(javax.mail.Message.RecipientType.TO,
InternetAddress.parse(to));
}catch(Exception e) {returnfalse;
}returntrue;
}/*** 发送附件
*
*@paramcopyto
*@return*/publicbooleansetCopyTo(String copyto) {
System.out.println("发送附件到");if(copyto==null)returnfalse;try{
mimeMsg.setRecipients(javax.mail.Message.RecipientType.CC,
InternetAddress.parse(copyto));
}catch(Exception e) {returnfalse;
}returntrue;
}/*** 发送邮件
*
*@return*/publicbooleansendout() {try{
mimeMsg.setContent(mp);
mimeMsg.saveChanges();
System.out.println("正在发送邮件....");
Session mailSession=Session.getInstance(props,null);
Transport transport=mailSession.getTransport("smtp");//真正的连接邮件服务器并进行身份验证transport.connect((String) props.get("mail.smtp.host"), username,
password);//发送邮件transport.sendMessage(mimeMsg, mimeMsg
.getRecipients(javax.mail.Message.RecipientType.TO));
System.out.println("发送邮件成功!");
transport.close();
}catch(Exception e) {
System.err.println("邮件发送失败!"+e.getMessage());
e.printStackTrace();returnfalse;
}returntrue;
}publicstaticvoidmain(String[] args) {
Email themail=newEmail("smtp.qq.com");
String mailbody="Java Mail......";
themail.setNeedAuth(true);
themail.setSubject("你好");
themail.setBody(mailbody);
themail.setTo(******);
themail.setFrom(********);
themail.addFileAffix("C:/CEPxDD0D.tmp");//附件文件路径,例如:C:/222.jpg,*注;"/"的写法;themail.setNamePass(*****,******);
themail.sendout();
}
}
java 登陆邮箱_java如何登陆163邮箱,获取登陆用户的好友列表(1)相关推荐
- 网易vip邮箱多少钱?163邮箱名字怎么起高端?
网易vip邮箱多少钱?163邮箱名字怎么起高端?邮箱名字的后缀每家邮箱都是固定的,但是前缀是可以设置的,无论是短位.寓意邮箱号都可以注册,tom邮箱每个月都会有特殊靓号的推出. 163vip邮箱登陆入 ...
- 安全邮箱是什么邮箱?怎么登录163邮箱?
安全邮箱是什么邮箱?怎么登录163邮箱?电子邮箱中,分为免费邮箱.vip邮箱.企业邮箱三大类别,从属性即可辨别出具体用途.通常日常办公,如果是5人以上的企业,可使用企业邮箱方便管理.个人日常办公可选择 ...
- 163邮箱会员揭秘,163邮箱注册,你最想了解的几件事
大家好哦,作为一名资深的互联网人 ,小仙女发现电子邮箱真的太太太重要了.领导安排的工作,不及时邮件汇报就会被批,客户的合作方案不及时发邮件确认,便会影响业绩,互联网人太难了既然电子邮箱如此重要,今天来 ...
- 163邮箱申请注册个人,163邮箱付费与免费版有什么区别?
要说什么邮箱经久不衰,那163一定在其中,这个后缀系列陪伴了我们很多年,绝对是经典中的经典.最近,很多朋友想了解163邮箱申请注册个人,163邮箱付费与免费版有什么区别.今天就系统给大家分享下! 16 ...
- 163邮箱域名大全,163邮箱注册申请全流程详解!
163邮箱域名大全,163邮箱注册申请全流程详解.从免费版到收费版邮箱,用了20年,电子邮箱行业发展至今,越来越的个人白领倾向选择付费邮箱.最近听说TOM VIP邮箱刚上线了163vip.com全新后 ...
- 哪个邮箱安全性好?电子邮箱注册怎么申请163邮箱?
哪个邮箱安全性好?电子邮箱注册怎么申请163邮箱呢?随着现在邮箱步入移动办公场景,越来越多的商务人士开始使用邮箱,高效办公. 市场上的邮箱品牌繁多,水平参差不齐.尤其现代互联网高速发展,使用邮箱频率越 ...
- java 发送邮件和读取邮件(163邮箱为例)
1,发送邮件 (1)在设置里面打开163邮箱的smtp.pop3,设置授权码 (2)在引用pom.xml中引用mail.jar <dependency > <groupId > ...
- 大聪明教你学Java | 实现邮件发送(以163邮箱向QQ邮箱发送邮件为例)
前言 电子邮件的应用非常广泛,常见的如在某网站注册了一个账户,自动发送一封激活邮件:通过邮件找回密码:发送活动信息等等.很显然,这些过程不能通过人工来操作(打开浏览器.打开邮箱.创建邮件.发送邮件), ...
- 邮箱登录入口,163邮箱个人登录入口,163邮箱注册登录
电子邮箱和微信是常用到的通讯方式,TOM VIP 163邮箱个人登录入口就可从微信登录,用手机邮箱登录,随时可处理邮件,网页端登录就从官网统一页面登录即可. 邮箱登录入口:微信随心邮 登录" ...
- 163vip邮箱怎么使用?163邮箱能群发邮件吗?
163vip邮箱个性化设置 163邮箱是TOM邮箱的VIP商务版,使用的小伙伴偶尔会问,收费邮箱的个性化设置在哪里操作呢? 第一步 网页登陆163邮箱,点击右上角的设置,即可进入邮箱设置 第二步 在邮 ...
最新文章
- 搞垮服务的20条原则
- python 的* 代表元组 和**代表字典用法
- hdu 4460 friend chains spfa 最短路里面的最长路
- PHP代码为什么不能直接保存HTML文件——PHP生成静态页面教程
- 【Python】Jupyter Notebook这款「骚气满满」的小工具,简直太爱了!
- 7月送书中奖名单,快看!
- ps_基础技术提升topic基础知识调研
- 『数据可视化』基于Python的数据可视化工具
- 如何在虚拟机安装并使用NTFS for Mac 15
- Atitit.index manager api design 索引管理api设计
- 计算机漏洞英语怎么说,漏洞英文,漏洞英文发音bug。
- C语言 使用DFT得到信号幅度谱
- 流利阅读 2019.3.9 Young children should be taught in their mother tongue, not in English
- 华硕主板怎么进入bios
- 如何在PS中将一张图片一次性裁剪保存成多张图片
- 抖音不搞「盲目」社交
- 数学建模暑期集训6:用SPSS对数据进行多元线性回归分析
- node拉取微信权限,实现自定义分享微信朋友圈等操作
- 复合平面波超声成像(Matlab Field II仿真)
- python 学习笔记第一篇---下载网页内所有图片