jsp/servlet/jsf--标签库的深入研究

JSF开发必备完整Jar包集合(2011年最新版) JavaServer Faces(JSF)是Java EE平台中用于构建Web用户界面的标准框架,自JSR-127提出以来,逐步演进为服务端UI组件模型的规范。它采用事件驱动编程模型,通过标签库和UI组件树实现可重用、声明式的页面开发。JSF支持MVC设计模式,将视图(View)、控制器(Controller)与业务逻辑(Model)清晰分离,并借助托管Bean完成数据绑定与交互处理。 阅读详情

标签库taglib

标签被定义和分布在一个称为标签库的结构中,一个标签库是由元信息和类组成的集合:
1.标签处理器:实现定制标签功能的java类。
2.标签附加信息(tei):向jsp容器提供边辑以确认标签属性和创建变量的类。
3.标签库描述器(tld):描述单个标签和整个标签库属性的xml文档。

标签处理器和标签附加信息需要定位在jsp容器类载入器可以找到的地方。标签库描述器可在url指定的符意位置。jsp1.1规范要求jsp容器接受一个打包成因定结构的jar文件的标签库。tld必须是/meta-inf目录中名为taglib.tld的文件,jar文件则复制到/web-inf/lib目录下。

一、标签实现

1.开发步骤
a.定义标签的名字、属性、声明的变量和标签体的内容。
b.编写标签库描述器tld。
c.编写标签处理器。
d.在jsp页面中使用标签。

2.jsp页面在jsp容器中的转换步骤:
jsp页面存在三种形式:jsp文件、java文件和class文件。
a.指令元素、和向jsp容器提供转换时信息。
b.html行在_jspservice()方法中依顺序转换到out.print()语名中。
c.脚本元素的声明被原封不动地复制到_jspservice()方法外的源码中。
d.脚本元素的表达式在_jspservice()方法中依顺序转换到out.print()语名中。
e.脚本元素的scriptlet被原封不动地复制到_jspservice()方法中。
f.行为元素被转换为执行其功能的运行时逻辑代码。
g.定制标签被扩展到调用其相应标签处理器中方法的java语句中。

3.标签在jsp容器中的转换步骤:
a.jsp容器使用taglib指令元素定位标签库描述器,将页面中用到的定制标签和tld相匹配。
b.读取标签库描述器的标签列表和每一标签相关的类名字。
c.在页面中遇到一个标签时,查找与具有指定名字的标签前缀相关的一个标签库。
d.容器使用在tld中找到的标签结构信息生成一系列完成标签功能的java语句。


二、标签库描述器(tld)

标签库描述器是一个描述整个标签库标记信息和库中每个标签处理器及其属性的xml文档。

标签库描述器的dtd由一个简单的元素组成,此元素包含下列一些子元素。
整个标签库标记信息
tlibversion    标签库版本号。是一个点式十进制数,最多为4组小数点分隔的数字组成。
jspversion    标签库所需的jsp规范最低版本。例如jsp1.1
shortname    标签库的缩写名。jsp可以使用该名字作为库中标签的缺省前缀。
uri    标签库唯一uri的元素。典型url位置来自可下载taglib的位置。
info    标签库描述信息。
每个标签处理器及其属性
tag    在tld中加入标签,描述组成库的每个标签。
name    与标签库的名字前缀一起使用的标签的名字, 是jsp容器唯一的标签标识。
tagclass    实现标签的标签处理器类的全名。
teiclass    标签附加信息(tei)类的全名。tei类给出关于标签处理器创建变量及对标签司性执行的任意有效性验证的信息。
bodycontent    描述标签处理器如何使用标签体的内容。有三种取值:
    empty:表示标签体必须为空;
    jsp:表示脚本元素和模板及其它标签一样被评估。
    tagdependent:体内容被原封不动写入bodycontent,其它脚本元素以源码形式出现,而不被jsp容器解释。
