Derek.
Guo
BLOG
BlogJava
首頁(yè)
新隨筆
聯(lián)系
聚合
管理
隨筆-86 評(píng)論-33 文章-0 trackbacks-0
自定義標(biāo)簽
=========自定義標(biāo)簽學(xué)習(xí)總結(jié)========= 2005年7月28日 09:54:07 Derek
標(biāo)簽的運(yùn)行方式是:
JSP頁(yè)面解析中發(fā)現(xiàn)自定義標(biāo)簽,則到上面的標(biāo)簽說(shuō)明中尋找:如
<%
@ taglib uri
=
"
/mytitle.tld
"
prefix
=
"
dada
"
%>
此時(shí)它會(huì)找到該標(biāo)簽的uri ,uri 在web.xml中已經(jīng)定義了
<
taglib
>
<
taglib
-
uri
>/
mytitle.tld
</
taglib
-
uri
>
<
taglib
-
location
>/
WEB
-
INF
/
mytitle.tld
</
taglib
-
location
>
</
taglib
>
此時(shí)它會(huì)通過(guò)uri在web.xml中查找到該標(biāo)簽的描述文件tld。那么在tld描述文件中又定義了該標(biāo)簽的處理類(lèi),具體完成業(yè)務(wù)的操作,標(biāo)簽處理類(lèi)繼承TagSupport,處理類(lèi)完成操作后將返回頁(yè)面。
<
name
>
title
</
name
>
<
tagclass
>
com.derek.tags.TitleTag
</
tagclass
>
準(zhǔn)備工作 :首先在WEB-INF\lib下添加taglibs-log.jar包
1、創(chuàng)建標(biāo)簽描述文件
在WEB-INF下新建一個(gè)tld文件,該文件描述了此tld文件將由那個(gè)處理類(lèi)完成操作,并且定義了該標(biāo)簽的屬性。一個(gè)<taglib>中可以有很多個(gè)<tag>,由<name>標(biāo)簽名區(qū)分。
<?
xml version
=
"
1.0
"
encoding
=
"
UTF-8
"
?>
<!
DOCTYPE taglib PUBLIC
"
-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.1//EN
"
"
http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd
"
>
<
taglib
>
<
tlibversion
>
1.0
</
tlibversion
>
<
jspversion
>
1.1
</
jspversion
>
<
shortname
>
html
</
shortname
>
<
uri
>
http:
//
jakarta.apache.org/struts/tags-html</uri>
<
tag
>
<
name
>
title
</
name
>
<
tagclass
>
com.derek.tags.TitleTag
</
tagclass
>
<
bodycontent
>
empty
</
bodycontent
>
<
attribute
>
<
name
>
begin
</
name
>
<
required
>
true
</
required
>
</
attribute
>
<
attribute
>
<
name
>
end
</
name
>
<
required
>
true
</
required
>
</
attribute
>
</
tag
>
</
taglib
>
2、創(chuàng)建標(biāo)簽處理類(lèi)
該類(lèi)繼承 TagSupport,覆蓋doEndTag()方法
package com.derek.tags;
import javax.servlet.jsp.tagext.TagSupport;
import javax.servlet.jsp.JspException;
import java.util.Properties;
import java.io.
*
;
import javax.servlet.jsp.JspWriter;
public
class
TitleTag extends TagSupport {
private
String begin
=
null
;
private
String end
=
null
;
public
TitleTag() {}
public
String getBegin() {
return
begin;}
public
void
setBegin(String begin) {
this
.begin
=
begin;}
public
String getEnd(){
return
end;}
public
void
setEnd(String end){
this
.end
=
end;}
public
int
doEndTag() throws JspException {
Properties ps
=
(Properties)pageContext.getAttribute(
"
ps
"
,pageContext.APPLICATION_SCOPE);
//
從上下文中取的message.properties
JspWriter jw
=
pageContext.getOut();
if
(begin
!=
null
&&
begin.length()
>
0
){
String header
=
ps.getProperty(begin);
System.
out
.println(
"
頁(yè)眉
"
+
begin);
try
{
jw.println(header);
}
catch
(IOException ex) {ex.printStackTrace();}
}
if
(end
!=
null
&&
end.length()
>
0
){
String footer
=
ps.getProperty(end);
System.
out
.println(
"
頁(yè)腳
"
+
end);
try
{
jw.println(footer);
}
catch
(IOException ex1) {ex1.printStackTrace();}
}
return
SKIP_BODY;
}
public
void
release() {
super.release();
}
}
3、修改web.xml文件
在web.xml中<web-app>下添加,將標(biāo)簽的uri與具體標(biāo)簽描述文件綁定
<
taglib
>
<
taglib
-
uri
>/
mytitle.tld
</
taglib
-
uri
>
<
taglib
-
location
>/
WEB
-
INF
/
mytitle.tld
</
taglib
-
location
>
</
taglib
>
4、在頁(yè)面中使用標(biāo)簽
首先在頁(yè)面中導(dǎo)入標(biāo)簽
<%
@ taglib uri
=
"
/mytitle.tld
"
prefix
=
"
dada
"
%>
該句表示標(biāo)簽前綴為“dada”的標(biāo)簽將調(diào)用uri指定的標(biāo)簽,uri可以隨便起名字,但一定要可web.xml中定義的uri相對(duì)應(yīng)。
然后就可以在頁(yè)面中使用了
<
dada:title begin
=
""
end
=
"
footer
"
/>
posted on 2005-09-11 09:56
Derek.Guo
閱讀(543)
評(píng)論(0)
編輯
收藏
所屬分類(lèi):
Java
新用戶注冊(cè)
刷新評(píng)論列表
只有注冊(cè)用戶
登錄
后才能發(fā)表評(píng)論。
網(wǎng)站導(dǎo)航:
博客園
IT新聞
Chat2DB
C++博客
博問(wèn)
管理
相關(guān)文章:
J2SE6 分析工具
Hibernate屬性延遲加載
JAVA縮放圖片(轉(zhuǎn)貼)
工具分析GC日志
java虛擬機(jī)參數(shù)詳解
GC調(diào)優(yōu)
Spring配置總結(jié)
JmakiDemo
Hibernate3支持DetachedCriteria(轉(zhuǎn)貼)
JAVA訪問(wèn)LDAP
<
2005年9月
>
日
一
二
三
四
五
六
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
1
2
3
4
5
6
7
8
留言簿
(7)
給我留言
查看公開(kāi)留言
查看私人留言
隨筆分類(lèi)
(83)
Cache(2)
Database(9)
Java(51)
Linux/Unix(17)
NoSqlDB(4)
文章分類(lèi)
Mongodb
技術(shù)網(wǎng)站
54chen
Coreseek中文全文檢索
Dominic-Blog
GFlot
GWT charting library http://repository.jboss.org/maven2/ca/nanometrics/gflot/1.0.0/
GWT Showcase
JavaCC、解析樹(shù)和 XQuery 語(yǔ)法
Mongodb手冊(cè)
MySQL 5.1參考手冊(cè)
Mysql部落
Nginx 的中文維基
Redis
Sphinxsearch
spymemcached
A simple, asynchronous, single-threaded memcached client written in java.
Spymemcached
Tigase
輕量高性能JABBER/XMPP服務(wù)器,帶GWT開(kāi)發(fā)的客戶端
Tomcat 系統(tǒng)架構(gòu)與設(shè)計(jì)模式
xmemcached
Extreme performance modern memcached client for java
播布客
百度文庫(kù)瀏覽器分析及實(shí)現(xiàn)
紅聯(lián)Linux
積分與排名
積分 - 188745
排名 - 306
最新隨筆
1.?擴(kuò)容kvm虛擬機(jī)鏡像磁盤(pán)空間
2.?分布式文件系統(tǒng)Glusterfs
3.?KVM虛擬機(jī)克隆網(wǎng)絡(luò)問(wèn)題
4.?NFS 防火墻設(shè)置
5.?使用 sendfile() 提升網(wǎng)絡(luò)文件發(fā)送性能
6.?Web服務(wù)器性能/壓力測(cè)試工具h(yuǎn)ttp_load、webbench、ab、Siege(轉(zhuǎn))
7.?Magent:Memcached集群代理
8.?Mongodb Import Export Tools
9.?Mongodb dbshell Reference
10.?轉(zhuǎn)mongodb入門(mén)
11.?Mongodb Dynamic querys select
12.?mysql常用的hint
13.?Mysql innodb引擎優(yōu)化
14.?J2SE6 分析工具
15.?liunx下安裝Subversion
16.?ORACLE 中dbms_stats的使用
17.?Memcached 剖析(轉(zhuǎn))
18.?Window下配置SVN服務(wù)器與客戶端(轉(zhuǎn))
19.?Oracle 10g Recycle Bin
20.?Oracle中分區(qū)表的使用
最新評(píng)論
1.?re: 轉(zhuǎn)mongodb入門(mén)[未登錄](méi)
學(xué)習(xí)了。、多謝分享
--Z
2.?re: Java調(diào)用Linux命令
這個(gè)很不錯(cuò),謝謝了!我正需要這個(gè)功能!
--網(wǎng)絡(luò)記事本
3.?re: Hibernate 本地SQL查詢SQLQuery
不錯(cuò),很受用
--happytjn
4.?re: DES加密
評(píng)論內(nèi)容較長(zhǎng),點(diǎn)擊標(biāo)題查看
--woxiangbo
5.?re: JAVA縮放圖片(轉(zhuǎn)貼)
希望能用
--moguji
閱讀排行榜
1.?ORACLE 中dbms_stats的使用(18892)
2.?Hibernate 本地SQL查詢SQLQuery(16596)
3.?Hibernate批量更新和批量刪除(11596)
4.?JProfiler遠(yuǎn)程監(jiān)控Tomcat(9948)
5.?Java調(diào)用Linux命令(7451)
6.?Spring+Hibernate+Struts(6624)
7.?Spring DataSource注入(5719)
8.?Spring+hibernate分頁(yè)查詢(4595)
9.?Spring Hibernate 模板實(shí)現(xiàn)分頁(yè)(4579)
10.?java虛擬機(jī)參數(shù)詳解(4386)
11.?Hibernate one-to-many學(xué)習(xí)筆記(4329)
12.?Apache + Tomcat*2集群 負(fù)載平衡(Linux環(huán)境)(4114)
13.?工具分析GC日志(2991)
14.?WEB定時(shí)器-Timer(2923)
15.?Solaris系統(tǒng)進(jìn)程的查看和管理(2638)
16.?Hibernate-Extension和Middlegen-Hibernate(2562)
17.?Spring配置總結(jié)(2351)
18.?JAVA縮放圖片(轉(zhuǎn)貼)(2320)
19.?Struts中l(wèi)ogic:iterate標(biāo)記的使用(2307)
20.?JAVA訪問(wèn)LDAP(2295)
21.?Tomcat 通過(guò)數(shù)據(jù)庫(kù)驗(yàn)證的配置方法(BASIC,FORM).(2217)
22.?Tomcat內(nèi)存配置(2194)
23.?Tomcat5.0連接池(2058)
24.?JAVA的RSS閱讀器(2009)
25.?數(shù)據(jù)庫(kù)性能 常用SQL(1928)
26.?Oracle中分區(qū)表的使用(1842)
27.?Hibernate屬性延遲加載(1835)
28.?Hibernate主鍵生成方式(1833)
29.?GC調(diào)優(yōu)(1796)
30.?hibernate二級(jí)緩存攻略 Ehcache(轉(zhuǎn)貼)(1786)
31.?EL表達(dá)式(1756)
32.?RedHat終端中文亂碼解決(1719)
33.?NFS 防火墻設(shè)置(1715)
34.?ORACLE CTXCAT-CATSEARCH(1713)
35.?Magent:Memcached集群代理(1624)
36.?轉(zhuǎn)mongodb入門(mén)(1585)
37.?Hibernate3.0批量更新和批量刪除(1515)
38.?分布式文件系統(tǒng)Glusterfs(1509)
39.?Spring 定時(shí)器(1485)
40.?Struts常用標(biāo)簽(1473)
Powered by:
博客園
模板提供:
滬江博客
Copyright ©2025 Derek.Guo
MSN:envoydada@hotmail.com QQ:34935442
主站蜘蛛池模板:
丰满妇女做a级毛片免费观看
|
亚洲国产日韩成人综合天堂
|
91免费国产视频
|
亚洲欧美日本韩国
|
2022年亚洲午夜一区二区福利
|
亚洲成av人片一区二区三区
|
国产一卡2卡3卡4卡无卡免费视频
|
91精品成人免费国产
|
精品在线观看免费
|
国产亚洲精品影视在线
|
久久久无码精品亚洲日韩京东传媒
|
免费观看亚洲人成网站
|
免费观看男人免费桶女人视频
|
亚洲成年人免费网站
|
最近最新高清免费中文字幕
|
无码AV片在线观看免费
|
caoporn成人免费公开
|
污网站在线免费观看
|
亚洲精品无码久久
|
亚洲精华液一二三产区
|
亚洲日韩精品国产一区二区三区
|
亚洲视频在线一区二区三区
|
国产精品亚洲片在线
|
在线精品亚洲一区二区小说
|
亚洲国产精品狼友中文久久久
|
www.亚洲色图.com
|
亚洲高清最新av网站
|
免费国产精品视频
|
无码不卡亚洲成?人片
|
免费中文字幕在线观看
|
免费h成人黄漫画嘿咻破解版
|
精品久久免费视频
|
免费a级毛片在线观看
|
午夜亚洲福利在线老司机
|
亚洲一区二区三区乱码A
|
亚洲福利中文字幕在线网址
|
国产成人精品曰本亚洲79ren
|
久久精品夜色噜噜亚洲A∨
|
亚洲乱码一区二区三区在线观看
|
亚洲av专区无码观看精品天堂
|
亚洲午夜久久久久久尤物
|