JAVAMAIL手动发送邮件
telnet smtp.sina.com 25
ehlo hncu/*ehlo命令是SMTP邮件发送程序与SMTP邮件接收程序建立连接后必须发送的第一条SMTP命令,参数<domain>表示SMTP邮件发送者的主机名(hncu)。ehlo命令用于替代传统SMTP协议中的helo命令。*/
auth login//这个表示要进行登陆
aG5jdWphdmE= //账户名hncujava,必须用BASE64Encode编码过的
MTIzNDU2Nw== //密码1234567,必须用BASE64Encode编码过的
mail from:<hncujava@sina.com> //给服务器看的,必须正确
rcpt to:<hncujava@126.com>
data
from:<hncujava@sina.com>
to:<hncujava@126.com>
subject:SubjectHncu
[空行]
邮件正文...
很多信息
hello nihao!
. //用英文的句号(单独一行)代表邮件结束
quit //退出
//给qq邮箱发送邮件
telnet smtp.sina.com 25
ehlo hncu
auth login
aG5jdWphdmE= //账户名hncujava,必须用BASE64Encode编码过的
MTIzNDU2Nw== //密码1234567,必须用BASE64Encode编码过的
mail from:<hncujava@sina.com> //给服务器看的,必须正确
rcpt to:<729627398@qq.com>
data
from:<hncujava@sina.com>
to:<729627398@qq.com>
subject:SubjectHncu
[空行]
邮件正文...
很多信息
hello nihao!
. //用英文的句号(单独一行)代表邮件结束
quit //退出
////////用于BASE64编码的辅助工具类
import org.junit.Test;
import sun.misc.BASE64Encoder;
public class Base64Use {
@Test
public void base64Use() throws Exception{
String name ="hncujava";
String pwd ="1234567";
BASE64Encoder encoder = new BASE64Encoder();
name = encoder.encode(name.getBytes());
pwd = encoder.encode(pwd.getBytes());
System.out.println(name);
System.out.println(pwd);
}
}
///////////收邮件////////////
telnet pop3.sina.com 110
user hncujava
pass 1234567
stat
list
retr 1
retr n
quit
/*
telnet pop3.163.com 110
user 13107175930
pass mimashi6ge6
stat
list
retr 1
retr n
quit
telnet smtp.sina.com 25
ehlo hncu/*ehlo命令是SMTP邮件发送程序与SMTP邮件接收程序建立连接后必须发送的第一条SMTP命令,参数<domain>表示SMTP邮件发送者的主机名(hncu)。ehlo命令用于替代传统SMTP协议中的helo命令。*/
auth login//这个表示要进行登陆
aG5jdWphdmE= //账户名hncujava,必须用BASE64Encode编码过的
MTIzNDU2Nw== //密码1234567,必须用BASE64Encode编码过的
mail from:<hncujava@sina.com> //给服务器看的,必须正确
rcpt to:<hncujava@126.com>
data
from:<hncujava@sina.com>
to:<hncujava@126.com>
subject:SubjectHncu
[空行]
邮件正文...
很多信息
hello nihao!
. //用英文的句号(单独一行)代表邮件结束
quit //退出
//给qq邮箱发送邮件
telnet smtp.sina.com 25
ehlo hncu
auth login
aG5jdWphdmE= //账户名hncujava,必须用BASE64Encode编码过的
MTIzNDU2Nw== //密码1234567,必须用BASE64Encode编码过的
mail from:<hncujava@sina.com> //给服务器看的,必须正确
rcpt to:<729627398@qq.com>
data
from:<hncujava@sina.com>
to:<729627398@qq.com>
subject:SubjectHncu
[空行]
邮件正文...
很多信息
hello nihao!
. //用英文的句号(单独一行)代表邮件结束
quit //退出
////////用于BASE64编码的辅助工具类
import org.junit.Test;
import sun.misc.BASE64Encoder;
public class Base64Use {
@Test
public void base64Use() throws Exception{
String name ="hncujava";
String pwd ="1234567";
BASE64Encoder encoder = new BASE64Encoder();
name = encoder.encode(name.getBytes());
pwd = encoder.encode(pwd.getBytes());
System.out.println(name);
System.out.println(pwd);
}
}
///////////收邮件////////////
telnet pop3.sina.com 110
user hncujava
pass 1234567
stat
list
retr 1
retr n
quit
/*
telnet pop3.163.com 110
user 13107175930
pass mimashi6ge6
stat
list
retr 1
retr n
quit
telnet smtp.sina.com 25
ehlo hncu/*ehlo命令是SMTP邮件发送程序与SMTP邮件接收程序建立连接后必须发送的第一条SMTP命令,参数<domain>表示SMTP邮件发送者的主机名(hncu)。ehlo命令用于替代传统SMTP协议中的helo命令。*/
auth login//这个表示要进行登陆
aG5jdWphdmE= //账户名hncujava,必须用BASE64Encode编码过的
MTIzNDU2Nw== //密码1234567,必须用BASE64Encode编码过的
mail from:<hncujava@sina.com> //给服务器看的,必须正确
rcpt to:<hncujava@126.com>
data
from:<hncujava@sina.com>
to:<hncujava@126.com>
subject:SubjectHncu
[空行]
邮件正文...
很多信息
hello nihao!
. //用英文的句号(单独一行)代表邮件结束
quit //退出
//给qq邮箱发送邮件
telnet smtp.sina.com 25
ehlo hncu
auth login
aG5jdWphdmE= //账户名hncujava,必须用BASE64Encode编码过的
MTIzNDU2Nw== //密码1234567,必须用BASE64Encode编码过的
mail from:<hncujava@sina.com> //给服务器看的,必须正确
rcpt to:<729627398@qq.com>
data
from:<hncujava@sina.com>
to:<729627398@qq.com>
subject:SubjectHncu
[空行]
邮件正文...
很多信息
hello nihao!
. //用英文的句号(单独一行)代表邮件结束
quit //退出
////////用于BASE64编码的辅助工具类
import org.junit.Test;
import sun.misc.BASE64Encoder;
public class Base64Use {
@Test
public void base64Use() throws Exception{
String name ="hncujava";
String pwd ="1234567";
BASE64Encoder encoder = new BASE64Encoder();
name = encoder.encode(name.getBytes());
pwd = encoder.encode(pwd.getBytes());
System.out.println(name);
System.out.println(pwd);
}
}
///////////收邮件////////////
telnet pop3.sina.com 110
user hncujava
pass 1234567
stat
list
retr 1
retr n
quit
/*
telnet pop3.163.com 110
user 13107175930
pass mimashi6ge6
stat
list
retr 1
retr n
quit
注意在邮箱服务器(进网站邮箱)中要把SMTP和POP3服务的开关打开
邮箱:
hncujava@sina.com 1234567
hncujava@126.com hncu1234567
编码:
public static void main(String[] args) {
String name="hncujava";
String pwd ="1234567";
BASE64Encoder en = new BASE64Encoder();
name = en.encode( name.getBytes() );
pwd = en.encode( pwd.getBytes() );
System.out.println(name); //aG5jdWphdmE= //MTMxMDcxNzU5MzA=
System.out.println(pwd); //MTIzNDU2Nw= //bWltYXNoaTZnZTY=
}
※※win7系统中,默认下 telnet服务是关闭,得用如下方式:
1、控制面板-->程序-->打开或关闭windows功能,选择“telnet服务器” 和 “telnet客户端”,确定即可。
2、控制面板-->系统安全-->管理工具-->服务-->telnet-->右击“属性”-->将“禁用”改为“手动”,再选择“启动”
3、如果启动时出现1068的错误,点击右键查看属性,看是否存在依赖关系的其他服务没启动。
JAVAMAIL手动发送邮件的更多相关文章
- Java Web(十三) 使用javamail进行发送邮件,(使用QQ,163,新浪邮箱服务器)
加油加油. --WH 一.发送邮件的原理 在了解其原理之前,先要知道两个协议,SMTP和POP3 SMTP:Simple Mail Transfer Protocol,即简单邮件传输协议,发送邮件的协 ...
- web开发(九) 使用javamail进行发送邮件,(使用QQ,163,新浪邮箱服务器)
在网上看见一篇不错的文章,写的详细. 以下内容引用那篇博文.转载于<http://www.cnblogs.com/whgk/p/6506027.html>,在此仅供学习参考之用. 一.发送 ...
- Java + 腾讯企业邮箱 + javamail + SSL 发送邮件
说实话腾讯的企业邮箱真心不错! 腾讯企业邮箱官网:http://exmail.qq.com/login/ 新用户注册:http://exmail.qq.com/onlinesell/intro 点击开 ...
- JavaMail直接发送邮件
一般用JavaMail发送邮件都需要先登录到外部smtp服务器(如smtp.163.com) 二次转发,其实只要得到域名的邮件交换服务器地址(MX)就可以直接将邮件发出 这里用到了dnsjava(下载 ...
- (更新)Java + 腾讯企业邮箱 + javamail + SSL 发送邮件
咳咳~最头疼的就是莫名其妙的错误. 本来今年6月份运行通过的代码,过俩月就报错了. javax.mail.MessagingException: Could not connect to SMTP h ...
- 使用JavaMail实现发送邮件功能
package com.dunn.model; import java.util.Properties; import javax.mail.Address; import javax.mail.Me ...
- 使用JavaMail API发送邮件
发送邮件是很常用的功能,注册验证,找回密码,到货通知,欠费提醒等,都可以通过邮件来提醒. Java中发送邮件需要使用javax.mail.jar包,读者可以上网搜索或去官方下载,下载地址为: 下面贴上 ...
- javamail+postfix发送邮件
由于在做项目时,需要用到邮箱服务.但是不想使用163,qq的,所以就自己搭一个邮箱服务器. 在搜索资料发现postfix是个不错的选择,于是就开始配置了. 这是我搜到的最全的的教程了:http://w ...
- 通过spring实现javamail发送邮件功能
以前很早的时候大家都用javamail实现发送邮件的功能,而且我们也一直沿用至今,代码拷过来用用就行了,现在我们改为用spring来实现,这样一来减少代码的复杂度,也能更好的契合spring理念 首先 ...
随机推荐
- list、tuple、dict、set、map
list Python内置的一种数据类型是列表. list是一种有序的集合,可以随时添加和删除其中的元素. # 创建list classmate = ['micheal', 'Bob', 'Tracy ...
- 【转】构建maven web项目
Maven Web应用 创建Web应用程序 要创建一个简单的java web应用程序,我们将使用Maven的原型 - web应用插件.因此,让我们打开命令控制台,进入到C: MVN目录并执行以下命令m ...
- Java集合框架之LinkedList-----用LinkedList模拟队列和堆栈
LinkedList的特有方法: (一)添加方法 addFisrt(E e):将指定元素插入此列表的开头.//参数e可以理解成Object对象,因为列表可以接收任何类型的对象,所以e就是Object对 ...
- HDU 1213 How Many Tables (并查集)
How Many Tables 题目链接: http://acm.hust.edu.cn/vjudge/contest/123393#problem/C Description Today is Ig ...
- [iOS 多线程 & 网络 - 3.0] - 在线动画Demo
A.需求 所有数据都从服务器下载 动画列表包含:图片.动画名标题.时长副标题 点击打开动画观看 code source: https://github.com/hellovoidworld/Vid ...
- [iOS UI进阶 - 6.2] 核心动画CoreAnimation 练习代码
A.基本用法 1.CABasicAnimation // // ViewController.m // CoreAnimationTest // // Created by hellovoidworl ...
- linux下查看端口的占用情况
前提:首先你必须知道,端口不是独立存在的,它是依附于进程的.某个进程开启,那么它对应的端口就开启了,进程关闭,则该端口也就关闭了.下次若某个进程再次开启,则相应的端口也再次开启.而不要纯粹的理解为关闭 ...
- Android:从程序员到架构师之路Ⅲ_高焕堂
Part-2: 从Android框架代码中学习设计 一 基础设计模式(Pattern)的代码:以Android为例 1.Template Method模式:IoC(控制反转)机制 2.Observer ...
- memcached构建集群分析之一
memcached本身是不支持集群的,集群所关注的容灾.容错.宕机恢复机制统统都没有,实战中需要自己实现容灾机制. memcached集群相比memcached的优势: 巨量数据分布到集群的多台应用主 ...
- const修饰的双重指针赋值解惑
在c程序中,我们可能经常会使用到指针之间的赋值. 传统的赋值操作: char *cp = "c"; const char *ccp; ccp = cp; printf(" ...