info    标签的人工可读描述性信息。
attribute    使用标签时被编码的属性信息。用于定义标签的属性。
    属性名:属性的名字。
    true|false:属性在标签用到的位置是否要被编码。
    true|false:属性值能否用表达式指定。

三、标签处理器

标签处理器是通过实现jsp容器调用的一系列预定义方法执行定制标签行为的一个java类。
标签处理器实现了标签的行为,标签处理器是java类。

1.标签处理器的工作方式
a.导入javax.servlet.jsp和javax.servlet.jsp.tagext包。
b.实现javax.servlet.jsp.tagext包中的tag接口或bodytag接口。bodytag是tag的子接口。
c.继承tagsupport类或bodytagsuppoert类。它们是上述接口的缺省实现。
d.重载public int dostarttag()throws jspexception方法。

2.标签处理器的接口与实现
javax.servlet.jsp.tagext.tag是实现标签的最基本的接口。
javax.servlet.jsp.tagext.tagsupport是实现tag接口的具体类。
通常情况下继承tagsupport类而不直接实现tag接口通常是有益的。除了对所有必需方法提供了缺省实现外、还保存了pagecontext对象及对嵌套标签的支持。
tag接口包含4个常量,表示dostarttag()和doendtag()方法可能的返回码。
eval_body_include    当dostarttag()返回时,指明servlet应对标签体进行评估。
skip_body    当dostarttag()返回时,指明servlet应忽视标签体。
eval_page    当doendtag()返回时,指明页面其余部分应被评估。
skip_page    当doendtag()返回时,指明页面其余部分就被跳过。
tag接口的方法
public void setpagecontext (pagecontext ctx)    生成的servlet在请求处理器执行其它任务前首先调用此方法,实现类应保存上下文对象以便它可以在标签生命期中使用。从页面上下文中标签处理器可以访问所有jsp隐含对象。
public void setparent(tag p)    使用一个标答可以找到操作栈中它上面的标签。在setpagecontext后立即调用。
public tag getparent()    返回父标签。
public int dostarttag() throws jsp    在设置了页面上下文、父标签和开始标记中编码的属性后调用。返回码表明jsp实现servlet是否就评估标签体。
public int doendtag()throws jspexception    当遇到结否标记时调用。返回码表明jsp是否就继纽页面的其余部份。
public void release()    确保在页面退出前被调用。释放资源并重置标签处理器状态。
tagsupport类的方法
public static tag financestorwithclass(tag thistag, class cls)    为所需的父标签处理器查找运行时标签栈。一个标签处理器可以提供其范围内子标签调用的方法。
public void setid(string id)    保存和检索在id属性中指定的名字。
public void setvalue(string name, object o)    在本地哈希表中设置指定名字的值。
public object getvalue (string name)    从本地哈希表中获取指定名称的值。
public void removevalue (string name)    从本地哈希表中删除指定名称的值。
public enumeration getvalues()    返回哈希表中关键字的一个枚举。

3.标签处理器的生命期
a.生成servlet需要创建标签处理器类的一个实例。实现方式通常是调用jsp容器的工厂类的一个方法,工厂类包含一个标签处理器实例池以使其可重用不再处于激活状态的对象。
b.初始化标签处理器,使servlet获知其存在性。servlet通过调用标签处理器的两个方法实现此过程:setpagecontext(pagecontext ctx)和setparent(tag parent)。
c.如果标签具有属性,属性的取值通过处理器提供setter方法传入到对象。属性setter方法是一个标签支持属性所需的唯一方法。
d.页面的上下文和父标签已被调置,并已具备属性。此时调用标签处理器的dostarttag()方法,该方法可以读取这些变量并执行实现标答功能所需的计算和操作。dostarttag()方法必须返回一个整型数。返回eval_body_include则正常处理标签体,返回skip_body则从初始jsp页面中直到此标签结束标记处的内容均被忽略。
e.标签体被评估或忽视后调用标签处理器的doendtag()方法,返回eval_page则页面的其余部分被评估,返回skip_page则servlet代码立即从_jspservice()中返回。

