- 浏览: 289897 次
- 性别:
- 来自: 成都
文章分类
最新评论
-
tacyuuhon:
这个代码就有问题。当前的 int activeSessions ...
HttpSessionListener统计在线人数 -
yangleilt:
唉。。能通俗的说一下不?你说的这些百科上到处都是的!
LDAP是什么? -
hezhou_0521:
你显示正确了吗?
HttpSessionListener统计在线人数 -
sevk:
我喜欢用vim或gvim,比Ultra Edit 顺手
让Ultra Edit和Keil结合的更紧密
一:条件 必须下载sun公司的JavaMail API包,地址为:http://java.sun.com/products/javamail/
我这里用的是1.2版本,将相关包(jar文件)加到CLASSPATH中
二:该程序非常简单,不需要我们考虑很多地层的东西,因为API都帮我们做好了这些事情,下面是一个简单的发邮件的Servlet:(对于熟悉的人来说,恐怕是再简单不过了的一个servlet)
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import sun.net.smtp.*;
public class SendMailServlet extends HttpServlet {
public static String MAIL_FROM = "from";
public static String MAIL_TO = "to";
public static String MAIL_SUBJECT = "subject";
public static String MAIL_BODY = "body";
public static String MAIL_HOST = "mailhost";
public void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException
{
resp.setContentType("text/html; charset=gb2312");
PrintWriter out = resp.getWriter();
out.println("<form method=POST action=\"" + req.getRequestURI() + "\">");
out.println("<table>");
out.println("<tr><td>send mail server:</td>");
out.println("<td><input type=text name=" + MAIL_HOST + " size=30></td></tr>");
out.println("<tr><td>from:</td>");
out.println("<td><input type=text name=" + MAIL_FROM + " size=30></td></tr>");
out.println("<tr><td>to:</td>");
out.println("<td><input type=text name=" + MAIL_TO + " size=30></td></tr>");
out.println("<tr><td>subject:</td>");
out.println("<td><input type=text name=" + MAIL_SUBJECT + " size=30></td></tr>");
out.println("<tr><td>text:</td>");
out.println("<td><textarea name=" + MAIL_BODY + " cols=40 rows=10></textarea></td></tr>");
out.println("</table><br>");
out.println("<input type=submit value=\"Send\">");
out.println("<input type=reset value=\"Reset\">");
out.println("</form>");
out.flush();
}
public void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException,IOException
{
resp.setContentType("text/html; charset=gb2312");
PrintWriter out = new PrintWriter(resp.getOutputStream());
String from = req.getParameter(MAIL_FROM);
String to = req.getParameter(MAIL_TO);
String subject = req.getParameter(MAIL_SUBJECT);
String body = req.getParameter(MAIL_BODY);
String mailhost = req.getParameter(MAIL_HOST);
try
{
SmtpClient mailer = new SmtpClient(mailhost);
mailer.from(from);
mailer.to(to);
PrintStream ps = mailer.startMessage();
ps.println("From: " + from);
ps.println("To: " + to);
ps.println("Subject: " + subject);
ps.println(body);
mailer.closeServer();
out.println("Success!");
}
catch (Exception ex)
{
out.println("An error about:" + ex.getMessage());
}
out.flush();
}
public void init(ServletConfig cfg) throws ServletException
{
super.init(cfg);
}
public void destroy()
{
super.destroy();
}
}
我这里用的是1.2版本,将相关包(jar文件)加到CLASSPATH中
二:该程序非常简单,不需要我们考虑很多地层的东西,因为API都帮我们做好了这些事情,下面是一个简单的发邮件的Servlet:(对于熟悉的人来说,恐怕是再简单不过了的一个servlet)
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import sun.net.smtp.*;
public class SendMailServlet extends HttpServlet {
public static String MAIL_FROM = "from";
public static String MAIL_TO = "to";
public static String MAIL_SUBJECT = "subject";
public static String MAIL_BODY = "body";
public static String MAIL_HOST = "mailhost";
public void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException
{
resp.setContentType("text/html; charset=gb2312");
PrintWriter out = resp.getWriter();
out.println("<form method=POST action=\"" + req.getRequestURI() + "\">");
out.println("<table>");
out.println("<tr><td>send mail server:</td>");
out.println("<td><input type=text name=" + MAIL_HOST + " size=30></td></tr>");
out.println("<tr><td>from:</td>");
out.println("<td><input type=text name=" + MAIL_FROM + " size=30></td></tr>");
out.println("<tr><td>to:</td>");
out.println("<td><input type=text name=" + MAIL_TO + " size=30></td></tr>");
out.println("<tr><td>subject:</td>");
out.println("<td><input type=text name=" + MAIL_SUBJECT + " size=30></td></tr>");
out.println("<tr><td>text:</td>");
out.println("<td><textarea name=" + MAIL_BODY + " cols=40 rows=10></textarea></td></tr>");
out.println("</table><br>");
out.println("<input type=submit value=\"Send\">");
out.println("<input type=reset value=\"Reset\">");
out.println("</form>");
out.flush();
}
public void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException,IOException
{
resp.setContentType("text/html; charset=gb2312");
PrintWriter out = new PrintWriter(resp.getOutputStream());
String from = req.getParameter(MAIL_FROM);
String to = req.getParameter(MAIL_TO);
String subject = req.getParameter(MAIL_SUBJECT);
String body = req.getParameter(MAIL_BODY);
String mailhost = req.getParameter(MAIL_HOST);
try
{
SmtpClient mailer = new SmtpClient(mailhost);
mailer.from(from);
mailer.to(to);
PrintStream ps = mailer.startMessage();
ps.println("From: " + from);
ps.println("To: " + to);
ps.println("Subject: " + subject);
ps.println(body);
mailer.closeServer();
out.println("Success!");
}
catch (Exception ex)
{
out.println("An error about:" + ex.getMessage());
}
out.flush();
}
public void init(ServletConfig cfg) throws ServletException
{
super.init(cfg);
}
public void destroy()
{
super.destroy();
}
}
发表评论
-
JSP教程(一)
2004-06-25 10:32 744JSP概述 JSP(IAVA SE ... -
JSP教程(二)
2004-06-25 10:34 655JSP directive mso-hansi-font-fa ... -
JSP教程(四)-JSP Actions的使用
2004-06-25 10:35 597JSP actions 使用您可以动态的插入一个文件,重用Ja ... -
JSP教程(三)--JSP中”预定义变量”的使用
2004-06-25 10:35 674为了简化JSP表达式和scriptlets中的代码,提供了8种 ... -
JSP教程(五)-JSP Actions的使用下
2004-06-25 10:36 587jsp:useBean Action 的使用 ... -
JSP教程(六)-怎么在JSP中跳转到别一页面
2004-06-25 10:37 586在JSP中使用jsp forward Action来实现页面的 ... -
JSP教程(七)-pluginAction的使用
2004-06-25 10:38 648jsp:plugin Action 使您能插 ... -
JAVA/JSP学习系列之一(JDK安装)
2004-06-27 13:39 551一、前言 JDK(Java Development Ki ... -
JAVA/JSP学习系列之二(Tomcat安装)
2004-06-27 13:40 597一、前言 对于初 ... -
JAVA/JSP学习系列之三(Resin+Apache的安装)
2004-06-27 13:41 580一、前言 对于初学者来说,要执行JSP和Servlet,T ... -
JAVA/JSP学习系列之五(JDBC-ODBC翻页例子)
2004-06-27 13:42 641一、运行前准备 建议了一个MS SQLServer7数据 ... -
JAVA/JSP学习系列之四(Orion App Server的安装)
2004-06-27 13:42 697一、前言 Orion这个东西,小巧,但是功能却非常多,废 ... -
JAVA/JSP学习系列之六(MySQL翻页例子)
2004-06-27 13:43 615一、运行前准备 下载了mysql的jdbc驱动(一个ja ... -
JAVA/JSP学习系列之七(Orion下自定义Tag)
2004-06-27 13:44 582一、前言 (本文译自Orion官方站点) 本文将一步一步 ... -
JAVA/JSP学习系列之八(改写MySQL翻页例子)
2004-06-27 13:48 629一、前言 其实,改写后的JDBC Data-Sourc ... -
JAVA/JSP学习系列之九(理解构造器)
2004-06-27 13:49 585解构造器 构造器和方法 ... -
JAVA/JSP学习系列之十一(简单的“抓网页”代码)
2004-06-27 13:51 702一、前言 从一个网站上,看到一个“抓网页”的代码,觉得有点 ... -
JAVA/JSP学习系列之十二(JSP生成jpeg图片用于投票)
2004-06-27 13:52 660一、前言 本文原作者为Tony Wang ,该文章涉及到 ... -
JAVA/JSP学习系列之十三(Applet调用JavaScript函数)(译)
2004-06-27 13:53 715下面的例子将说明在applet中去调用javascript函数 ... -
JAVA/JSP学习系列之十四(JavaScript改变Applet状态)(译)
2004-06-27 13:54 574下面的例子将说明利用javascript去改变applet状态 ...
相关推荐
直到最近的一个项目,需要JavaMail所以我打算认真的学习一下这种技术,因为我目前擅长的是Struts,而Struts又不具备邮件发送的功能,所以我要深刻的学习一下JavaMailAPI.所以在我学会了JavaMail的基本操作的同时也将这篇...
1 JAVA SE ...3.5 JavaMail(JAVA邮件服务)API详解 3.6 jxl.jar 包简介 3.7 Java与XML联合编程之SAX篇 3.8 Java与XML联合编程之DOM篇 4 其他 4.1 代码复用的规则 4.2 Java IO 包中的Decorator模式
用 Servlet 发送一封电子邮件是很简单的,但首先您必须在您的计算机上安装 JavaMail API 和 Java Activation Framework)JAF) 。 您可以从 Java 网站下载最新版本的 JavaMail mail.jar 1.4.5 您可以从 ...
3.5 JavaMail(JAVA邮件服务)API详解 145 3.6 jxl.jar 包简介 150 3.7 Java与XML联合编程之SAX篇 154 3.8 Java与XML联合编程之DOM篇 159 4 其他 165 4.1 代码复用的规则 165 4.2 Java IO 包中的Decorator模式 168
用jsp和servlet实现邮件发送。其中用到了mail.jar,commens-email.jar和activation.jar等jar包。commons-email是apache提供的一个开源的API,是对javamail的封装,因此在使用时要将javamail.jar加到 class path中,...
第1章 Java EE的基本知识 1 1.1 Java EE的出现及其特点 1 1.2 Java EE的分层模型和平台组成 4 1.2.1 Java EE的分层模型 4 1.2.2 Java EE的结构变形 5 1.2.3 Java EE平台的组成 7 1.3 Java EE参与人员的...
着重介绍如何使用sun.net 包JavaMail API 开发访问各种网络服务的JSP 程序本作品四个部分之间互为 关联又相对独立读者可以选择阅读某一个部分或者是通读全文 本版作品是由经验丰富的使用JSP 组建网站的程序员编著内...
☆ Java Servlet ☆ JavaServer Pages ☆ Java Message Service (JMS,Java消息服务) ☆ Java Naming and Directory Interface (JNDI,Java名字与目录接口) ☆ XML ☆ J2EE Connector Architecture...
javax.faces.webapp Classes required for integration of JavaServer Faces into web applications, including a standard servlet, base classes for JSP custom component tags, and concrete tag ...
Java Servlet 2.3 & JavaServer Pages (JSP) 1.2 Java Transaction API (JTA) 1.0.1b Java API for XML Processing (JAXP) 1.1 Java Authentication & Authorization Service (JAAS) 1.0 CORBA Integration ...
16.3.1 使用JSP页面和JavaMail发送电子邮件 16.3.2 使用有SendMailBean的JSP页面 16.3.3 部署 16.4 使用JavaMail API接收电子邮件 16.5 小结 第4部分 数据库、JDBC和XML 第17章 XML文档对象模型和JDBC ...
1.2.1 JSP、Servlet和JavaBean及 替代技术 14 1.2.2 JSF及替代技术 15 1.2.3 EJB组件技术简介 15 1.3 JBoss的下载和安装 15 1.3.1 下载和安装JBoss服务器 16 1.3.2 配置JBoss的服务端口 18 1.3.3 进入控制台 19 ...
16.3.1 使用JSP页面和JavaMail发送电子邮件 16.3.2 使用有SendMailBean的JSP页面 16.3.3 部署 16.4 使用JavaMail API接收电子邮件 16.5 小结 第4部分 数据库、JDBC和XML 第17章 XML文档对象模型和JDBC ...
16.3.1 使用JSP页面和JavaMail发送电子邮件 16.3.2 使用有SendMailBean的JSP页面 16.3.3 部署 16.4 使用JavaMail API接收电子邮件 16.5 小结 第4部分 数据库、JDBC和XML 第17章 XML文档对象模型和JDBC ...
16.3.1 使用JSP页面和JavaMail发送电子邮件 16.3.2 使用有SendMailBean的JSP页面 16.3.3 部署 16.4 使用JavaMail API接收电子邮件 16.5 小结 第4部分 数据库、JDBC和XML 第17章 XML文档对象模型和JDBC ...
Restlet项目受到Servlet API、JSP(Java Server Pages)、HttpURLConnection及Struts等Web开发技术的影响。该项目的主要目标是:在提供同等功能的同时,尽量遵守Roy Fielding博士论文中所阐述的REST的目标。它的另一...
2) 利用JavaMail API发送邮件的过程中,()能获取正确的session对象。 a) Session mailsession=Session.getInstance(); b) Session mailsession=Session.getInstance(objProperties); c) Session mailsession...
Restlet项目受到Servlet API、JSP(Java Server Pages)、HttpURLConnection及Struts等Web开发技术的影响。该项目的主要目标是:在提供同等功能的同时,尽量遵守Roy Fielding博士论文中所阐述的REST的目标。它的另一...
详细介绍了J2EE体系架构、Web服务、J2EE组件,用Javaservlet、JSP和EJB创建J2EE应用中添加SOAP,实现JavaMail API和Java消息服务JMS,利用Java提供安全特性,访问统一描述、发现和集成协议(UDDI)数据库和JAXR,实现Web...
servlet-api-3.0.jar servlet-api.jar servlet.jar shiro-cas-1.2.2.jar shiro-core-1.2.2.jar shiro-spring-1.2.2.jar shiro-web-1.2.2.jar sitemesh-2.4.2.jar slf4j-api-1.3.1.jar slf4j-api-1.6.0.jar slf4j-api...