仓酷云

标题: JAVA网站制作之JSP与JavaMail之3(试着写第一个程序) [打印本页]

作者: 因胸联盟    时间: 2015-1-18 11:25
标题: JAVA网站制作之JSP与JavaMail之3(试着写第一个程序)
专门做了这个例子;而java的这个例子好像就是为了教学而写的,很多教学目的的例子是不考虑优化、性能的。js|程序4.试着编写第一个发送程序

在后面我们已对JavaMail作了一些先容,上面我们可试着写本人的程序了.

起首,我们先写一个撰写邮件的html程序index.htm,以下:
-------------------------------------------------------------------------------------------
<html>
<head>
<metahttp-equiv="Content-Type"content="text/html;charset=gb2312">
<title>撰写邮件</title>
</head>

<body>
<formname="form1"method="post"action="testmail.jsp">
<tablewidth="75"border="0"align="center"cellspacing="1"bgcolor="#006600"class="black">
<trbgcolor="#FFFFFF">
<tdwidth="24%">收信人地点:</td>
<tdwidth="76%">
<inputname="to"type="text"id="to"></td>
</tr>
<trbgcolor="#FFFFFF">
<td>主题:</td>
<td>
<inputname="title"type="text"id="title"></td>
</tr>
<tr>
<tdheight="107"colspan="2"bgcolor="#FFFFFF">
<textareaname="content"cols="50"rows="5"id="content"></textarea></td>
</tr>
<tralign="center">
<tdcolspan="2"bgcolor="#FFFFFF">
<inputtype="submit"name="Submit"value="发送">
<inputtype="reset"name="Submit2"value="重置">
</td>
</tr>
</table>
</form>
</body>
</html>


接着,我们再写一个处置程序testmail.jsp,以下:
-----------------------------------------------------------------------------------------
<%@pagecontentType="text/html;charset=GB2312"%>
<%request.setCharacterEncoding("gb2312");%><!--中文处置代码-->

<!--引进要用到的类库-->
<%@pageimport="java.util.*,javax.mail.*"%>
<%@pageimport="javax.mail.internet.*"%>

<html>
<head>
<metahttp-equiv="Content-Type"content="text/html;charset=gb2312">
<title>发送乐成</title>
</head>

<body>
<%
try{

//从html表单中猎取邮件信息
Stringtto=request.getParameter("to");
Stringttitle=request.getParameter("title");
Stringtcontent=request.getParameter("content");

Propertiesprops=newProperties();//也可用Propertiesprops=System.getProperties();
props.put("mail.smtp.host","smtp.163.net");//存储发送邮件服务器的信息
props.put("mail.smtp.auth","true");//同时经由过程考证
Sessions=Session.getInstance(props);//依据属性新建一个邮件会话
s.setDebug(true);

MimeMessagemessage=newMimeMessage(s);//由邮件会话新建一个动静对象

//设置邮件
InternetAddressfrom=newInternetAddress("boy@163.net");
message.setFrom(from);//设置发件人
InternetAddressto=newInternetAddress(tto);
message.setRecipient(Message.RecipientType.TO,to);//设置收件人,并设置其吸收范例为TO
message.setSubject(ttitle);//设置主题
message.setText(tcontent);//设相信件内容
message.setSentDate(newDate());//设置发信工夫

//发送邮件
message.saveChanges();//存储邮件信息
Transporttransport=s.getTransport("smtp");
transport.connect("smtp.163.net","boy","iloveyou");//以smtp体例登录邮箱
transport.sendMessage(message,message.getAllRecipients());//发送邮件,个中第二个参数是一切
//已设好的收件人地点
transport.close();

%>
<divalign="center">
<p><fontcolor="#FF6600">发送乐成!</font></p>
<p><ahref="recmail.jsp">往看看我的信箱</a><br>
<br>
<ahref="index.htm">再发一封</a></p>
</div>
<%
}catch(MessagingExceptione){
out.println(e.toString());
}
%>
</body>
</html>

**********************************注重***************************************

有很多多少书上和网上的文章在关头部分都是如许写testmail.jsp的,以下:

Stringtto=request.getParameter("to");
Stringttitle=request.getParameter("title");
Stringtcontent=request.getParameter("content");
Propertiesprops=newProperties();
props.put("mail.smtp.host","smtp.163.net");
Sessions=Session.getInstance(props);
MimeMessagemessage=newMimeMessage(s);

InternetAddressfrom=newInternetAddress("boy@163.net");
message.setFrom(from);
InternetAddressto=newInternetAddress(tto);
message.setRecipient(Message.RecipientType.TO,to);

