`

jsp实现发邮件

    博客分类:
  • HTML
阅读更多
要用jsp实现发邮件,其实就是利用java里面提供的javax.mail包,现在我写的这个是基于1.4版本的包,java1.5以上不支持,不知道为什么,而且在要在tomcat下面运行还必须自己放入两个包,mail.jar和activation.jar,后面提供两个包的下载,不多说了,上代码
<!--mailform.html-->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>mailform.html</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body>
<form name="form1" method="post" action="sendmail.jsp">
 <p align="center">填写邮件内容</p>
   <div align="center">
     <table width="75%" border="1">
       <tr> 
         <td><div align="center">收件人</div></td>
         <td><div align="center"> 
             <input name="to" type="text" id="to" size="30" maxlength="30">
           </div></td>
       </tr>
       <tr> 
         <td><div align="center">发件人</div></td>
         <td><div align="center"> 
             <input name="from" type="text" id="from" size="30" maxlength="30">
           </div></td>
       </tr>
       <tr> 
         <td><div align="center">抄送</div></td>
         <td><div align="center"> 
             <input name="cc" type="text" id="cc" size="30" maxlength="100">
           </div></td>
       </tr>
       <tr> 
         <td><div align="center">暗送</div></td>
         <td><div align="center"> 
             <input name="bcc" type="text" id="bcc" size="30" maxlength="100">
           </div></td>
       </tr>
       <tr> 
         <td><div align="center">主题</div></td>
         <td><div align="center"> 
             <input name="subject" type="text" id="subject" size="30" maxlength="30">
           </div></td>
       </tr>
       <tr> 
         <td colspan="2"><div align="center"> 
             <textarea name="body" cols="40" rows="10" id="body"></textarea>
           </div></td>
       </tr>
       <tr> 
         <td colspan="2"><div align="center"> 
             <input type="submit" name="Submit" value="发送">
             &nbsp;&nbsp;&nbsp;&nbsp; 
             <input name="Reset" type="submit" id="Reset" value="清空">
           </div></td>
       </tr>
     </table>
   </div>
   <p align="center">&nbsp;</p>
</form>
<p align="center">&nbsp;</p>
</body>
</html>

<!--sendmail.jsp-->
<%@page contentType="text/html;charset=gb2312"%>
<%@page errorPage="errpage.jsp"%>
<%@page import="java.util.*"%>
<%@page import="javax.mail.*"%>
<%@page import="javax.mail.internet.*"%>
<%@page import="javax.activation.*"%>
<html>
	<head>
		<title>sendmail.jsp</title>
		<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
	</head>
	<body>
		<%
			String to = request.getParameter("to");
			String from = request.getParameter("from");
			String subject = request.getParameter("subject");
			subject = new java.lang.String(subject.getBytes("iso-8859-1"));
			//以上方法等同于以下两句,原理相同
			//byte[] subjectTemp=request.getParameter("subject").getBytes("ISO8859_1");
			//String subject=new String(subjectTemp);
			byte[] messageTextTemp = request.getParameter("body").getBytes(
					"ISO8859_1");
			String messageText = new String(messageTextTemp);
			boolean sessionDebug = false;
			//验证所填写的邮件是否正确
			if ((to.trim().indexOf("@") == -1) || (to.trim().length() < 5)) {
		%>
		<jsp:forward page="err.jsp" />
		<%
			}
			if ((from.trim().indexOf("@") == -1) || (from.trim().length() < 5)) {
		%>
		<jsp:forward page="err.jsp" />
		<%
			}
			String host = "smtp.sina.com.cn";//这里放的是邮箱的主机
			String username = "邮箱的用户名";
			String password = "邮箱的秘密";

			// Get system properties 
			// Properties props = System.getProperties(); 很多例子中是这样的,其实下面这句更好,可以用在applet中 
			Properties props = new Properties();

			// Setup mail server 
			props.put("mail.smtp.host", host);
			props.put("mail.smtp.auth", "true"); //这样才能通过验证 

			// Get session 
			Session mailsession = Session.getDefaultInstance(props);

			// watch the mail commands go by to the mail server 
			mailsession.setDebug(sessionDebug);

			// Define message 
			MimeMessage message = new MimeMessage(mailsession);
			message.setFrom(new InternetAddress(from));
			message.addRecipient(Message.RecipientType.TO, new InternetAddress(
					to));
			message.setSubject(subject);
			message.setText(messageText);
			// Send message 
			message.saveChanges();
			Transport transport = mailsession.getTransport("smtp");
			transport.connect(host, username, password);
			transport.sendMessage(message, message.getAllRecipients());
			transport.close();
		%>
		<jsp:forward page="sendok.jsp" />
	</body>
</html>

<!--sendok.jsp-->
<%@ page contentType="text/html;charset=gb2312"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>sendok.jsp</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body>
<center>
<h4>发送成功! </h4>
<table cellspacing="2" cellpadding="2" border="1">
<tr>
<td> 收件人</td><td><%=request.getParameter("to")%></td>
</tr>
<tr>
<td>主题:</td><td><%byte[]
subjectTemp=request.getParameter("subject").getBytes("ISO8859_1");
String subject =new String(subjectTemp);
out.println(subject);
%>
</tr>
<tr>
<td colspan = "2" align=center><a href ="mailform.html" style="color:rgb(ff,0,0)">
继续发送</a>
</td>
</tr>
</table>
</center>
</body>
</html>

把这三个jsp用web服务器直接发布就可以了
7
0
分享到:
评论
2 楼 sxlkk 2013-07-29  
Dwade 写道
这个里面的 errorPage="errpage.jsp"呢???

就是一个错误界面,自己定义一下就行了
1 楼 Dwade 2013-06-18  
这个里面的 errorPage="errpage.jsp"呢???

相关推荐

    用jsp实现邮件群发

    以上就是使用JSP实现邮件群发的基本流程,结合SQL Server 2000数据库,可以高效地管理和发送大量邮件。在实际应用中,还需要考虑邮件发送的频率控制、邮件模板的管理、发送状态的跟踪等细节,以提升邮件群发的效率和...

    jsp实现的邮件发送

    本篇文章将详细讲解如何使用JSP实现邮件发送功能。 首先,我们需要了解SMTP(Simple Mail Transfer Protocol),它是互联网上用于传输电子邮件的标准协议。大多数邮件服务提供商都提供了SMTP服务器,比如Gmail、...

    jsp实现的Email邮件发送

    首先,要实现邮件发送,我们需要理解SMTP(Simple Mail Transfer Protocol)协议。SMTP是互联网上用于传输邮件的标准协议。发送邮件时,JSP页面会通过SMTP服务器来完成这一任务。 1. **JavaMail API**:这是Java...

    JSP+Servlet实现发送邮件

    通过分析和运行这些代码,可以更好地理解JSP、Servlet和SMTP如何协同工作以实现邮件发送和邮箱验证。 总的来说,JSP+Servlet实现发送邮件是一个典型的Web开发任务,它涵盖了客户端与服务器的交互、邮件服务的实现...

    JavaMail结合JSP实现中文邮件收发系统.rar

    JavaMail结合JSP实现中文邮件收发系统是一个典型的Web应用开发案例,主要涉及Java后端技术和JSP(JavaServer Pages)前端技术,用于构建能够处理中文字符的电子邮件发送与接收功能。这一系统的实现依赖于JavaMail ...

    jsp源码+邮件发送

    总结一下,这个"jsp源码+邮件发送"的主题涵盖了JSP开发中的一个重要实践:使用JavaMail API实现邮件服务。无论是HTML格式的富文本邮件,还是带有附件的复杂邮件,或者是简洁的文本邮件,都可以通过JSP和JavaMail API...

    基于JSP的电子邮件系统设计与实现

    【基于JSP的电子邮件系统设计与实现】 电子邮件系统是互联网上的关键服务,为企业提供便捷、安全的信息交流方式。本文探讨了一种基于JSP技术的电子邮件系统设计方案,旨在满足企业的个性化需求,提高信息传递的安全...

    JSP收发邮件基于JAVA的实现

    本项目“JSP收发邮件基于JAVA的实现”旨在利用JSP和Java技术构建一个功能完善的邮件系统,下面我们将深入探讨这个项目的各个知识点。 首先,JSP语言在用户交互方面起着关键作用。通过JSP,我们可以创建友好的用户...

    jsp实现邮件的发送

    在IT行业中,`jsp实现邮件的发送`是一个常见的任务,主要涉及到Java服务器页面(JSP)技术、JavaMail API以及网络通信。以下是基于这个主题的详细知识点解释: 1. **JSP(JavaServer Pages)**: JSP是Java平台上...

    JSP实现的smtp发邮件源代码

    在提供的压缩包文件“JSP实现的smtp发邮件源代码”中,应该包含了实现上述功能的完整JSP代码。通过分析和理解这个源代码,你可以学习到如何在实际项目中利用JSP和JavaMail API实现实时的邮件发送功能。

    Jmail结合JSP实现邮件的收发

    ### 关于Jmail结合JSP实现邮件的收发的关键知识点 #### 1. JavaMail (Jmail) 和 JSP 在邮件系统中的应用 - **JavaMail (Jmail)**:JavaMail API是由Sun Microsystems开发的一个Java API,用于发送、接收、读取和...

    aaa.rar_JSP邮件系统_java jsp 邮件_java邮件系统_jsp邮件_邮件 jsp

    "java jsp 邮件"表明这个系统是用Java和JSP技术实现的,用于处理电子邮件功能。"java邮件系统"和"jsp邮件"进一步强调了系统的编程语言特性,即使用Java进行服务器端处理,而JSP(Java Server Pages)则用于生成动态...

    JSP自动收发邮件

    本文将详细介绍如何在JSP应用中实现邮件的自动发送,并提供一个实用的代码示例。 #### 二、所需技术及工具 - **JSP**: Java Server Pages 是一种混合HTML与Java代码的技术,用于生成动态Web页面。 - **JavaMail API...

    基于 jsp 的邮件管理系统 及源码

    【基于JSP的邮件管理系统及源码】是一个用于构建邮件服务功能的应用程序,它利用JavaServer Pages(JSP)技术来实现用户界面和后端逻辑。JSP是一种服务器端脚本语言,允许开发者在HTML中嵌入Java代码,从而动态生成...

    jsp中实现发送邮件功能

    接下来,让我们深入了解如何在JSP中实现邮件发送的步骤: 1. **配置JavaMail Session**:创建一个`Properties`对象,设置SMTP服务器的相关属性,如主机名、端口号、用户名和密码。然后使用这些属性创建一个`Session...

    jsp邮箱系统,实现了收邮件和发送附件

    通过Session、Store、Folder、Message等核心类,可以实现邮件的读取、发送、删除等操作。 3. SMTP(Simple Mail Transfer Protocol): SMTP是用于发送邮件的标准协议。在本系统中,SMTP服务器配置用于发送邮件。...

Global site tag (gtag.js) - Google Analytics