Struts2标签库简介

本文记录Java学习过程中遇到的Struts2标签库简介~

在JavaWeb中,Struts2标签库是一个比较完善,而且功能强大的标签库,它将所有标签都统一到一个标签库中,从而简化了标签的使用,它还提供主题和模板的支持,极大地简化了视图页面代码的编写,同时它还提供对Ajax的支持,大大的丰富了视图的表现效果。与JSTL(JSP Standard Library,JSP标准标签库)相比,Struts2标签库更加易用和强大。

Struts2标签库分类

早期的JSP页面需要嵌入大量的Java脚本来进行输出,这样使得一个简单的JSP页面加入了大量的代码,不利于代码的可维护性和可读性。随着技术的发展,逐渐的采用标签库来进行JSP页面的开发,这使得JSP页面能够在很短的时间内完成开发,而且代码通俗易懂,大大的方便了开发者,Struts2的标签库就是这样发展起来的。

Struts2框架对整个标签库进行了分类,按其功能大致可分为两类,如下图:

由图中可以看出,Struts2标签库主要分为两类:普通标签和UI标签。普通标签主要是在页面生成时,控制执行的流程。UI标签则是以丰富而可复用的HTML文件来显示数据。

普通标签又分为控制标签(Control Tags)和数据标签(Data Tags)。控制标签用来完成条件逻辑、循环逻辑的控制,也可用来做集合的操作。数据标签用来输出后台的数据和完成其他数据访问功能。

UI标签又分为表单标签(Form Tags)、非表单标签(Non-Form Tags)和Ajax标签。表单标签主要用来生成HTML页面中的表单元素,非表单标签主要用来生成HTML的<div>标签及输出Action中封装的信息等。Ajax标签主要用来提供Ajax技术支持。

Struts2标签的使用

Struts2标签库被定义在struts-tags.tld文件中,可以在struts-core-2.3.24.jar中的META-INF目录下找到它。要使用struts2的标签库,一般只需在JSP文件使用taglib指令导入Struts2标签库。

示例代码:

<%@taglib prefix="s" uri="/struts-tags" %>

在上述代码中,taglib指令的uri属性用于指定引入标签库描述符文件的URI,prefix属性用于指定引入标签库描述文件的前缀。需要注意的是,在JSP文件中,所有的Struts2标签库都是用"s"前缀。

标签: none