仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 415|回复: 9
打印 上一主题 下一主题

[学习教程] 发布一篇Servlet过滤器先容之道理剖析

[复制链接]
只想知道 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:11:48 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
诸如RMI,EJB等一些技术并不是你说的那么复杂,而是它们把一些复杂的工具封装成不复杂的工具了,理解这些工具是需要些时间。我问你,.net里有这些工具吗?要简单多少?。
1.Servlet过滤器
1.1甚么是过滤器
过滤器是一个程序,它先于与之相干的servlet或JSP页面运转在服务器上。过滤器可附加到一个或多个servlet或JSP页面上,而且能够反省进进这些资本的哀求信息。在这以后,过滤器能够作以下的选择:
①以惯例的体例挪用资本(即,挪用servlet或JSP页面)。
②使用修正过的哀求信息挪用资本。
③挪用资本,但在发送呼应到客户机前对其举行修正。
④制止该资本挪用,代之以转到其他的资本,前往一个特定的形态代码或天生交换输入。
1.2Servlet过滤器的基础道理
在Servlet作为过滤器利用时,它能够对客户的哀求举行处置。处置完成后,它会交给下一个过滤器处置,如许,客户的哀求在过滤链里逐一处置,直到哀求发送到方针为止。比方,某网站里有提交“修正的注册信息”的网页,当用户填写完修正信息并提交后,服务器在举行处置时必要做两项事情:判别客户真个会话是不是无效;对提交的数据举行一致编码。这两项事情能够在由两个过滤器构成的过滤链里举行处置。当过滤器处置乐成后,把提交的数据发送到终极方针;假如过滤器处置不乐成,将把视图派发到指定的毛病页面。
2.Servlet过滤器开辟步骤
开辟Servlet过滤器的步骤以下:
①编写完成Filter接口的Servlet类。
②在web.xml中设置Filter。
开辟一个过滤器必要完成Filter接口,Filter接口界说了以下办法:
①destory()由Web容器挪用,初始化此Filter。
②init(FilterConfigfilterConfig)由Web容器挪用,初始化此Filter。
③doFilter(ServletRequestrequest,ServletResponseresponse,FilterChainchain)详细过滤处置代码。
3.一个过滤器框架实例
SimpleFilter1.java
packagecom.zj.sample;
importjava.io.IOException;
importjavax.servlet.Filter;
importjavax.servlet.FilterChain;
importjavax.servlet.FilterConfig;
importjavax.servlet.ServletException;
importjavax.servlet.ServletRequest;
importjavax.servlet.ServletResponse;
publicclassSimpleFilter1implementsFilter{
  @SuppressWarnings("unused")
  privateFilterConfigfilterConfig;
  publicvoidinit(FilterConfigconfig)throwsServletException{
   this.filterConfig=config;
  }
  publicvoiddoFilter(ServletRequestrequest,ServletResponseresponse,
     FilterChainchain){
   try{
     System.out.println("WithinSimpleFilter1:FilteringtheRequest...");
     chain.doFilter(request,response);//把处置发送到下一个过滤器
     System.out.println("WithinSimpleFilter1:FilteringtheResponse...");
   }catch(IOExceptionioe){
     ioe.printStackTrace();
   }catch(ServletExceptionse){
     se.printStackTrace();
   }
  }
  publicvoiddestroy(){
   this.filterConfig=null;
  }
}
<p>
java是一种面向对象的编程语言,优点是可移植性比较高,最初设计时就是本着一次编写到处执行设计的。可以开发各种应用程序和游戏,不过速度没有c++快,所以一般是不用java来编写应用程序和电脑游戏。
小魔女 该用户已被删除
沙发
发表于 2015-1-20 16:55:36 | 只看该作者
当然你也可以参加一些开源项目,一方面可以提高自己,另一方面也是为中国软件事业做贡献嘛!开发者在互联网上用CVS合作开发,用QQ,MSN,E-mail讨论联系,天南海北的程序员分散在各地却同时开发同一个软件,是不是很有意思呢?
海妖 该用户已被删除
板凳
发表于 2015-2-6 01:15:50 | 只看该作者
接着就是EJB了,EJB就是Enterprise JavaBean, 看名字好象它是Javabean,可是它和Javabean还是有区别的。它是一个体系结构,你可以搭建更安全、更稳定的企业应用。它的大量代码已由中间件(也就是我们常听到的 Weblogic,Websphere这些J2EE服务器)完成了,所以我们要做的程序代码量很少,大部分工作都在设计和配置中间件上。
再现理想 该用户已被删除
地板
发表于 2015-2-7 02:24:23 | 只看该作者
J2SE开发桌面应用软件比起 VC,VB,DEPHI这些传统开发语言来说,优势好象并不明显。J2ME对于初学者来说,好象又有点深奥,而且一般开发者很难有开发环境。
爱飞 该用户已被删除
5#
发表于 2015-2-9 18:27:51 | 只看该作者
《JAVA语言程序设计》或《JAVA从入门到精通》这两本书开始学,等你编程有感觉的时候也可以回看一下。《JAVA读书笔记》这本书,因为讲的代码很多,也很容易看懂,涉及到面也到位。是你学习技术巩固的好书,学完后就看看《JAVA编程思想》这本书,找找一个自己写的代码跟书上的代码有什么不一样。
小女巫 该用户已被删除
6#
发表于 2015-2-12 21:49:52 | 只看该作者
是一种为 Internet发展的计算机语言
冷月葬花魂 该用户已被删除
7#
发表于 2015-3-3 09:38:52 | 只看该作者
象、泛型编程的特性,广泛应用于企业级Web应用开发和移动应用开发。
第二个灵魂 该用户已被删除
8#
发表于 2015-3-11 09:51:13 | 只看该作者
是一种简化的C++语言 是一种安全的语言,具有阻绝计算机病毒传输的功能
活着的死人 该用户已被删除
9#
发表于 2015-3-18 03:26:01 | 只看该作者
至于JDBC,就不用我多说了,你如果用java编过存取数据库的程序,就应该很熟悉。还有,如果你要用Java编发送电子邮件的程序,你就得看看Javamail 了。
金色的骷髅 该用户已被删除
10#
发表于 2015-3-25 10:45:35 | 只看该作者
至于JDBC,就不用我多说了,你如果用java编过存取数据库的程序,就应该很熟悉。还有,如果你要用Java编发送电子邮件的程序,你就得看看Javamail 了。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-9-21 13:19

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表