仓酷云

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

[学习教程] 来看J2EE探究者: 利用Java Servlets 2.4来实行过滤

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

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

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

x
java主要分三块,j2se:java的基础核心语言。j2me:java的微型模块,专门针对内存小,没有持续电源等小型设备。j2ee:java的企业模块,专门针对企业数据库服务器的连接维护。
Servlet过滤器是可拔出的Web组件,它同意我们完成Web使用程序中的预处置和后期处置逻辑。过滤器撑持servlet和JSP页面的基础哀求处置功效,好比日记纪录、性能、平安、会话处置、XSLT转换,等等。过滤器最后是随JavaServlet2.3标准公布的,比来定稿的2.4标准对它举行了严重晋级。在这J2EE探究者系列文章的最初一篇中,我将向您先容Servlet过滤器的基本常识DD好比整体的系统布局计划、完成细节,和在J2EEWeb使用程序中的典范使用,还会触及一些估计最新的Servlet标准将会提供的扩大功效。
Servlet过滤器是甚么?
Servlet过滤器是小型的Web组件,它们拦阻哀求和呼应,以便检察、提取或以某种体例操纵正在客户机和服务器之间互换的数据。过滤器是一般封装了一些功效的Web组件,这些功效固然很主要,可是关于处置客户机哀求或发送呼应来讲不是决意性的。典范的例子包含纪录关于哀求和呼应的数据、处置平安协定、办理会话属性,等等。过滤器供应一种面向对象的模块化机制,用以将大众义务封装到可拔出的组件中,这些组件经由过程一个设置文件来声明,并静态地处置。
Servlet过滤器中分离了很多元素,从而使得过滤器成为共同、壮大和模块化的Web组件。也就是说,Servlet过滤器是:
声明式的:过滤器经由过程Web部署形貌符(web.xml)中的XML标签来声明。如许同意增加和删除过滤器,而无需修改任何使用程序代码或JSP页面。
静态的:过滤器在运转时由Servlet容器挪用来拦阻和处置哀求和呼应。
天真的:过滤器在Web处置情况中的使用很普遍,涵盖诸如日记纪录和平安等很多最大众的帮助义务。过滤器仍是天真的,由于它们可用于对来自客户机的间接挪用实行预处理和前期处置,和处置在防火墙以后的Web组件之间调剂的哀求。最初,能够将过滤器链接起来以供应必须的功效。
模块化的:经由过程把使用程序处置逻辑封装到单个类文件中,过滤器从而界说了可简单地从哀求/呼应链中增加或删除的模块化单位。
可移植的:与Java平台的其他很多方面一样,Servlet过滤器是跨平台和跨容器可移植的,从而进一步撑持了Servler过滤器的模块化和可重用实质。
可重用的:回功于过滤器完成类的模块化计划,和声明式的过滤器设置体例,过滤器能够简单地超过分歧的项目和使用程序利用。
通明的:在哀求/呼应链中包含过滤器,这类计划是为了增补(而不是以任何体例替换)servlet或JSP页面供应的中心处置。因此,过滤器能够依据必要增加或删除,而不会损坏servlet或JSP页面。
以是Servlet过滤器是经由过程一个设置文件来天真声明的模块化可重用组件。过滤器动态地处置传进的哀求和传出的呼应,而且无需修正使用程序代码就能够通明地增加或删除它们。最初,过滤器自力于任何平台大概Servlet容器,从而同意将它们简单地部署就任何相容的J2EE情况中。
在接上去的几大节中,我们将进一步考查Servlet过滤器机制的整体计划,和完成、设置和部署过滤器所触及的步骤。我们还将切磋Servlet过滤器的一些实践使用,最初扼要考查一下模子-视图-把持器(MVC)系统布局中包括的Servlet过滤器,从而停止本文的会商。
Servlet过滤器系统布局
正如其称号所表示的,Servlet过滤器用于拦阻传进的哀求和/或传出的呼应,并监督、修正或以某种体例处置正在经由过程的数据流。过滤器是自包括、模块化的组件,能够将它们增加到哀求/呼应链中,大概在无需影呼应用程序中其他Web组件的情形下删除它们。过滤器仅只是修改哀求和呼应的运转时处置,因此不该该将它们间接嵌进Web使用程序框架,除非是经由过程ServletAPI中优秀界说的尺度接口来完成。
Web资本能够设置为没有过滤器与之联系关系(这是默许情形)、与单个过滤器联系关系(这是典范情形),乃至是与一个过滤器链相干联。那末过滤器事实做甚么呢?像servlet一样,它承受哀求并呼应对象。然后过滤器会反省哀求对象,并决意将该哀求转发给链中的下一个组件,大概中断该哀求并间接向客户机发还一个呼应。假如哀求被转发了,它将被传送给链中的下一个资本(另外一个过滤器、servlet或JSP页面)。在这个哀求想法经由过程过滤器链并被服务器处置以后,一个呼应将以相反的按次经由过程该链发送归去。如许就给每个过滤器都供应了依据必要处置呼应对象的时机。
当过滤器在Servlet2.3标准中初次引进时,它们只能过滤Web客户机和客户机所访问的指定Web资本之间的内容。假如该资本然后将哀求调剂给其他Web资本,那就不克不及向幕后托付的任何哀求使用过滤器。2.4标准打消了这个限定。Servlet过滤器如今能够使用于J2EEWeb情况中存在哀求和呼应对象的任何中央。因而,Servlet过滤器能够应用在客户机和servlet之间、servlet和servlet或JSP页面之间,和所包含的每一个JSP页面之间。这才是我所称的壮大才能和天真性!
<p>
你精通任何一门语言就最强大。现在来看,java的市场比C#大,C#容易入手,比较简单,java比较难
莫相离 该用户已被删除
沙发
发表于 2015-1-20 16:54:14 | 只看该作者
是一种突破用户端机器环境和CPU
板凳
发表于 2015-1-26 16:57:16 | 只看该作者
如果要向java web方向发展也要吧看看《Java web从入门到精通》学完再到《Struts2.0入门到精通》这样你差不多就把代码给学完了。有兴趣可以看一些设计模块和框架的包等等。
透明 该用户已被删除
地板
 楼主| 发表于 2015-2-4 16:29:00 | 只看该作者
