一个小巧简单的jsp发送邮件的例子(QQ邮箱)

2013/4/29 7:57:41 | 阅31299 来源:好空间网络 [打印] [关闭]
 

这个例子主要是 用jsp写的一个小巧简单的用来发送电子邮件的一个小例子,花了10几分钟时间修改而成!

 

目的是用自己网站程序,调用QQ邮箱,给您的用户发生电子邮件!!

 

我们看看具体怎么实现的   程序所需要的jar 


mail,smtp.rar

 

我已经把详细的注释写到程序里了,大家看程序应该就能明白

<%@ page contentType="text/html; charset=gb2312" language="java" errorPage="" %>
<%@ page import="java.sql.*,java.util.Date" %>
<%@ page import="java.text.SimpleDateFormat" %>
<%@ page import="java.util.*,javax.mail.*"%>
<%@ page import="javax.mail.internet.*"%>
<%
String qm ="123456"; //您的QQ密码
String tu = "qq.com"; //你邮箱的后缀域名
String tto="zcdnsz111@jspkongjian.net"; //接收邮件的邮箱
String ttitle="好空间网络数据库密码修改成功通知信!操作人ip:";
String tcontent="您的会员:zcdnsz 里的 haokongjian 的mysql 数据库,密码已经被修改为:123456 请切记! 操作人ip:127.0.0.1 ,如不是您本人操作说明您的密码已经泄漏,请立即和我们联系! ! ";
Properties props=new Properties();
props.put("mail.smtp.host","smtp."+tu);//发信的主机,这里我填写的是我们公司的主机!可以不用修改!
props.put("mail.smtp.auth","true");
Session s=Session.getInstance(props);
s.setDebug(true);
MimeMessage message=new MimeMessage(s);
//给消息对象设置发件人/收件人/主题/发信时间
InternetAddress from=new InternetAddress("115798090@"+tu); //这里的115798090 改为您发信的QQ号
message.setFrom(from);
InternetAddress to=new InternetAddress(tto);
message.setRecipient(Message.RecipientType.TO,to);
message.setSubject(ttitle);
message.setSentDate(new Date());
//给消息对象设置内容
BodyPart mdp=new MimeBodyPart();//新建一个存放信件内容的BodyPart对象
mdp.setContent(tcontent,"text/html;charset=gb2312");//给BodyPart对象设置内容和格式/编码方式
Multipart mm=new MimeMultipart();//新建一个MimeMultipart对象用来存放BodyPart对
//象(事实上可以存放多个)
mm.addBodyPart(mdp);//将BodyPart加入到MimeMultipart对象中(可以加入多个BodyPart)
message.setContent(mm);//把mm作为消息对象的内容
message.saveChanges();
Transport transport=s.getTransport("smtp");
transport.connect("smtp."+tu,"115798090",qm); //这里的115798090也要修改为您的QQ号码
transport.sendMessage(message,message.getAllRecipients());
transport.close();
%>

 

大家把里面的rar文件解压有几个jar文件,把他们放到lib文件夹下,把这个jsp保存为a.jsp  把里面的QQ号码和QQ密码修改为自己的就可以发信了....

 

当然最好把那个接收邮箱也修改下,要不然都发给我了,我也吃不消!!!

 

---------------------------

鉴于部分用户下载后都提示不能正常发信,在这里和大家说下,这个需要您开通QQ邮箱的smtp功能,登陆您的QQ邮箱在设置里面打开smtp即可!不打开QQ邮箱是不允许你利用外部程序发信的!切记

 

修改于2014.12.11日