message.setSubject(ttitle);
message.setText(tcontent);
message.setSentDate(newDate());

Storestore=s.getStore("pop3");
store.connect("pop.163.net","boy","iloveyou");//以pop3的体例登录邮箱
Transporttransport=s.getTransport("smtp");
transport.send(message);
store.close();

现实上,这类体例其实不牢靠,由于良多电子邮局的smtp服务器请求我们经由过程考证,以是用这类体例发邮件时,只能发给同类邮箱(即不异smtp的邮箱),乃至偶然同类邮箱也发不进来.以上两种体例我试过良多次,了局证实第一种体例是最牢靠的.


好了,我信任你应当会写最复杂的Email发送程序了.OK,下一次我们将说说如何写发送HTML格局的邮件.
java主要分三块,j2se:java的基础核心语言。j2me:java的微型模块,专门针对内存小,没有持续电源等小型设备。j2ee:java的企业模块,专门针对企业数据库服务器的连接维护。
作者: 精灵巫婆    时间: 2015-1-21 06:02
是一种使用者不需花费很多时间学习的语言
作者: 小妖女    时间: 2015-1-24 12:40
当然你也可以参加一些开源项目,一方面可以提高自己,另一方面也是为中国软件事业做贡献嘛!开发者在互联网上用CVS合作开发,用QQ,MSN,E-mail讨论联系,天南海北的程序员分散在各地却同时开发同一个软件,是不是很有意思呢?
作者: 再现理想    时间: 2015-1-25 14:58
Sun公司看见Oak在互联网上应用的前景,于是改造了Oak,于1995年5月以Java的名称正式发布。Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。
作者: 若天明    时间: 2015-2-2 22:32
另外编写和运行Java程序需要JDK(包括JRE),在sun的官方网站上有下载,thinking in java第三版用的JDK版本是1.4,现在流行的版本1.5(sun称作J2SE 5.0,汗),不过听说Bruce的TIJ第四版国外已经出来了,是专门为J2SE 5.0而写的。
作者: 小女巫    时间: 2015-2-5 10:09
是一种使网页(Web Page)由静态(Static)转变为动态(Dynamic)的语言
作者: 小魔女    时间: 2015-2-11 05:30
你快去找一份Java的编程工作来做吧(如果是在校学生可以去做兼职啊),在实践中提高自己,那才是最快的。不过你得祈祷在公司里碰到一个高手,而且他 还愿意不厌其烦地教你,这样好象有点难哦!还有一个办法就是读开放源码的程序了。我们知道开放源码大都出自高手,他们设计合理,考虑周到,再加上有广大的程序员参与,代码的价值自然是字字珠叽,铿锵有力(对不起,偶最近《金装四大才子》看多了)。
作者: 海妖    时间: 2015-2-11 08:20
让你能够真正掌握接口或抽象类的应用,从而在原来的Java语言基础上跃进一步,更重要的是,设计模式反复向你强调一个宗旨:要让你的程序尽可能的可重用。
作者: 谁可相欹    时间: 2015-2-12 08:46
当然你也可以参加一些开源项目,一方面可以提高自己,另一方面也是为中国软件事业做贡献嘛!开发者在互联网上用CVS合作开发,用QQ,MSN,E-mail讨论联系,天南海北的程序员分散在各地却同时开发同一个软件,是不是很有意思呢?
作者: 简单生活    时间: 2015-2-20 00:44
是一种使网页(Web Page)由静态(Static)转变为动态(Dynamic)的语言
作者: 山那边是海    时间: 2015-2-21 07:37
其实说这种话的人就如当年小日本号称“三个月拿下中国”一样大言不惭。不是Tomjava泼你冷水,你现在只是学到了Java的骨架,却还没有学到Java的精髓。接下来你得研究设计模式了。
作者: 冷月葬花魂    时间: 2015-3-6 19:58
Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台
作者: 活着的死人    时间: 2015-3-13 07:09
[url]http://www.jdon.com/[/url]去下载,或到同济技术论坛的服务器[url]ftp://nro.shtdu.edu.cn[/url]去下,安装上有什么问题,可以到论坛上去提问。
作者: 因胸联盟    时间: 2015-3-13 07:09
是一种为 Internet发展的计算机语言
作者: 愤怒的大鸟    时间: 2015-3-20 16:14
其实说这种话的人就如当年小日本号称“三个月拿下中国”一样大言不惭。不是Tomjava泼你冷水,你现在只是学到了Java的骨架,却还没有学到Java的精髓。接下来你得研究设计模式了。




欢迎光临 仓酷云 (http://ckuyun.com/) Powered by Discuz! X3.2