自从Sun推出Java以来,就力图使之无所不包,所以Java发展到现在,按应用来分主要分为三大块:J2SE,J2ME和J2EE,这也就是Sun ONE(Open Net Environment)体系。J2SE就是Java2的标准版,主要用于桌面应用软件的编程;J2ME主要应用于嵌入是系统开发,如手机和PDA的编程;J2EE是Java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站和ERP系统。
若相依 该用户已被删除
5#
发表于 2015-2-5 22:17:09 | 只看该作者
所以现在应用最广泛又最好学的就是J2EE了。 J2EE又包括许多组件,如Jsp,Servlet,JavaBean,EJB,JDBC,JavaMail等。要学习起来可不是一两天的事。那么又该如何学习J2EE呢?当然Java语法得先看一看的,I/O包,Util包,Lang包你都熟悉了吗?然后再从JSP学起。
小女巫 该用户已被删除
6#
发表于 2015-2-7 07:01:47 | 只看该作者
是一种使用者不需花费很多时间学习的语言
飘灵儿 该用户已被删除
7#
发表于 2015-2-20 23:50:21 | 只看该作者
[url]http://www.jdon.com/[/url]去下载,或到同济技术论坛的服务器[url]ftp://nro.shtdu.edu.cn[/url]去下,安装上有什么问题,可以到论坛上去提问。
兰色精灵 该用户已被删除
8#
发表于 2015-3-6 19:05:07 | 只看该作者
让你能够真正掌握接口或抽象类的应用,从而在原来的Java语言基础上跃进一步,更重要的是,设计模式反复向你强调一个宗旨:要让你的程序尽可能的可重用。
谁可相欹 该用户已被删除
9#
发表于 2015-3-13 06:09:22 | 只看该作者
不过,每次的执行编译后的字节码需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。
精灵巫婆 该用户已被删除
10#
发表于 2015-3-13 06:09:24 | 只看该作者
你快去找一份Java的编程工作来做吧(如果是在校学生可以去做兼职啊),在实践中提高自己,那才是最快的。不过你得祈祷在公司里碰到一个高手,而且他 还愿意不厌其烦地教你,这样好象有点难哦!还有一个办法就是读开放源码的程序了。我们知道开放源码大都出自高手,他们设计合理,考虑周到,再加上有广大的程序员参与,代码的价值自然是字字珠叽,铿锵有力(对不起,偶最近《金装四大才子》看多了)。
再现理想 该用户已被删除
11#
发表于 2015-3-13 06:09:26 | 只看该作者
象、泛型编程的特性,广泛应用于企业级Web应用开发和移动应用开发。
只想知道 该用户已被删除
12#
发表于 2015-3-13 06:09:25 | 只看该作者
Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台
爱飞 该用户已被删除
13#
发表于 2015-3-13 06:09:27 | 只看该作者
Java是一种计算机编程语言,拥有跨平台、面向对java
简单生活 该用户已被删除
14#
发表于 2015-3-20 14:35:00 | 只看该作者
如果要向java web方向发展也要吧看看《Java web从入门到精通》学完再到《Struts2.0入门到精通》这样你差不多就把代码给学完了。有兴趣可以看一些设计模块和框架的包等等。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-11-11 10:02

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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