4.体标签处理器的接口与实现
javax.servlet.jsp.tagext.bodytag是tag的子接口。
javax.servlet.jsp.tagext.bodytagsupport是实现bodytag类。
bodycontent是javax.servlet.jsp.jspwriter的子类,但与其父类有所区别。
bodycontent对象的内容不自动写了入servlet的输出流,而是积累在一字符串缓存中。当标签体完成后其对象仍可在doendtag()方法中可以应用,由getstring()或getreader()方法操作。并在必要时修改及写入恢复的jspwriter输出流。
bodycontent类的方法
public void flush()throws ioexception    复写jspwrite.flush()方法以便它总是产生溢出。刷新写入已失效,因为它没有连接到将被写入的实际输出流中。
public void clearbody()    重置bodycontent缓存为空。
public reader getreader()    返回reader读取体内容。
public string getstring()    返回包含体内容的一个字符串。
public void writeout(write w)    将体内容写入指定输出。
public jspwrite getenclosing write()    返回栈中下一个更高的写入者对象(可能是另一个bodycontent对象)。
bodytag接口定义了一个新的整型常量
eval_body_tag    当dostarttag()返回时,使得新的bodycontent对象被创建并与此标签处理器相关联。当doafterbody()返回时,使得jsp servlet在修改完此标签控制的任意变量后再次评估体。
bodytag接口的方法
public void setbodycontern (bodycontent out)    在当前jspwriter已被写入,一个新的bodycontent在被创建后由jsp servlet调用,它发生在dostarttag()之后。
public void doinitbody() throws jspexception    setbodycontent()之后,体被评估前调用的生命期方法。如果多次评估体,此方法只调用一次。
public init doafterbody() throws jspexception    体被评估后,bodycontent写入者仍处于激活状态时调用的生命期方法。此方法必须返回eval_body_tag或skip_body,若返回eval_body_tag时体再次被评估。
bodytagsupport类的方法
public int dostarttag() throws jspexception    复写tagsupport中的dostarttag()方法。
public int doendtag() throws jspexception    调用tagsupport中的doendtag()方法,返回结果。
public void setbodycontent (bodycontent out)    在一保护成员变量bodycontent中保存新的体内容对象,子类可直接访问此对象。
public void doinitbody() throws jspexception    缺省什么都不做。被需要执行初始化的子类所复写。
public int doafterbody() throws jspexception    每次体被评估后由jsp servlet调用,体同容对象仍处于激活状态。返回skep_body或eval_body_tag则体再次被评估
public void release()    设置bodycontent对象为null,然后调用super.release()。
public bodycontent getbodycontent()    返回bodycontent变量。子类已经可以访问保护变量,但此方法允许无关的标签处理类对此体内容发送输出。
public jspwriter getpreviousout()    在bodycontent变量上调用getenclosingwriter()并返回结果的简便方法。

5.体标签处理器的生命期

a.生成servlet需要创建标签处理器类的一个实例。实现方式通常是调用jsp容器的工厂类的一个方法,工厂类包含一个标签处理器实例池以使其可重用不再处于激活状态的对象。
b.初始化标签处理器,使servlet获知其存在性。servlet通过调用标签处理器的两个方法实现此过程:setpagecontext(pagecontext ctx)和setparent(tag parent)。
c.如果标签具有属性,属性的取值通过处理器提供setter方法传入到对象。属性setter方法是一个标签支持属性所需的唯一方法。
d.页面的上下文和父标签已被调置,并已具备属性。调用标签处理器的dostarttag()方法,该方法可以读取这些变量并执行实现标答功能所需的计算和操作。
dostarttag()方法必须返回一个整型数。
返回eval_body_tag则正常处理标签体(跳到e);
返回skip_body则从初始jsp页面中直到此标签结束标记处的内容均被忽略。(跳到f)
e.如果返回eval_body_tag时,则正常处理标签体。
    e1.在栈中保存当前的jspwriter对象,创建新的bodycontent对象,并将其置为jsp页面的out对象保存在上下文范围内名为name的属性中。并调用它的setbodycontent()方法。
    e2.调用doinitbody()方法进行初始化。
    e3.处理标签体。将输出写入bodycontent对象中,此过程依赖于tld的标签元素,有三种可能取值。
    e4.调用doafterbody()方法,将体内体内容写入jspwriter,可如下实现:
