`

JavaMail jsp发送邮件 html格式

阅读更多
JavaMail发送邮件

两个基本的jar:
附件1、mail.jar
附件2、activation.jar
附件3、读取jsp或html的类


分为两种
一、发送html格式的文件
两个页面JavaMail.jsp welcome.jsp,一个GetSource.java文件
把welcome.jsp的源码加载成一个StringBuffer对象,然后作为内容发送过去
1、读取要发送的html代码,GetSource.java
2、配置发件人的服务器地址、邮箱名、密码,在JavaMail.jsp中

页面如下:
JavaMail发送邮件

两个基本的jar:
附件1、mail.jar
附件2、activation.jar
附件3、读取jsp或html的类


分为两种
一、发送html格式的文件
两个页面JavaMail.jsp welcome.jsp,一个GetSource.java文件
把welcome.jsp的源码加载成一个StringBuffer对象,然后作为内容发送过去
1、读取要发送的html代码,GetSource.java
2、配置发件人的服务器地址、邮箱名、密码,在JavaMail.jsp中

JavaMail.jsp页面如下:

<%@ page import="javax.mail.*"%>
<%@ page import="javax.activation.*"%>
<%@ page import="javax.mail.internet.*"%>
<%@ page import="java.util.*,java.io.*"%>

<%@ page contentType="text/html;charset=utf8"%>

<%@page import="java.net.URL"%>
<%@page import="org.apache.commons.httpclient.methods.GetMethod"%>
<%@page import="org.apache.commons.httpclient.HttpClient"%>
<%@page import="vdo.ws.GetSource"%>


<html>
     <head>
           <title>CH17 - JavaMail2.jsp</title>
     </head>
     <body>

           <h2>
                 利用JavaMail来发送电子邮件 - HTML格式
           </h2>
           <%
           
                 InternetAddress[] address = null;
                 //request.setCharacterEncoding("utf8");
                 String mailserver = "smtp.moochi.com";//发出邮箱的服务器
                 String From = "moochi@moochi.com";//发出的邮箱
                 String to = "zhang-xinjie@163.com";//发到的邮箱
                 String Subject = "嗨,亲爱的 ";//标题
                 String type = "text/html";//发送邮件格式为html
                 String messageText = new GetSource().getSource("http://www.kkkkk.com");//写入你要发送的页面连接,将此页面读为String
                 //messageText = URLEncoder.encode(messageText,"utf8");
                 
                 boolean sessionDebug = false;

                 try {

                       // 设定所要用的Mail 服务器和所使用的传输协议 
                       java.util.Properties props = System.getProperties();
                       props.put("mail.host", mailserver);
                       props.put("mail.transport.protocol", "smtp");
                       props.put("mail.smtp.auth", "true");//指定是否需要SMTP验证 

                       // 产生新的Session 服务 
                       javax.mail.Session mailSession = javax.mail.Session.getDefaultInstance(props, null);
                       mailSession.setDebug(sessionDebug);
                       Message msg = new MimeMessage(mailSession);

                       // 设定发邮件的人 
                       msg.setFrom(new InternetAddress(From));

                       // 设定收信人的信箱 
                       address = InternetAddress.parse(to, false);
                       msg.setRecipients(Message.RecipientType.TO, address);

                       // 设定信中的主题 
                       msg.setSubject(Subject);

                       // 设定送信的时间 
                       msg.setSentDate(new Date());

                       Multipart mp = new MimeMultipart();
                       MimeBodyPart mbp = new MimeBodyPart();

                       // 设定邮件内容的类型为 text/plain 或 text/html 
                       mbp.setContent(messageText, type + ";charset=utf8");
                       mp.addBodyPart(mbp);
                       msg.setContent(mp);

                       Transport transport = mailSession.getTransport("smtp");
                       ////请填入你的邮箱用户名和密码,千万别用我的^_^ 
                       transport.connect(mailserver, "moochi", "moochi123");//设发出邮箱的用户名、密码
                       transport.sendMessage(msg, msg.getAllRecipients());
                       transport.close();
                       //Transport.send(msg); 
                       out.println("邮件已顺利发送");

                 } catch (MessagingException mex) {
                       mex.printStackTrace();
                       out.println(mex);
                 }
                 try{
                          response.sendRedirect("../indexSelf.jsp");//转向某页
                       }catch (Exception e){
                             e.printStackTrace();
                 }
           %>

     </body>
</html> 





GetSource.java

package vdo.ws;

import java.io.BufferedInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.Reader;
import java.net.URLEncoder;

import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.HttpException;
import org.apache.commons.httpclient.HttpMethod;
import org.apache.commons.httpclient.methods.GetMethod;

public class GetSource {

	/**
	 * @param args
	 */
	public HttpClient client = new HttpClient();

	public String getSource(String url) {

		GetMethod method = new GetMethod(url);

		try {
			client.executeMethod(method);
			
		} catch (HttpException e) {
			
			//e.printStackTrace();

		} catch (IOException e) {

			//e.printStackTrace();

		}
		InputStream in = null;
		try {
			in = method.getResponseBodyAsStream();
		} catch (IOException e1) {
			
			//e1.printStackTrace();
		}
		in = new BufferedInputStream(in);
		Reader r = new InputStreamReader(in);
		int c;
		StringBuffer buffer = new StringBuffer();

		try {
			while ((c = r.read()) != -1)
				buffer.append((char)c);
		} catch (IOException e) {
			
			//e.printStackTrace();
		}
		try {
			in.close();
		} catch (IOException e) {
			
			//e.printStackTrace();
		}
		method.releaseConnection();

		return buffer.toString();
	}

}
分享到:
评论
1 楼 黑白配 2013-11-23  
为什么没有看见三个附件呢?

相关推荐

    JavaMail jsp发送邮件

    利用JavaMail来发送电子邮件 - HTML格式 InternetAddress[] address = null; //request.setCharacterEncoding("utf8"); String mailserver = "smtp.163.com";//发出邮箱的服务器 String From = request....

    javamail发送html邮件

    JSP与JavaMail发送HTML格式... java,javamail发送html邮件..

    jsp邮件发送

    用jsp和servlet实现邮件发送。其中用到了mail.jar,commens-email.jar和activation.jar等jar包。commons-email是apache提供的一个开源的API,是对javamail的封装,因此在使用时要将javamail.jar加到 class path中,...

    LI_jsp.rar_Links

    个人博客资源下载,说明: 1,使用前,请先打开db.java修改其中的数据库信息,然后用你的...5,为了防止恶意利用邮件发送程序,请将javamail.jsp文件名更改,然后打开class.jsp,查找"javamail.jsp"并替换您更改的名字。

    jsp网络编程从基础到实践

    《JSP网络编程从基础到实践》光盘说明 光盘的实例代码目录中包含了前10章的所有实例的源代码,实例名称及其所处... 实例67 发送文本格式的邮件 实例68 发送 HTML邮件 实例69 发送带有附件的邮件 实例70 接收EMAIL

    JSP网络编程从基础到实践的实例代码

    JSP网络编程从基础到实践的实例代码 《JSP网络编程从基础到实践》光盘说明 光盘的实例代码目录中包含了前10章的... 实例67 发送文本格式的邮件 实例68 发送 HTML邮件 实例69 发送带有附件的邮件 实例70 接收EMAIL

    JSP网络编程从基础到实践

    实例63 用servlet获取表单数据 实例64 用servlet读写文件数据 实例65 用servlet访问数据库 实例66 一个简单的struts应用实例——用户登录 JSP中的JavaMail开发 实例67 发送文本格式的邮件 ...

    JSP网络编程从基础到实践 实例代码

    《JSP网络编程从基础到实践》光盘说明 光盘的实例代码目录中包含了前10章的所有实例的源代码,实例名称及其所处... 实例67 发送文本格式的邮件 实例68 发送 HTML邮件 实例69 发送带有附件的邮件 实例70 接收EMAIL

    简单实用博客

    ) &lt;br&gt;5,为了防止恶意利用邮件发送程序,请将javamail.jsp文件名更改,然后打开class.jsp,查找"javamail.jsp"并替换您更改的名字。 &lt;br&gt;6, 若需要皮肤,可以进http://www.kanglog.com下载。 &lt;br&gt;7,使用请...

    韩顺平sevlet,jsp视频教程知识点.txt

    发送电子邮件(javamail)到用户的信箱 5.购物流程设计(mvc[界面、控制器、模型]) (二)待完成的功能 1.后台商品管理 2.后台用户管理 3.用户注册功能 4.网站公告管理 5.网站最受用户欢迎的书籍(动态) 韩顺平 j2ee...

    MeyboMail Web(Java)开源简化-meybomailweb2.zip

    6. 已发送:可以查看已发送邮件的记录和状态。 7. 账户设置:可以设置账户的个人信息、修改密码、使用的邮件协议和服务器等。 该web邮件系统分为前端和后端两个部分: 前端:采用JSP+JavaScript+CSS等WEB技术实现,负责与...

    JavaMail的所有内容

    window.location.href='SendMails.jsp';&lt;/script&gt;"); } String to="1531671930@qq.com"; //绑定资源文件 ResourceBundle messages=ResourceBundle.getBundle("com.firm.MyMail/Mail"); String mailServer...

    邮件发送简单例子-jsp文件

    JSP JavaMail Example &lt;/title&gt;&lt;/head&gt;&lt;body&gt;&lt;&#37;@ page import=java.util.* %&gt;&lt;&#37;@ page import=javax.mail.* %&gt;&lt;&#37;@ page import=javax.mail.internet.* %&gt;&lt;&#37;@ page ...

    邮件发送简单例子-html文件

    JavaMail Form&lt;/title&gt;&lt;/head&gt;&lt;body&gt;&lt;form action=/purejsp/MailExample.jsp method=post&gt;&lt;table cellspacing=2 cellpadding=2 border=1&gt;&lt;tr&gt;&lt;td&gt;To:&lt;/td&gt;&lt;td&gt;&lt;input type=text name=to ...

    javamail-example

    javamail-example 简单的jsp,可通过gmail smtp从html表单发送电子邮件

    JAVA编程百例(照着例子更容易!)

    实例47 使用JAVAMAIL发送邮件 实例48 使用JAVAMAIL接收邮件 实例49 获取URL文本 实例5 哈希表和枚举器 实例50 一个简单的WEB服务器 实例51 数据报通讯:聊天吧 实例52 使用ODBC连接数据库 实例53 加载JDBC驱动 实例...

    J2EE面试题

    2) 利用JavaMail API发送邮件的过程中,()能获取正确的session对象。 a) Session mailsession=Session.getInstance(); b) Session mailsession=Session.getInstance(objProperties); c) Session mailsession...

    从Java走向Java+EE+.rar

    15.3.2 编写发送邮件的实例 223 15.3.3 编写接收邮件的实例 235 15.4 小结 241 第16章 基于良好设计模式的Spring 243 16.1 Spring简介 243 16.2 实例——用Spring来打招呼 246 16.3 小结 248 第17章 ...

    Java旅游项目

    中国旅游网项目——三层架构 目录 1 技术选型 2 数据库 ...技术选型 1.1 Web层 a) Servlet:前端控制器 b) html:视图。 这个项目是网站项目,...f) Javamail:java发送邮件工具 g) Redis:nosql内存数据库 h) Jedis:j

    java web 视频、电子书、源码(李兴华老师出版)

    18.1.4、发送带附件的HTML风格邮件 18.2、操作Excel文件 18.2.1、JExcelAPI简介 18.2.2、创建一个Excel文件 18.2.3、读取Excel文件 18.2.4、格式化文本 18.3、本章摘要 附录B:MyEclipse开发工具 ...

Global site tag (gtag.js) - Google Analytics