自定义JSTL标签函数,方便页面的调用,通过调用函数返回数据进行页面显示。简单、方便,在开发中时常用的到。
以下通过显示省份来看实现步骤:
第一步:新建一个类如下:
UtilFunction.java
- package demo;
-
-
import java.util.ArrayList;
-
import java.util.List;
-
-
-
-
public class UtilFunction {
-
-
public static List getProvinces() {
-
List provinces = new ArrayList();
-
-
-
provinces.add("广东省");
-
provinces.add("广西省");
-
provinces.add("山东省");
-
provinces.add("四川省");
-
provinces.add("江西省");
-
-
return provinces;
- }
- }
第二步:编写tld标签函数注册文件
myfunctions.tld
- <?xml version="1.0" encoding="UTF-8" ?>
-
-
<taglib xmlns="http://java.sun.com/xml/ns/j2ee"
-
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd"
-
version="2.0">
-
-
<tlib-version>1.0</tlib-version>
-
<short-name>my</short-name>
-
<uri>http://www.changtusoft.cn/test/functions</uri>
-
-
-
<function>
-
<name>getProvinces</name>
-
<function-class>demo.UtilFunction</function-class>
-
<function-signature>java.util.List getProvinces()</function-signature>
-
</function>
-
</taglib>
第三步:在web.xml文件中注册tld
- <?xml version="1.0" encoding="UTF-8"?>
-
<web-app version="2.5"
-
xmlns="http://java.sun.com/xml/ns/javaee"
-
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
-
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
-
<welcome-file-list>
-
<welcome-file>index.jsp</welcome-file>
-
</welcome-file-list>
-
-
-
<jsp-config>
-
<taglib>
-
<taglib-uri>http://www.changtusoft.cn/test/functions</taglib-uri>
-
<taglib-location>/WEB-INF/myfunctions.tld</taglib-location>
-
</taglib>
-
</jsp-config>
-
-
</web-app>
第四步:编写jsp进行测试
index.jsp
<%@ page language="java" import="java.util.*" pageEncoding="gbk"%>
<!-- 导入jstl标签库 -->
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!-- 导入自定义jstl函数 -->
<%@ taglib prefix="my" uri="http://www.changtusoft.cn/test/functions" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>自定义JSTL函数</title>
</head>
<body>
省份:
<select name="provinces">
<option>--请选择省份--</option>
<c:forEach items="${my:getProvinces()}" var="p">
<option>${p }</option>
</c:forEach>
</select>
</body>
</html>
部署例子到tomcat测试: http://localhost:8080/jstl_functions/index.jsp
结果可以显示省份下拉框表示成功...
分享到:
相关推荐
通过以上步骤,你就可以在实际项目中实现并使用自定义标签和自定义JSTL函数了。这不仅能够简化代码,提高代码质量,还能使团队成员更容易理解和维护项目。同时,这种定制化的功能也可以根据项目需求进行扩展,实现...
jstl自定义标签和函数思维导图
在这个场景中,我们重点关注的是JSTL的核心标签库以及如何使用自定义标签。 `jstl.jar`是JSTL的核心库,包含了实现JSTL标准标签功能的类和接口。它提供了控制流标签(如if、choose、when、otherwise)、迭代标签...
**三、部署和使用自定义JSTL标签** 1. **配置应用服务器**:将自定义的JAR文件放入应用服务器的相应目录,如Tomcat的`lib`目录。 2. **在JSP中引用**:在JSP页面中引入自定义标签库: ```jsp ``` 3. **使用...
本文将深入探讨JSP 2.0中的自定义标签和自定义标签函数,以及如何配置和使用它们。 **一、自定义标签** 自定义标签是JSP中的一种高级特性,它允许开发者创建类似于HTML标签的自定义组件。这种组件可以封装复杂的...
在Java Web开发中,自定义标签(Custom Tags)和自定义函数(Custom Functions)是提高代码复用性和可维护性的重要手段。它们是JSP(JavaServer Pages)标准标签库(JSTL)的一种扩展,允许开发者创建符合特定业务...
`使用说明.txt`文件通常会详细解释如何在项目中引入和使用JSTL,包括配置步骤、标签的用法示例以及常见问题的解决方法。建议仔细阅读该文件以更好地理解和应用JSTL。 总之,JSTL通过提供一系列预定义的标签,使JSP...
下面我们将详细探讨JSTL自定义函数的开发步骤、使用方法以及JSTL提供的标准函数。 首先,开发自定义函数主要分为以下几步: 1. **创建Java类**:你需要定义一个Java类,该类包含你需要在EL表达式中调用的静态方法...
在"jstl标签包"中,我们主要关注的是两个关键的组件:jstl.jar和standard.jar。 **jstl.jar** 是JSTL的主要库文件,包含了JSTL核心标签库。这个库提供了如条件语句(if/else)、迭代(foreach)、函数调用等功能,...
JSTL中的某些标签功能可能与自定义标签重复,但在实际开发中,两者常常结合使用,互补不足。例如,自定义标签可以处理特定业务逻辑,而JSTL则负责通用的控制流、迭代和I/O操作。 总结,通过自定义标签,我们可以...
每个`taglib`元素定义了一个TLD(Tag Library Descriptor)文件的位置,这告诉服务器JSTL标签库的位置和元数据。 总之,JSTL通过提供丰富的标签来增强JSP页面的功能,而解决"无法解析绝对uri"的错误通常涉及到正确...
JSTL标签通常与EL结合使用,通过${}表达式来引用和操作数据。 7. **JSTL的优点** - 提高代码可读性:通过标签代替脚本,使得JSP页面更易于理解和维护。 - 分离关注点:让开发者专注于业务逻辑,而不是页面展示...
而`standard.jar`则是另一个关键组件,它是JSTL的依赖,提供了EL(Expression Language)和JSTL共同使用的Java API,如Javax.servlet.jsp.jstl.core库,这些API为JSTL标签提供了支持。 **2. 引入JSTL到项目中:** ...
在JSP页面中,要使用自定义标签,首先需要在页面指令中声明TLD文件的位置,然后就可以像使用标准JSTL标签一样使用自定义标签了。例如: ```jsp ... ``` 这里,`prefix`定义了标签前缀,`uri`指定了TLD文件的路径。...
做过大型网站前台的Web开发程序员最头疼的事情就是前台首页的布局,这其中最最头疼的就是标题字符的截取的问题,虽然有fn:substring,但表现率...在我们老大的指点下,了解了如何自定义EL函数,哈哈,今天实现了它。
3. 在JSP页面中使用自定义标签:引入TLD文件后,可以在JSP页面中像使用内置标签一样使用自定义标签。 4. 配置和部署:将TLD文件和自定义标签处理类打包成JAR,然后在web.xml中声明这个JAR为自定义标签库。 在这个...
在截取字符串时,jstl标签提供了两种方法:一是使用jstl原有的标签库中的方法,二是使用自定义函数。 使用jstl原有的标签库中的方法 在使用jstl标签时,我们可以使用jstl原有的标签库中的方法来截取字符串。例如,...
除了使用JSTL和Struts自带的函数外,开发者还可以根据自己的需求创建自定义的EL函数。自定义函数需要实现特定的接口或者继承特定的类,并在TLD文件中进行声明。例如,若要创建一个名为`myFunction`的自定义函数,...
在“源码”和“工具”的标签中,可能涉及到如何查看和分析`FunctionMapper`的源代码,以及如何在不同的开发工具中使用和调试自定义EL函数。这可能包括IDE的设置,如Eclipse或IntelliJ IDEA中的配置,以及如何通过...