首页 Java java教程 什么是jsp标签库

什么是jsp标签库

May 15, 2019 pm 01:57 PM
jsp

什么是jsp标签库

推荐课程:Java教程

JSP标准标签库(JSTL)是一个JSP标签集合,它封装了JSP应用的通用核心功能。JSTL支持通用的、结构化的任务,比如迭代,条件判断,XML文档操作,国际化标签,SQL标签。 除了这些,它还提供了一个框架来使用集成JSTL的自定义标签。从概念上讲,标签就是很简单而且可重用的代码结构。比方说,在最新发布的JSPKit(在JSP Insider内)中,使用XML标签实现了对XML文档的轻松访问。

重要特性

易于安装在多个项目上

标签很容易从一个JSP项目迁移到其他项目。一旦建立了一个标签库,则只需要将所有的东西打包为一个JAR文件,你就可以在任何的JSP项目中重新使用。因为标签可以重新使用,标签库可以轻松地用于你自己的项目,所以标签库越来越通行。目前,最好的标签资源可以在JSPTags.com这个站点找到。

可以无限制地扩展和增加JSP的功能

扩展JSP 标签库可以具备JSP规范(JSP 1.2)中的任何特性和功能,你可以无限制地扩展和增加JSP的功能,而无需要等待下一版本JSP的出现。例如,你对JSP的include调用不太满意。你可以建立自己的include标签,该标签执行的是你自己的规范。

容易维护

标签库使得JSP的web应用程序非常易于维护,原因有:

(1)标签应用简单,对任何人而言都很容易使用、易于理解。

(2)所有的程序逻辑代码都集中放在的标签处理器和JavaBeans中。这意味着你在升级代码时,无需要对每个使用该代码的页面进行修改,你只需要修改集中的代码文件便可。

(3)如果需要加入新的功能,你也无需修改任何已经存在的页面,可以在标签中加入额外的属性,从而引进新的行为,而其它旧的属性不变,这样所有旧的页面还可以正常工作。 例如你有一个让所有文本变蓝的标签:

My Text

但在后来项目中,你又想让蓝色变暗。你可以保留原有的标签,只要为其增加一个新的属性:shade ,如下所示:

My Text

所有旧的标签仍然可以产生蓝色的文本,但现在你可以使用同一标签来产生变暗的蓝色文本了。

(4)标签提升了代码的重用性。那些经过多次测试和使用的代码肯定具有更少的bug。所以,使用定制标签的JSP页面也同样具有更少的缺陷,维护起来自然方便多了。

快速的开发时间

标签库提供一个简单的方式来重用代码。在服务器端的语言中,其中一个标准的重用代码方式是使用模板。相对于使用模板库,标签库是一个更好的解决办法。使用模板库,你必须为每个项目修改模板或者且建立严格的界面,而标签库则没有这些限制,并且拥有所有面向对象的好处,可以做到灵活和更有扩展性,而且,通过重用代码,你可以花费更少的时间来做开发,更多的时间可以用在设计你的web应用上。标签库的接口也很简单,非常容易做插入、使用和调试。

标签的组成结构

虽然标签库非常易于使用,不过要建立一个标签库的内部实现机制还是颇复杂的,起码要比建立一个简单的JavaBean复杂。这个复杂是来自于标签库是由几部分构成的。不过,你只需要掌握了Java和JSP的知识就够了。

一个简单的标签由下面的元素构成:

1.JavaBean:为了得到Java与生具来的面向对象的好处,可重用的代码应该放到一个独立的代码容器中,也就是JavaBean。这些JavaBeans并不是标签库必不可少的一部分,但它们是标签库用来执行所分配任务的基础代码模块。

2.标签处理器:标签处理器是标签库的真正核心。一个标签处理器(tag handler)引用它所需要的任何外部资源(JavaBean)并且负责访问JSP页面的信息(PageContext对象)。而JSP页面则把页面上设置的标签属性和标签体中的内容都传递给标签处理器,当标签处理器完成其处理过程后,它就会把处理后的输出结果回送给JSP页面做进一步处理。

3.标签库描述符(TLD文件):这是一个简单的XML文件,它记录着标签处理器的属性、信息和位置等信息。JSP容器通过这个文件来得知从哪里及如何调用一个标签库。

4.Web站点的web.xml文件:这是Web站点的初始化文件,在这个文件中,需要定义了Web站点中用到的自定义标签,以及用来描述每个自定义标签的tld文件。

5.发布文件(WAR或JAR文件):如果你想重用自定义标签的话,你需要一个方法来将它由一个项目迁移到其他项目中去。将标签库打包为一个JAR文件是一个简单而且有效的方式。

6.JSP页面上的标签库声明:要在JSP页面中的使用某个自定义标签的话,需要使用标签库标示符在页面上进行声明。