jspwriter out=bodycontent.getenclosingwriter();
out.println(bodycontent.getstring());//bodycontent.writeout(out);
bodycontent.clear();
    e5.doafterbody()方法返回两种可能:
返回eval_body_tag时,再对标签体进行评估,这是数组和枚举被循环处理的典型情况。
    返回skip_page时,继续页面的其余部份。
e6.体内容完成,因此创建它的过程被反向:
    调用pagecontent.popbody()方法检索前面的jspwriter对象。
    将写入者设置回out隐含对象。
f.标签体被评估或忽视后调用doendtag()方法,允许标签处理器像输出流发回内容。
返回eval_page则页面的其余部分被评估;
返回skip_page则servlet代码立即从_jspservice()中返回。
g. 此时体的内容在受保护的bodycontent对象中仍然可用。
可以将它写入servlet输出流中:
jspwriter out=pagecontext.getout();
out.println(bodycontent.getstring());
或者
bodycontent.writeout(pagecontext.getout());

6.标签附加信息类


四、标签指令

taglib指令元素的目的是指定tld的位置,设置在页面上与标签区分开来的一个短别名。
语法:
属性:prefix:用于标识标签库的唯一标识。uri:标签库本身的uri。
uri不必指向一个实际文件,它是jsp容器可以在web.xml中查找实际文件位置的唯一标识符。

         (责任编辑:包春林)


JSP技术完全指南与开发者资源 在本章中,我们将初步探索HTML和CHM文件的基础知识。HTML是构建网页和网络应用的基石,而CHM(Microsoft Compiled HTML Help)文件是一种电子文档格式,常用于创建帮助文件和用户手册。我们将了解HTML的基本结构和语法规则,以及如何使用CHM文件制作专业的文档资源。JSP是Java EE技术的一部分,允许开发者将Java代码嵌入到HTML页面中执行。这种将业务逻辑与显示逻辑分离的方法,有助于简化复杂的Web应用程序开发。 阅读详情

相关推荐

从选型到阵列:基于ESP32-S3的智能硬件麦克风系统设计实战

本文详细介绍了基于ESP32-S3芯片设计智能硬件麦克风阵列的完整实战方案。从核心芯片选型、数字MEMS麦克风的参数解读与电路设计,到关键的声学结构密封、阵列布局策略,再到利用ESP-ADF框架构建音频处理流水线并集成回声消除、噪声抑制等算法,提供了从硬件到软件的全链路设计指南与避坑要点,旨在实现清晰、稳定的远场语音交互。

weixin_29173777的博客 266

标签库的深入研究

标签库Taglib标签被定义和分布在一个称为标签库的结构中,一个标签库是由元信息和类组成的集合:1.标签处理器:实现定制标签功能的Java类。2.标签附加信息(TEI):向JSP容器提供边辑以确认标签属性和创建变量的类。3.标签库描述器(TLD):描述单个标签和整个标签库属性的XML文档。标签处理器和标签附加信息需要定位在JSP容器类载入器可以找到的地方。标签库描述器可在URL指定的符意位置。JS

baggio785的专栏 3848

哨兵1号(Sentinel-1)雷达SAR数据预处理全流程:从下载到精确配准

