jstl自定义小函数

谢谢lhy11900的题目。我研究了一下,可用以下办法。

1. 建一个 WEB-INF/tlds/ 目录,在里面写一个 demo.tld, 也就是 WEB-INF/tlds/demo.tld, 内容如下:

代码:
<?xml version="1.0" encoding="UTF-8"?>
<taglib version="2.0" 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 web-jsptaglibrary_2_0.xsd">
  <tlib-version>1.0</tlib-version>
  <short-name>demo</short-name>
  <uri>/WEB-INF/tlds/demo</uri>
 
     <function>
        <description>Floor</description>
        <name>round</name>
        <function-class>java.lang.Math</function-class>
        <function-signature>int round( double )</function-signature>
    </function>
 
</taglib>


2. 在你的JSP的 <%@page ..%>后面加一行:
代码:
<%@ taglib uri="/WEB-INF/tlds/demo"  prefix="fn"%>


3. 然后把那行改为:
代码:
<c:out value="${fn:round(10/3)}"/>


你可以用自己写的class,但想要用的函数必须是static的。

你可能感兴趣的:(Web,jsp,xml)