タグライブラリ
日本語 | 付箋辞書 |
英語 | tag library |
ふりがな | たぐらいぶらり |
フリガナ | タグライブラリ |
JSPで使用するタグを集めたライブラリ。
HTMLタグでもXMLタグでもない、JSP専用のタグを集めたもの。
タグライブラリは新規に作成することができる。つまり、元々組み込まれたものだけでなく、様々な人間が作り、追加することができる。
タグライブラリは、タグの形式を指定するXMLファイルと、各タグに関連したクラスによって構成される。
JSPは、タグライブラリのタグが使用されると関連するクラスのインスタンスを作成しメソッドを呼び出す。クラス内ではタグとしての処理を行う。
つまり、タグライブラリは、JSPの上ではHTMLタグのような「<」と「>」の形式で記述でき、しかも実際にはクラスのメソッドを呼び出して処理することができるわけである。
この最大のメリットは、JSPにスクリプトレットやJSP式、JSP宣言を記述する必要がない、ということである。
JSPはHTML出力を行うためのものであり、その中にJavaのプログラムが混ざると、デザインや修正が難しくなり、再利用も難しくなる。
そこで、Javaのプログラムを全てタグライブラリに置き換えることで、JSPからJavaプログラムを完全に排除することができる。
JSPに、「<」と「>」によるシンプルな記述のみで、Javaプログラムと同等の処理を行うことができる。また、スクリプトレット等による記述はJSP間で共有できないが、タグライブラリとして作成すれば各JSPで使い回すことができる。
また、タグライブラリは元はクラスであるため、JUnit等による単体テストが可能となり、また継承によって既存のタグライブラリを拡張することもできる。
タグライブラリには、標準で<jsp>タグがあるが、これは機能的に弱いため、ほとんど使うことはない。
代わりに、JSTLタグライブラリやStrutsタグライブラリという、非常に多機能のタグライブラリが存在するため、これらの使用を強く勧める。
また、必要であれば自分で作ることもできる。これを「カスタムタグライブラリ」という。
タグライブラリを使用するメリットは絶大であり、JSPにJavaプログラムを記述する場合には、タグライブラリが使用できないか考慮した方がいいだろう。
HTMLタグでもXMLタグでもない、JSP専用のタグを集めたもの。
タグライブラリは新規に作成することができる。つまり、元々組み込まれたものだけでなく、様々な人間が作り、追加することができる。
タグライブラリは、タグの形式を指定するXMLファイルと、各タグに関連したクラスによって構成される。
JSPは、タグライブラリのタグが使用されると関連するクラスのインスタンスを作成しメソッドを呼び出す。クラス内ではタグとしての処理を行う。
つまり、タグライブラリは、JSPの上ではHTMLタグのような「<」と「>」の形式で記述でき、しかも実際にはクラスのメソッドを呼び出して処理することができるわけである。
この最大のメリットは、JSPにスクリプトレットやJSP式、JSP宣言を記述する必要がない、ということである。
JSPはHTML出力を行うためのものであり、その中にJavaのプログラムが混ざると、デザインや修正が難しくなり、再利用も難しくなる。
そこで、Javaのプログラムを全てタグライブラリに置き換えることで、JSPからJavaプログラムを完全に排除することができる。
JSPに、「<」と「>」によるシンプルな記述のみで、Javaプログラムと同等の処理を行うことができる。また、スクリプトレット等による記述はJSP間で共有できないが、タグライブラリとして作成すれば各JSPで使い回すことができる。
また、タグライブラリは元はクラスであるため、JUnit等による単体テストが可能となり、また継承によって既存のタグライブラリを拡張することもできる。
タグライブラリには、標準で<jsp>タグがあるが、これは機能的に弱いため、ほとんど使うことはない。
代わりに、JSTLタグライブラリやStrutsタグライブラリという、非常に多機能のタグライブラリが存在するため、これらの使用を強く勧める。
また、必要であれば自分で作ることもできる。これを「カスタムタグライブラリ」という。
タグライブラリを使用するメリットは絶大であり、JSPにJavaプログラムを記述する場合には、タグライブラリが使用できないか考慮した方がいいだろう。
参考サイト
<%-- webapps/sample-servlet/sample.jsp --%>
<%-- http://localhost:8080/sample-servlet/sample.jsp でアクセスできます。 --%>
<%@ page contentType="text/html; charset=Windows-31J" pageEncoding="Windows-31J" %>
<%--
pageEncodingには、このファイルを保存した時の文字コードを指定してください。
Windowsであれば"Windows-31J"を指定すればいいでしょう。
--%>
<%--
タグライブラリのひとつ、JSTLをを使用します。
詳しい使用方法は「JSTL」の項目を参照してください。
--%>
<%@ taglib uri="/WEB-INF/lib/c.tld" prefix="c" %>
<!--
タグライブラリを使うためのJSPディレクティブです。
uriで、タグライブラリを定義するXMLファイルc.tldを相対パスで指定します。
prefixで、タグライブラリの「苗字」を付けます。
-->
<html>
<head>
<title>JSPのサンプル</title>
</head>
<body>
<c:out value="あいうえお"/>
<%-- 出力結果 --%>
<%--
あいうえお
--%>
</body>
</html>
<%-- http://localhost:8080/sample-servlet/sample.jsp でアクセスできます。 --%>
<%@ page contentType="text/html; charset=Windows-31J" pageEncoding="Windows-31J" %>
<%--
pageEncodingには、このファイルを保存した時の文字コードを指定してください。
Windowsであれば"Windows-31J"を指定すればいいでしょう。
--%>
<%--
タグライブラリのひとつ、JSTLをを使用します。
詳しい使用方法は「JSTL」の項目を参照してください。
--%>
<%@ taglib uri="/WEB-INF/lib/c.tld" prefix="c" %>
<!--
タグライブラリを使うためのJSPディレクティブです。
uriで、タグライブラリを定義するXMLファイルc.tldを相対パスで指定します。
prefixで、タグライブラリの「苗字」を付けます。
-->
<html>
<head>
<title>JSPのサンプル</title>
</head>
<body>
<c:out value="あいうえお"/>
<%-- 出力結果 --%>
<%--
あいうえお
--%>
</body>
</html>
<%-- webapps/sample-servlet/sample.jsp --%> <%-- http://localhost:8080/sample-servlet/sample.jsp でアクセスできます。 --%> <%@ page contentType="text/html; charset=Windows-31J" pageEncoding="Windows-31J" %> <%-- pageEncodingには、このファイルを保存した時の文字コードを指定してください。 Windowsであれば"Windows-31J"を指定すればいいでしょう。 --%> <%-- タグライブラリのひとつ、JSTLをを使用します。 詳しい使用方法は「JSTL」の項目を参照してください。 --%> <%@ taglib uri="/WEB-INF/lib/c.tld" prefix="c" %> <!-- タグライブラリを使うためのJSPディレクティブです。 uriで、タグライブラリを定義するXMLファイルc.tldを相対パスで指定します。 prefixで、タグライブラリの「苗字」を付けます。 --> <html> <head> <title>JSPのサンプル</title> </head> <body> <c:out value="あいうえお"/> <%-- 出力結果 --%> <%-- あいうえお --%> </body> </html>