本文详细介绍了哨兵1号(Sentinel-1)雷达SAR数据从下载到精确配准的全流程预处理方法。内容涵盖SLC与GRD数据选择、ASF平台下载技巧,并重点解析了使用SNAP软件进行几何校正、辐射定标及高精度配准的核心步骤,为InSAR形变监测等应用提供可靠的数据基础。

weixin_29208327的博客 478

BodyContent揭秘及定制复杂的JSP标签

<br /><br />jsp中的定制标签功能可以帮助我们来更好地实现presentation layer。我在学习的时候,感觉最困难的就是BodyContent这个类,Sun在API和specification中对BodyContent介绍的非常少,以至于很多程序员对这个类知之甚少。<br />            本文的目的就是带领读者揭开这层面纱,直捣BodyContent的核心,帮助读者了解BodyContent背后的设计模式,本文还将带领读者写一个模拟while循环的标签,这个标签完全可以替代J

Yoara的备忘录 7295

CSP-J 入门级第一轮认证 2025 详细解析

2025年CSP-J入门级第一轮认证模拟赛提供10套免费试题,含选择题与解析。选择题涉及计算机科学基础,如32位无符号整数最大值计算(约42.9亿,选A)、C++位运算(255&254=254,选B)、递归函数分析(calc(5)=6,选B)、哈夫曼树构造(带权路径长度186,选B)等。其他题目涵盖图论(有向图边数等于入度/出度和,选B)、组合数学(120种选法,选C)、布尔逻辑(选项C不恒等)、模运算周期性(f[2025]=6,选D)、C++字符串特性(支持string+char,选B)及引用传参

lan_in的博客 2941

Android Audio最全面试题及参考答案(7万字长文)

在 Android 音频系统中,应用通过框架层的 API 发出音频请求,这些请求经过音频服务层的处理,传递到 HAL 层,再由 HAL 层调用音频驱动层与硬件进行交互,最终实现音频的播放、录制等功能。在 Android 音频系统中,应用通过框架层的 API 发出音频请求,这些请求经过音频服务层的处理,传递到 HAL 层,再由 HAL 层调用音频驱动层与硬件进行交互,最终实现音频的播放、录制等功能。音频播放完成事件:当使用 MediaPlayer 等音频播放类播放音频时,音频播放完成后会触发这个事件。

大模型大数据攻城狮的专栏 2604

[转载]标签库简介

标签库简介标准的JSP 标记可以调用JavaBeans组件或者执行客户的请求,这大大降低了JSP开发的复杂度和维护量。JSP技术也允许你自定义taglib,其实换句话 说,taglib可以看成是对JSP标记的一种扩展,正如x...

congji3817的博客 1222

手把手教你学Simulink——基于Simulink的重复控制抑制周期性负载转矩扰动

传统的PI调节器在面对这类特定频率的周期性扰动时,会因积分器的相位滞后而导致转速出现明显的纹波(如6次、12次谐波),严重影响系统的控制精度和静音性能。:要在频率 fd​处获得较高的开环增益以抑制扰动,必须大幅增加PI的比例系数 Kp​,但这会牺牲系统的相位裕度,导致高频共振甚至系统失稳;:电机转速变化时,基频 fbase​会变,导致 6次谐波频率 6×fbase​也在变。设系统的采样周期为 Ts​,目标抑制的周期性扰动频率为 fd​(rad/s),则对应的周期采样点数 N=fd​Ts​2π​。

MHD0815的博客 256

java_自定义标签运行原理

一.自定义标签运行原理: 二.文字说明   1.IE->web服务器   2.Web服务器->jsp   3.遇到自定义标签,首先实例化标签所对应的标签处理器类   4.调用setPageContext方法,把jsp页面的pagecontext对象传递给标签处理器类   5.看标签是否有父标签,如果有,则把父标签当做一个对象,调用setParent方法传递给标签处...

weixin_30670151的博客 248

SAP GUI 经典事务在 Fiori Launchpad 中的穿越之道:原理、配置与实践指南

