- 浏览: 203240 次
- 性别:
- 来自: 湖南
文章分类
最新评论
1.电子邮件发送
2.电子邮件接收
电子邮件注册
列出全部邮件
POP3
/* * html 电子邮件发送 */ package lesson6; import java.util.Properties; import javax.activation.DataHandler; import javax.activation.FileDataSource; import javax.mail.Message; import javax.mail.Session; import javax.mail.Transport; import javax.mail.internet.InternetAddress; import javax.mail.internet.MimeBodyPart; import javax.mail.internet.MimeMessage; import javax.mail.internet.MimeMultipart; public class HtmlMessageSender { String protocol = "smtp"; String from = "it315_test@sina.com"; String to = "it315_test@sohu.com "; String subject = "HTML测试"; String body = "<a href=http://www.it315.org>" + "欢迎大家访问我们的网站</a></br>" + "<img src=\"cid:it315_logo_gif\">"; public static void main(String[] args) throws Exception { String server = "smtp.sina.com.cn"; String user = "it315_test"; String pass = "123456"; HtmlMessageSender sender = new HtmlMessageSender (); Session session = sender.createSession(); MimeMessage message = sender.createMessage(session); //获得Transport对象,并连接邮件服务器发送邮件 Transport transport = session.getTransport(); transport.connect(server, user, pass); transport.sendMessage(message, message.getRecipients(Message.RecipientType.TO)); transport.close(); } public Session createSession() { Properties props = new Properties(); props.setProperty("mail.transport.protocol", protocol); /*必须将mail.smtp.auth属性设置为true,SMTPTransport对象才会向 SMTP服务器提交用户认证信息,这个信息可以从JavaMail的javadocs文档 中的com.sun.mail.smtp包的帮助页面内查看到。 */ props.setProperty ("mail.smtp.auth","true"); Session session = Session.getInstance(props); session.setDebug(true); return session; } public MimeMessage createMessage(Session session) throws Exception { MimeMessage message = new MimeMessage(session); message.setFrom(new InternetAddress(from)); message.setRecipients(Message.RecipientType.TO, InternetAddress.parse(to)); message.setSubject(subject); MimeMultipart multipart = new MimeMultipart("related"); MimeBodyPart htmlBodyPart = new MimeBodyPart(); htmlBodyPart.setContent(body,"text/html;charset=utf-8"); multipart.addBodyPart(htmlBodyPart); MimeBodyPart gifBodyPart = new MimeBodyPart(); FileDataSource fds = new FileDataSource("d:\\attach\\logo.gif"); gifBodyPart.setDataHandler(new DataHandler(fds)); gifBodyPart.setContentID("it315_logo_gif"); multipart.addBodyPart(gifBodyPart); message.setContent(multipart); message.saveChanges(); return message; } }
2.电子邮件接收
电子邮件注册
<html> <head> <title>login.html</title> </head> <body> <form action="logon.jsp" method="post"> 主机名:<input name="host" type="text"><br/> 用户名:<input name="username" type="text"><br/> 密码:<input name="password" type="password"><br/> <input type="submit" value="提交"> <input type="reset" value="重置"> </form> </body> </html>
列出全部邮件
<%@ page import="javax.mail.*,org.it315.*" contentType="text/html;charset=GB2312" %> <% String host = request.getParameter("host"); String username = request.getParameter("username"); String password = request.getParameter("password"); String from = ""; String subject = ""; Folder folder = POP3Help.getFolder(host,username,password); session.setAttribute("folder",folder); Message [] messages = folder.getMessages(); for(int i=0;i<messages.length;i++) { try { from = messages[i].getFrom()[0].toString(); subject = messages[i].getSubject(); out.print(i); %> 发件人地址:<%=from %> 邮件主题:<%=subject %> <a href="displayMsg.jsp?msgnum=<%=i+1%>">查看邮件</a><br/> <% } catch(Exception e){} } %>
POP3
package org.it315; import java.util.Properties; import javax.mail.Folder; import javax.mail.Session; import javax.mail.Store; public class POP3Help { public static Folder getFolder(String host,String username,String password) { Properties prop = new Properties(); prop.setProperty("mail.store.protocol","pop3"); prop.setProperty("mail.pop3.host",host); Session mailSession = Session.getDefaultInstance(prop,null); mailSession.setDebug(false); try { Store store = mailSession.getStore("pop3"); store.connect(host,username,password); Folder folder = store.getFolder("inbox"); folder.open(Folder.READ_WRITE); return folder; } catch(Exception e) { e.printStackTrace(); } return null; } }
package org.it315; import java.io.IOException; import java.io.PrintWriter; import java.text.DateFormat; import javax.mail.BodyPart; import javax.mail.Folder; import javax.mail.Message; import javax.mail.Multipart; import javax.mail.internet.MimeUtility; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; public class DisplayHead extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html;charset=gb2312"); PrintWriter out = response.getWriter(); HttpSession session = request.getSession(); int msgnum = Integer.parseInt(request.getParameter("msgnum")); Folder folder = (Folder)session.getAttribute("folder"); try { Message msg = folder.getMessage(msgnum); String from = msg.getFrom()[0].toString(); String subject = msg.getSubject(); String sendDate = DateFormat.getInstance().format(msg.getSentDate()); out.println("邮件主题:" + subject + "<br/>"); out.println(" 发件人:"+ from +"<br/>"); out.println("发送日期:"+ sendDate +"<br/><br/>"); System.out.println(msg.getContentType()); if(msg.isMimeType("multipart/*")) { Multipart mp = (Multipart)msg.getContent(); for(int i=0;i<mp.getCount();i++) { BodyPart bp = mp.getBodyPart(i); if(bp.getDisposition()!=null) { String filename = bp.getFileName(); System.out.println(filename); if(filename.startsWith("=?")) { filename = MimeUtility.decodeText(filename); } out.print("附件:"); out.print("<a href=HandleAttach?msgnum=" + msgnum + "&&bodynum=" + i + "&&filename=" + filename + ">" + filename + "</a><br/>"); } } } } catch(Exception e) { e.printStackTrace(); } } }
package org.it315; import java.io.IOException; import javax.mail.BodyPart; import javax.mail.Folder; import javax.mail.Message; import javax.mail.Multipart; import javax.servlet.ServletException; import javax.servlet.ServletOutputStream; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; public class DisplayContent extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { ServletOutputStream sos = response.getOutputStream(); HttpSession session = request.getSession(); int msgnum = Integer.parseInt(request.getParameter("msgnum")); Folder folder = (Folder)session.getAttribute("folder"); try { Message msg = folder.getMessage(msgnum); //邮件类型不是mixed时,表示邮件中不包含附件,直接输出邮件内容 if(!msg.isMimeType("multipart/mixed")) { response.setContentType("message/rfc822"); msg.writeTo(sos); } else { //查找并输出邮件中的邮件正文 Multipart mp = (Multipart)msg.getContent(); int bodynum = mp.getCount(); for(int i=0;i<bodynum;i++) { BodyPart bp = mp.getBodyPart(i); /* * MIME消息头中不包含disposition字段, * 并且MIME消息类型不为mixed时, * 表示当前获得的MIME消息为邮件正文 */ if(!bp.isMimeType("multipart/mixed") &&bp.getDisposition()==null) { response.setContentType("message/rfc822"); bp.writeTo(sos); } } } } catch(Exception e) { e.printStackTrace(); } } }
- webmail.zip (4 MB)
- 下载次数: 7
发表评论
-
领导首页页面
2012-11-30 19:57 0<%@ page language="ja ... -
Hibernate Annotation应用
2012-05-04 10:46 1503@Entity @Table @Id @Column @Tra ... -
服务器证书安装配置指南(Weblogic)
2012-04-24 12:20 1116一、 生成证书请求 1. 安装JDK(可选) We ... -
jsp 导出excel
2011-09-21 21:41 1486excel文件是可以在jsp响应,通过输出相应xml,即可得到 ... -
eclipse相关插件安装
2011-06-15 20:02 10591.tomcatPluginV321.zip tomcat部 ... -
流程控制应用JPBM
2011-06-04 14:48 1607工作流(流程控制应用) 什么是工作流? 工作流是业务流程自动化 ... -
网上支付
2011-03-28 12:57 3158两种接入方案 相接与银 ... -
Hibernate Annotation
2011-03-01 08:54 1132简介: 在过去几年里,Hibernate不断发展,几乎成为Ja ... -
在Struts 2中实现文件上传
2011-02-11 16:09 853Struts 2是通过Commons FileUpload文件 ... -
Java加密技术
2010-12-31 11:51 758本篇内容简要介绍几种方法源码文件 如基本的单向加密 ... -
Struts 2与AJAX
2010-12-18 08:29 654在当今——Web 2.0概念铺天盖地的Internet环境下, ... -
Strus 2的新表单标志的使用
2010-12-17 09:10 788Struts 2为大家提供了不少常用的很酷的表单标志,简化了我 ... -
Struts 2中的OGNL
2010-12-16 08:28 639本人是一个EL(Expression ... -
在Struts 2中实现CRUD
2010-12-15 08:08 760CRUD是Create(创建)、Read(读取)、Update ... -
在Struts 2中实现文件上传
2010-12-14 08:34 843实现原理 Struts 2是通过Commons FileUpl ... -
在Struts 2中实现IoC
2010-12-13 07:58 844IoC(Inversion of Control,以下译为控制 ... -
Struts 2的基石——拦截器(Interceptor)
2010-12-11 08:23 811首先,要跟大家道个歉 ... -
在Struts 2.0中实现表单数据校验(Validation)
2010-12-10 09:45 784在写前几篇文章的时候,有些朋友建议我的写一篇关于表单数据校验的 ... -
转换器(Converter)——Struts 2.0中的魔术师
2010-12-09 08:20 674在我已往的Struts 1.x项目经验中,有个问题不时的出现— ... -
在Struts 2.0中国际化(i18n)您的应用程序
2010-12-08 08:14 738国际化是商业系统中不可或缺的一部分,所以无论您学习的是什么We ...
相关推荐
电子邮件系统开发是一个复杂而关键的过程,它涉及到网络通信、数据安全、用户界面设计等多个方面的技术。在本讨论中,我们将深入探讨电子邮件系统的核心组件、工作原理以及开发过程中的关键技术。 一、电子邮件系统...
电子邮件开发是一个涵盖多个技术领域的主题,它涉及到网络通信、数据编码、邮件协议以及软件编程等多个方面。在这个领域,我们通常会使用PHP这样的编程语言来构建和处理电子邮件功能。以下是一些关于电子邮件开发的...
UML(统一建模语言)是软件开发中的一个重要工具,用于系统分析和设计,特别是复杂系统如电子邮件系统的建模。本篇文章将深入探讨电子邮件系统UML设计的关键知识点。 首先,我们来看**用例图(Use Case Diagram)**...
Java开发的电子邮件Web客户端是一种基于Java技术构建的网络应用程序,允许用户通过Web浏览器访问和管理他们的电子邮件。这种客户端通常利用SMTP(Simple Mail Transfer Protocol)和IMAP(Internet Message Access ...
电子邮件客户端软件论文是一篇深入探讨电子邮件客户端应用技术的学术研究,涵盖了从基本概念到实际开发与应用的多个方面。这篇论文旨在分析电子邮件客户端的工作原理、功能特性,以及在信息技术环境中如何优化其性能...
通过学习和实践“第六章 电子邮件发送和接受程序的开发”中的内容,你可以了解到如何在VC++环境中,利用MFC库一步步实现一个完整的邮件客户端应用,包括设置邮件参数、连接SMTP/POP3服务器、处理用户界面交互以及...
电子邮件发送和接受程序的开发是计算机科学领域中的一个重要实践,特别是在软件工程和网络通信课程中。这个主题通常涉及使用编程语言如C++,并利用MFC(Microsoft Foundation Classes)库来构建应用程序。MFC是微软...
在IT行业中,Java邮件开发是一项基础且重要的技能,尤其对于构建企业级应用和服务来说更是不可或缺。张孝祥的"Java邮件开发详解"教程无疑是学习这一主题的宝贵资源。本教程可能包含了从邮件协议理解到实际JavaMail ...
在JSP(JavaServer Pages)环境下开发电子邮件模块,可以利用Java的Mail API和其他相关库来实现这一功能。本模块主要涉及到以下几个核心知识点: 1. JSP基础:JSP是一种动态网页技术,它将HTML代码和Java代码结合在...
Java电子邮件系统是一个基于Java技术构建的Web应用程序,主要用于学习和理解电子邮件系统的实现原理。这个系统可以让初学者了解如何在互联网上发送和接收电子邮件,以及如何处理邮件附件等基本功能。以下是一些关于...
这个压缩包“PHP网络开发--电子邮件开发(源码).rar”包含了实现这一功能的相关源代码,可能是为了教学或者实际项目应用。 PHP是一个开源的服务器端脚本语言,特别适合于Web开发,可以嵌入到HTML中使用。在电子...
电子邮件程序是一种用于发送、接收和管理电子信件的应用软件,其源码是理解电子邮件系统工作原理和技术实现的关键。...这不仅有助于理解电子邮件工作原理,也有助于进一步开发和优化电子邮件应用。
本篇文章将深入探讨如何在C# WinForms环境中实现电子邮件功能,并基于给定的源码进行学习和二次开发。 首先,让我们理解电子邮件的基础知识。电子邮件系统通常基于SMTP(Simple Mail Transfer Protocol)用于发送...
电子邮件发送和接收程序是IT领域中一个常见的应用,主要用于实现电子通信。在本文中,我们将深入探讨这个程序的运行环境、所需组件以及SMTP协议的基本原理。 首先,要运行这样一个程序,你需要在计算机上安装...
另一方面,S/MIME(Secure Multipurpose Internet Mail Extensions)由Netscape开发,基于流行的电子邮件安全软件PGP,获得了IBM、Lotus等公司的支持,同样有望成为IETF标准。这两种标准均致力于提供一套统一的加密...