最新评论
  • 杨辉:
    感谢,复制回来稍微修改下就可以用了,而且连jar文件都准备好了,在次感谢
    评论时间:2013/5/20 22:30:9
  • 111:
    不能用。。
    管理员回复:报什么错??是不是你没有弄好哟...亲自测试可用的..
    评论时间:2014/6/4 19:29:24
  • 浩枴:
    好用,没什么改动换了qq号码和密码就可以了,我做了个网站会员验证系统,注册会员后发邮件里面有个地址验证的!!感谢楼主!
    评论时间:2014/6/20 11:10:28
  • 2229:
    javax.mail.AuthenticationFailedException,报错啊
    管理员回复:哦,忘记说了,需要打开QQ邮箱的smtp功能!
    评论时间:2014/6/27 21:25:53
  • 100240735:
    为什么有空指针呢
    管理员回复:具体什么错误呢,贴出来看看
    评论时间:2014/7/23 11:24:55
  • 陈强:
    不能用啊,报各种错误!
    管理员回复:具体报什么错误?把错误贴出来,我这里经过测试,没有问题呀!
    评论时间:2014/8/3 9:26:33
  • 错误如下:
    tomcat提示您给的源码44行有错误,好像在您这评论不能贴代码,我的QQ1490023046,您加我吧,我可以把具体错误给您看,谢谢了!
    管理员回复:亲,是不是您的邮箱没有开通smtp服务,百度下如何开通smtp服务!如果还是有问题,可以把错误发邮件给我,我的邮箱:zcdnsz@jspkongjian.net
    评论时间:2014/8/4 10:36:51
  • 陈强:
    真的能用,非常感谢楼主!!!QQ邮箱一定要开通SMTP服务,并且邮箱开通有一个月以上,百度一下就知道怎么开通了,再次感谢楼主。
    管理员回复:还要开通一个月的规定吗??您好这个我还真知道呢!!感谢您的提醒!!希望大家发扬共享的精神,把遇到的问题和怎么解决这个问题的办法都说下,以帮助曾经和你一样需要帮助的人!
    评论时间:2014/8/4 11:5:52
  • 陈强:
    评论框能检测代码,是代码就不能评论。这怎么做到的啊!
    管理员回复:后台接收数据后判断下就可以了...
    评论时间:2014/8/4 11:11:50
  • 颜某:
    太好用了,多谢大神,早就想做这功能了
    评论时间:2014/10/9 19:49:11
  • 杨某:
    管理员方便加QQ说下吗? 651385319 谢谢
    评论时间:2014/12/11 10:31:17
  • 杨某:
    楼主,为何我的报500错误?方便加QQ吗?651385319.谢谢
    管理员回复:您好,很抱歉,签于时间和精力上不允许我不能提供QQ回复,请见谅
    评论时间:2014/12/11 10:51:5
  • 500错误:
    我的也是500错误 请问怎么解决呢呢?
    管理员回复:我亲自安装了个tomcat,把文件和jar丢进去,马上就可以正常运行了,有时候500他是提示邮局没有开启smtp 虽然是500要看具体的报错的!!
    评论时间:2014/12/11 15:56:9
  • xiaoxiao:
    javax.mail.AuthenticationFailedException错误,不能用
    管理员回复:您好,我最近发现很多人都说不正常,我也比较郁闷,我在2015.04.11 特地在我们网站上申请了一个试用的空间,把我现在的这个程序放进去,只是修改了QQ号码和密码,测试是正常的!!您的不正常具体是什么错误铁出来我分析下看看!!是一直不正常还是正常一段时间后才不正常的,我记得我刚刚开始的QQ邮箱有发信频率和每天发信次数的限制,后来微博联系他们,他们给我做了调整才解除的!!!
    评论时间:2015/1/27 10:56:47
  • 有问题:
    org.apache.jasper.JasperException: Exception in JSP: /mail/mail.jsp:17 出现了这个问题·请问怎么破
    管理员回复:好像是没有连接上qq邮箱!请检查QQ邮箱是否打开smtp服务!
    评论时间:2015/8/31 12:47:34
  • donna:
    很好用
    评论时间:2016/1/7 16:21:34
  • tt:
    我的也是javax.mail.AuthenticationFailedException错误,但我的smtp服务已经打开了
    评论时间:2016/4/6 14:29:49
  • aaa:
    打开了stAMP服务,并且使用给的授权码,还是提示:“535 Error: 请使用授权码登录。详情请看:”
    管理员回复:您好这个是QQ邮箱推出的新功能,需要在QQ邮箱里面获取到授权码,.然后在程序里面使用授权码连接即可
    评论时间:2016/7/26 11:16:14
  • cl:
    javax.mail.AuthenticationFailedException。这个错误是为什么呀?
    评论时间:2016/9/21 10:34:9
  • 1111:
    我下载了 也不能用
    评论时间:2016/10/31 23:45:52
  • 404:
    可以用,QQ邮箱估计有限制,换163邮箱测试通过
    评论时间:2017/1/15 16:11:3
  • 556:
    有问题,500
    管理员回复:报500什么错误?贴出来看看
    评论时间:2017/6/12 22:43:30
  • 5656:
    授权码是对的 535 Error: 请使用授权码登录。 还是显示这个
    评论时间:2017/7/3 0:4:49
  • 2525:
    报500错误
    评论时间:2017/7/31 13:25:22
  • Mr.Li:
    楼主用的什么环境
    评论时间:2018/1/31 16:45:23
  • liang:
    亲测可用
    评论时间:2018/7/16 17:9:47
  • ss:
    没有报错但没有邮件发出
    管理员回复:现在腾讯改了,1:需要用SSL连接 2:需要打开邮件设置里面的好像是叫授权码 在我们代码里邮箱密码的地方改为授权码,这样就可以了,现在不能直接用邮箱密码发送邮件了
    评论时间:2019/4/10 17:10:2
  • 戴维斯:
    博主你好,邮件测试是可以发送,我想请教一下怎么在页面上加一个附件操作
    管理员回复:抱歉,这个好多年前写的文章了...附件我忘记怎么弄了,好久都没研究这个邮件代码了
    评论时间:2019/9/11 14:49:40
经营许可证ICP:皖B2-20100052 公司邮箱:zcdnsz@jspkongjian.net
Copyright © 2004-2015, 安徽好空间网络科技有限公司 版权所有 , 本站素材部分来源于网络,如有侵权请告知删除。