jstlラベル関数をカスタマイズし、開発しやすい
3902 ワード
JSTLラベル関数をカスタマイズし、ページの呼び出しを便利にし、呼び出し関数を通じてデータを返してページ表示を行う.簡単で便利で、開発中によく使われる.
以下では、省を表示して手順を実行します.
ステップ1:クラスを新規作成するには、次の手順に従います.
ステップ2:tldラベル関数登録ファイルの作成
myfunctions.tld
ステップ3:web.xmlファイルにtldを登録する
ステップ4:jspを作成してテストする
以下では、省を表示して手順を実行します.
ステップ1:クラスを新規作成するには、次の手順に従います.
package demo;
import java.util.ArrayList;
import java.util.List;
//
// JSTL
public class UtilFunction {
//
public static List getProvinces() {
List provinces = new ArrayList();
//
provinces.add(" ");
provinces.add(" ");
provinces.add(" ");
provinces.add(" ");
provinces.add(" ");
return provinces;
}
}
ステップ2: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>
<!-- JSTL -->
<function>
<name>getProvinces</name>
<function-class>demo.UtilFunction</function-class>
<function-signature>java.util.List getProvinces()</function-signature>
</function>
</taglib>
ステップ3: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>
<!-- JSTL -->
<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>
ステップ4: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>