在许多企业的 S/4HANA 或 ECC 系统里,经典 SAP GUI 事务依旧承载着关键业务。如何把这些老将自然地嵌入到 Fiori Launchpad,让用户在统一入口里无缝切换新旧 UI,是项目中经常遇到的主题。本文结合社区博文、官方文档与实际项目经验,系统梳理这一过程的技术原理、配置步骤、性能优化以及常见坑点,并给出贴近中国读者的案例解析与改进建议。阅读完毕,你将不仅知道怎么做,还会理解。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 623

【数字孪生与仿真技术】14:数据驱动+机理模型:工业级混合建模实战(附MATLAB完整代码+案例解析)

摘要 本文针对工业建模中机理模型精度不足和数据驱动模型缺乏物理约束的痛点,提出混合建模技术作为解决方案。文章系统阐述了混合建模的3种主流架构(参数校正型、残差补偿型、组件替换型),结合清华大学催化裂化装置的实际案例,分析混合建模的工业应用价值。同时以连续搅拌反应釜(CSTR)为例,提供MATLAB环境下残差补偿型混合模型的完整实现代码,详细展示从机理模型构建到数据驱动补偿的全流程,并给出工程实践中的应对策略,为工业建模提供可落地的技术方案。 关键词 混合建模、机理模型、数据驱动、工业建模、MATLAB

专注于人工智能、软件开发、工控自动化、工厂数字化及智能化等领域,希望和大家共同进步! 622

jsp中导入jsf标签库_JSP/Servlet/JSF中对标签库的深入研究(1)

标签库Taglib标签被定义和分布在一个称为标签库的结构中,一个标签库是由元信息和类组成的集合:1、标签处理器:实现定制标签功能的Java类。2、标签附加信息(TEI):向JSP容器提供边辑以确认标签属性和创建变量的类。3、标签库描述器(TLD):描述单个标签和整个标签库属性的XML文档。标签处理器和标签附加信息需要定位在JSP容器类载入器可以找到的地方。标签库描述器可在URL指定的符意位置。JS...

weixin_39885166的博客 153

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

jsp中导入jsf标签库_JSP/Servlet/JSF--对标签库的深入研究

标签库Taglib标签被定义和分布在一个称为标签库的结构中,一个标签库是由元信息和类组成的集合:1.标签处理器:实现定制标签功能的Java类。2.标签附加信息(TEI):向JSP容器提供边辑以确认标签属性和创建变量的类。3.标签库描述器(TLD):描述单个标签和整个标签库属性的XML文档。标签处理器和标签附加信息需要定位在JSP容器类载入器可以找到的地方。标签库描述器可在URL指定的符意位置。JS...

weixin_33209661的博客 149

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

JSP/Servlet/JSF:标签库的深入研究

标签库Taglib标签被定义和分布在一个称为标签库的结构中,一个标签库是由元信息和类组成的集合:1.标签处理器:实现定制标签功能的Java类。2.标签附加信息(TEI):向JSP容器提供边辑以确认标签属性和创建变量的类。3.标签库描述器(TLD):描述单个标签和整个标签库属性的XML文档。标签处理器和标签附加信息需要定位在JSP容器类载入器可以找到的地方。标签库描述器可在URL

465

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

JSP/Servlet/JSF--对标签库的深入研究

标签库Taglib 标签被定义和分布在一个称为标签库的结构中,一个标签库是由元信息和类组成的集合: 1.标签处理器:实现定制标签功能的Java类。 2.标签附加信息(TEI):向JSP容器提供边辑以确认标签属性和创建变量的类。 3.标签库描述器(TLD):描述单个标签和整个标签库属性的XML文档。 标签处理器和标签附加信息需要定位在JS...

origin 专栏 201

JSF、Servlet 和 JSP 有什么区别?

