使用JSP开发WebMail系统

2016-01-29 12:09 1 1 收藏

使用JSP开发WebMail系统,使用JSP开发WebMail系统

【 tulaoshi.com - Java 】

  电子邮件(E-mail)是Internet上使用最广泛的服务之一,传统的Email应用模式基于C/S结构,即用户使用客户端的邮件收发工具(如Outlook、Foxmail等)与提供邮件服务的服务器(如163.net、263.net、371.net)通信,在使用客户端邮件工具之前,用户要进行一些必要的设置,如指定邮件服务器的主机地址和通信端口等,这些工作对刚开始上网的用户会有一定的困难,如果把E-mail和Web结合在一起,即通过Web编程和适当的系统设置,使用户仅仅以访问Web的方式就可以得到和使用完整的邮件服务,这样将极大地方便上网用户,这种系统称为WebMail。WebMail是目前Internet上最受欢迎的服务之一,也是很多网站必备功能之一。另外WebMail同样也适用于企业或校园网的应用。

通常在后台服务器的搭建和设置完成后实现WebMail系统,而前台的开发工作主要是开发工具与后台数据库和邮件服务器的交互问题。在Linux平台上运行的各种服务器软件稳定性和可靠性一直很好,而且选择跨平台的Java开发工具使系统更稳定,具有更高的伸缩性。

JSP性能


尽管JSP提供强大的功能是建立在Servlet之上,但JSP的性能和Servlet相差无几。JSP首先要编译成Servlet,这只会增加少量的代码,仅需编译一次且可以预编译,这就消除了运行时花费不必要的负担。JSP与Servlet性能上的差异仅仅表现在返回的数据是二进制的。这是因为JSP返回时用的是PrintWriter,而Servlet可以应用于速度更快的OutputStream。

JSP自定义的标签库可以封装大量的、复杂的Java操作在一个Form里面,这些预先定义好的标签可以很容易的被那些没有Java知识的人调用。因此,JSP自定义的标签库可以有效地实现Java程序员和Web设计人员工作的划分。然而,在页面上应用的每一个标签,Web容器都必须创建一个新的标签句柄对象或从标签缓冲中提取它。因此,过多的应用自定义的标签将会带来不必要的资源浪费。

BodyTags是一种特殊的定制标签,可以提取在它之间封装的内容或者替换那些内容。BodyTags之间的内容一般会备份在内存中。由于BodyTags之间能够嵌套和重复,因此,在程序中应用了多级的BodyTags会占用大量宝贵的内存和系统资源。

实现WebMail的主要功能


该系统提供了获取、阅读、书写、转发、回复、打印、删除及用户管理的功能。考虑到系统的跨平台性,采用Java及相关技术产品为开发工具,特别是采用JSP作为服务程序,这样对客户端也没有其它要求,同时系统的性能在高负荷下得到进一步提高。整个WebMail系统全部采用纯Java代码,服务器端每响应一个服务请求启动一个线程,而不像CGI那样启动一个进程。这样能够节省系统资源,提高系统性能。

实现主要代码


获取用户输入的信息

对于用户输入内容获取功能是通过getParameter方法来实现的,对于输入的文本内容,通过如下代码就能在服务器端获取,程序代码如下:

String username=request.getParameter("login");String password=request.getParameter("password");Session session2=Session.getInstance(System.getProperties() ,null);Store store=session2.getStore("pop3");


根据用户输入的信息来连接服务器,程序代码如下:

try{ store.connect(host,username+"%nyist.net", password);}catch(javax.mail.AuthenticationFailedException e){content="用户名与密码不匹配";}


接收邮件代码段

根据获取用户输入的信息来连接服务器,代码为:

store.connect("nyist.net",-1,request.getParameter("username")+"%nyist.net",request.getParameter("password"));


获取服务器端的信息,代码如下:


                        

来源:https://www.tulaoshi.com/n/20160129/1484847.html

延伸阅读
标签: Java JAVA基础
  本例子是参考了一些网站上有关JSP 对 XML 的操作的相关文档,又结合了一些个人的体会。例子涉及的内容是,开发的一个企业内部定餐系统后台管理端的部分代码,功能主要集中在对于餐馆基本信息的管理。 该例子本身开发的起因是我在原公司和同事们一个玩笑的一部分。特此也表达对那些一起共事的朋友们的想念。 例子本身是...
Servlet和JSP技术是用Java开发服务器端应用的主要技术,是开发商务应用表示端的标准。Java开发者喜欢使用它有多种原因,其一是对于已经熟悉Java语言的开发者来说这个技术容易学习;其二是Java把一次编写,到处运行的理念带入到Web应用中,实现了一次编写,到处实现。而且更为重要的是,如果遵循一些良好的设计原则的话,就可以把表示和内容...
标签: Java JAVA基础
    作者:danielmouse     由于朋友问起我开发JSP前都要做些什么,就写了这篇东东。   如果有高手误进,请指正,不要扁我喔!:)   前期准备软件:   j2sdk-1_4_0_01-windows-i586.exe   -----JSDK JAVA开发工具包   jakarta-tomcat-5.0.18.zip   -----TOMCAT5 服务器...
摘要 本文将向你展示如何用C#开发一个Windows服务来记录系统使用情况。 每一个人都想知道他们每天在什么时间启动和关闭自己的系统,以及系统每天运行了多少时间。如果用一个DataGrid控件来显示系统启动、关闭及所消耗的时间将是一个不错的主意。 在本文中,我提供了一种方法来实现这一目标-使用C#开发一个Windows服务。其实,每...
标签: Java JAVA基础
      在传统的JSP程序中,我们将HTML代码与Java代码混合在一起编写,这样虽然方便,但同时也导致页面难以维护,HTML开发人员和JSP开发人员负担加重,我们可以将这种传统的技术成为 页面拉数据技术 。     怎样才能做到将HTML开发和JSP开发分离呢?答案就是使用Tag技术,通过使用Tag技术,我们就可以在页...