看来要做的工作很多,刚开始用的时候当然会有点棘手,不过其实并不是很难。它的要点并不在于编码,而是在于如何将各部分正确地组织起来。这种层次性的结构是很重要的,它令标签的使用灵活和更容易转移。更重要的事,这些层次可以让整个建立标签库的过程都能通过JSP IDE(JSP的集成开发环境)自动完成。JSP IDE更可以自动完成创建定制标签的大部分工作,而你自己则只需要负责建立代码和标签处理器。(注意:一个标签处理器仅定义一个自定义标签;一个标签库是几个处理相同任务的标签处理器的集合)

在这篇文章中只简要地讨论了标签库的好处。标签库实际上还有许多其它强大的功能。标签库促使JSP开发进入了前所未有的新天地。对JSP开发人员来说这确实是一种很令人振奋的新技术,因为他们得到了一个可将JSP转到各个应用并且建立任何类型web应用的工具。标签库让JSP变成了最丰富、最具动态开发能力的、强大的Web编程环境。它的功能只受我们的想象和创造力限制。

以上是什么是jsp标签库的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌
威尔R.E.P.O.有交叉游戏吗?
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

jsp是属于前端还是后端 jsp是属于前端还是后端 Jan 28, 2023 pm 06:23 PM

jsp属于后端。jsp的本质是一种servlet,而servlet又是服务器端的java应用程序,所以jsp是属于后端的技术。JSP部署于网络服务器上,可响应客户端发送的请求,并根据请求内容动态地生成HTML、XML或其他格式文档的Web网页,然后返回给请求者。JSP技术以Java作为脚本语言,为用户HTTP请求提供服务,并能与服务器上的其它Java程序共同处理复杂的业务需求。

jsp和html区别在哪 jsp和html区别在哪 Jan 09, 2024 am 10:46 AM

jsp和html区别:1、运行机制;2、用途;3、与Java的关系;4、功能;5、与后端的关系;6、速度;7、可维护性和扩展性;8、学习和使用的难易程度;9、文件后缀和识别工具;10、社区和支持;11、安全性。详细介绍:1、运行机制,HTML是一种标记语言,主要用于描述和定义网页的内容,它运行在客户端,由浏览器解释执行,JSP是一种动态网页技术,运行在服务器端等等。

SpringBoot项目如何整合JSP SpringBoot项目如何整合JSP May 12, 2023 pm 07:40 PM

新建好springboot项目以后目录如下:第一步:在项目的pom文件中加入配置jsp所需要的jar包代码:org.apache.tomcat.embedtomcat-embed-jasperprovided第二步:在main路径下新建目录webapp,在webapp下新建路径WEB-INF,在WEB-INF下新建路径jsp,在这个路径下放置我们要使用的jsp文件第三步:在主配置文件中配置jsp文件的访问路径和后缀代码:spring.mvc.view.prefix=/WEB-INF/jsp/sp

jsp分页功能怎么实现 jsp分页功能怎么实现 Mar 04, 2024 pm 04:40 PM

实现步骤:1、在JSP页面中引入JSTL标签库;2、从数据库中获取数据;3、对数据进行分页处理;4、在页面中显示分页导航条;5、根据当前页码和每页显示数量,从分页后的数据中获取对应的数据并显示在页面上即可。

如何用jsp+mysql实现网页的分页查询 如何用jsp+mysql实现网页的分页查询 May 30, 2023 pm 03:58 PM

一、实现分页查询的核心sql语句(1)查询数据库的记录总数的sql语句:selectcount(*)from+(表名);(2)每次查询的记录数的sql语句:其中:0是搜索的索引,2是每次查找的条数。select*from表名limit0,2;二、代码实现*上篇写过这两个类,DBconnection类:用于获取数据库连接,Author对象类。这两个类的代码点击连接查看。点击链接查看DBconnection类和Author对象类(1)登录页面:index.jsp。Inserttitlehere用户列

JSP能否被PHP取代? JSP能否被PHP取代? Mar 21, 2024 am 11:03 AM

JSP能否被PHP取代?JSP(JavaServerPages)和PHP(HypertextPreprocessor)都是常用的服务器端脚本语言,用于动态生成网页内容。虽然它们各有特点和优势,但在实际应用中,是否可以完全取代对方呢?本文将分析两者的优缺点,并通过具体的代码示例进行比较。首先,我们来看一下JSP和PHP各自的特点。JSP是一种基于Java的

jsp是什么格式的文件 jsp是什么格式的文件 Jan 24, 2024 pm 04:01 PM

​JSP是一种动态网页技术标准,其文件格式是在传统的网页HTML文件(.htm,.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。

Web开发的Java技术栈:了解Java EE、Servlet、JSP、Spring等常用于Web开发的技术 Web开发的Java技术栈:了解Java EE、Servlet、JSP、Spring等常用于Web开发的技术 Dec 26, 2023 pm 02:29 PM

JavaWeb开发技术栈:掌握JavaEE、Servlet、JSP、Spring等用于Web开发的技术随着互联网的迅速发展,在当今的软件开发领域,Web应用的开发已经成为一种非常重要的技术需求。而Java作为一种广泛应用的编程语言,其在Web开发领域也有着重要的地位。JavaWeb开发技术栈涉及多项技术,如JavaEE、Servlet、JSP、Spr

See all articles