我有一些问题。这些是 :JSP 和 Servlet 是如何相互关联的?JSP 是某种 Servlet 吗?JSP 和 JSF 是如何相互关联的?JSF 是某种基于预构建 UI 的 JSP,如 ASP.NET-MVC 吗?

HuntsBot的博客 921

JSF,Servlet和JSP有什么区别?

JSP是在服务器计算机上运行的Java视图技术,它使您可以用客户端语言(例如HTML,CSS,JavaScript等)编写模板文本。JSP支持taglibs,这些标签库由Java代码片段支持,可让您动态控制页面流或输出。著名的taglib是JSTL。JSP还支持Expression Language,该语言可用于访问后端数据(通过页面,请求,会话和应用程序范围中可用的属性),通常与taglib结合...

u010859622的博客 386

JSF2标签库

核心标签库 名称空间标识符:http://java.sun.com/jsf/core 前缀:f HTML标签库 名称空间标识符:http://java.sun.com/jsf/html 前缀:h Facelets 名称空间标识符:http://java.sun.com/jsf/facelets 前缀:ui 复合组件标签库 名称空间标识符:http://java.sun.com/jsf/

CherishL_的专栏 608

JSF(JavaServer Faces) 介绍

JavaServer Pages(JSF) 在 Java 的 WEB 编程中已经被认为是下一个重大的事件。通过 JSF ,你可以在网页上使用 WEB 组件,来捕获用户行为产生的事件。不远的将来,Java 工具将支持这个技术,开发 WEB 应用程序将与我们现在开发 SWING 程序类似:拖放控件、写事件侦听器。本文是一个 JSF 的简要介绍,并且提供一个 JSF 的例子,用来展示 JSF 的事件驱动

赵小刀的文字吧 1231

JSF入门

第一章JSF的简述[thinker-yhm1218@hotmail.com]一、什么是JSF  JSF即JavaServer Faces,是一种新的用于构架j2ee应用用户界面的技术,适合于基于MVC架构的应用中。JSF技术的主要功能有:Managed Bean 工具 验证工具 丰富且可扩展的组件库 插入式呈现工具包 对具体用户事件响应的导航 跨请求保留应用程序状态 转换模型 本文将通过cnjsf

thinkersky的专栏 2651

jsp是什么?

尽管存在一些性能和维护上的不足,但其易用性和与Java EE其他技术的良好集成能力,使其在许多项目中仍然被广泛使用。通过掌握JSP的基本概念和使用方法,开发者可以有效地构建出功能丰富的Web应用程序。随着Web技术的发展,JSP的使用逐渐被其他更现代的技术所取代,如Spring MVC、JSF(JavaServer Faces)等。然而,JSP仍然在某些传统项目中保持活跃,特别是那些需要与现有Java EE技术栈集成的项目。:定义页面的属性和处理方式。

wtt12344321的博客 1559

Servlet和JSP规范及版本对应关系

所谓jsp规范就是你的jsp页面能 eg:如果你使用的是servlet2.5规范,那么你编写jsp必须满足JSP2.1规范 一般来说,JSP高版本会一些新特性,如果你在你的JSP页面添加了一些高版本的新特性,那么你的servlet版本也要对应的修改。                如果jsp也servlet版本不对应,也可能会报错。 1.JSP1.2规范是不支持el表达式的,从JSP2...

iteye_7017的博客 270

jsp的用法详解

一、jsp的概念 jsp(Java Server Pages)是一种动态网页技术,使用JSP标签可在HTML网页中插入Java代码。标签通常以<%开头,以%>结束。 jsp的本质就是一个servlet,jsp引擎将jsp转化为servlet即java代码,在编译成字节码文件即class文件(可执行文件),然后执行字节码文件。(放在Tomcat中的work文件夹中) 二、jsp功...

qq30211478的博客 4707
上一篇: ie8 beta 1 英文版已提供下载
下一篇: 微软mix08前线报道―scott guthrie大秀ie8和silverligh ...
Labber
博客等级 码龄19年 26粉丝 1976原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值