网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > Java
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.百分之百纯 Java(TM) java名词 解.
.循速渐进学用Session Bean(三).
.确保J2ME无线移动商业应用程序的.
.如何在 Java 中如何定义一个常量.
.官方推广活动:SCJP 认证惊喜优惠.
.Servlet 技术.
.Eclipse快速上手指南(1).
.Java RMI-IIOP 入门.
.Java初学者如何迈出AOP第一步.
.Java环境 使用Resin在NT环境下配.
.Struts源代码阅读(Commons-Vali.
.Java的多线程-线程间的通信(1).
.java正则表达式; regular expres.
.影响性能的测试报告(数据库版).
.J2EE项目登录方式的改进设计与实.
.Java程序编码规范与技巧.
.创建通过 WDO访问数据的 JSF 应用.
.WhatisAspectJ.
.localeCompare 方法.
.Java App表达式语言MVEL 2.0 最终.

怎样在APPLET中发EMAIL javamail

发表日期:2008-1-5


怎样在APPLET中发EMAIL

天津大学电子系 范仲方

  为 了 得 到 反 馈, 我 们 在 设 计 主 页 时 经 常 将 自 己 的email 地 址 嵌 在 主 页 上 以 便 读 者 与 我 们 联 系。 其 中 最 普 遍 的 作 法 是 利 用Html 语 言 加 上:

  Feedback to Author! 这 样 作 的 缺 点 是 无 论 读 者 使 用 的 是Internet EXPlorer 还 是Netscape Navigator, 在 点 击 作 者 地 址 时 都 需 另 打 开 一 个 写 作 窗 口, 使 主 页 窗 口 被 覆 盖。 这 样 读 者 在 写 信 时 看 不 到 原 文 的 内 容 也 不 易 进 行 引 用。 笔 者 设 计 了 一 个Java APPLET 可 嵌 在 主 页 上, 解 决 了 这 个 问 题, 同 时 使 没 有email 地 址 的 人 也 可 反 馈 信 息。 源 程 序 如 下:

import java.awt.*;

import java.applet.*;

import java.net.*;

import java.io.*;

public class Javamail extends Applet {

private int SMTP_PORT = 25;

//邮件服务器缺省端口号

private String appletSource = "202.99.96.140";   

//作者邮件服务器IP

private TextArea MsgArea;

private TextField senderField, recipientField, hostField;

public void init() {

setLayout(new BorderLayout());

Panel fields = new Panel();

fields.setLayout(new GridLayout(3, 1));

Panel recPanel = new Panel();

recPanel.setLayout(new GridLayout(2, 1));

recPanel.add(new Label("Recipient"));

recipientField = new TextField("zffan");

// 作 者 邮 件 服 务 器 用 户 名

recPanel.add(recipientField);

fields.add(recPanel);

Panel sendPanel = new Panel();

sendPanel.setLayout(new GridLayout(2, 1));

sendPanel.add(new Label("Sender"));

senderField = new TextField("Your Name");   

// 由 读 者 填 其 用 户 名

sendPanel.add(senderField);

fields.add(sendPanel);

Panel hostPanel = new Panel();

hostPanel.setLayout(new GridLayout(2, 1));

hostPanel.add(new Label("Host"));

hostField = new TextField("YourCompany.com");

// 由 读 者 填 其 邮 件 服 务 器IP

hostPanel.add(hostField);

fields.add(hostPanel);

add("North", fields);

MsgArea = new TextArea();

add("Center", MsgArea);

add("South", new Button("SEND"));

}

public boolean handleEvent(Event e) {

if (e.id == Event.WINDOW_DESTROY)

System.exit(0);

return super.handleEvent(e);

}

public boolean action(Event e, Object arg) {

if (arg.equals("SEND"))

sendMsg(senderField.getText(),

recipientField.getText(), hostField.getText());

else

return super.action(e, arg);

return true;

}

private void sendMsg(String sender, String recipient, String senderHost) {

try {    // 与 邮 件 服 务 器 通 信

Socket s = new Socket(appletSource, SMTP_PORT);

PrintStream out = new PrintStream(s.getOutputStream());

MsgArea.selectAll();

out.println("HELO " + senderHost);

//邮件服务器不认证读者所输SMTP是否正确

out.println("MAIL FROM: " + sender);

out.println("RCPT TO: " + recipient);

out.println("DATA");

out.println(MsgArea.getSelectedText());

out.println(".");

out.println("QUIT");

}

catch(Exception e) { System.out.println("Error " + e); }

}

} //Javamail

  以 上 程 序 在Win95, JDK1.1.2, Hotjava Browser 1.0 环 境 下 调 试 通 过。 有 兴 趣 的 读 者 还 可 加 上 与SMTP 服 务 器 通 信 时 的 出 错 例 程。


上一篇:怎样拿下SUN公司的SCJP认证? 人气:590
下一篇:怎样用servletrunner来运行Servlet 人气:715
浏览全部Java的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