JSTL一些備忘

2021-08-30 12:50:58 字數 912 閱讀 3876

1 tagsupport與bodytagsupport的區別

tagsupport與bodytagsupport的區別主要是標籤處理類是否需要與標籤體互動,如果不需要互動的就用tagsupport,否則如果不需要互動就用bodytagsupport。

互動就是標籤處理類是否要讀取標籤體的內容和改變標籤體返回的內容。

用tagsupport實現的標籤,都可以用bodytagsupport來實現,因為bodytagsupport繼承了tagsupport。

2 dostarttag(),doendtag()

dostarttag()方法是遇到標籤開始時會呼叫的方法,其合法的返回值是eval_body_include與skip_body,前者表示將顯示 標籤間的文字,後者表示不顯示標籤間的文字;doendtag()方法是在遇到標籤結束時呼叫的方法,其合法的返回值是eval_page與 skip_page,前者表示處理完標籤後繼續執行以下的jsp網頁,後者是表示不處理接下來的jsp網頁

doafterbody(),這個方法是在顯示完標籤間文字之後呼叫的,其返回值有eval_body_again與skip_body,前者會再顯示一次標籤間的文字,後者則繼續執行標籤處理的下一步。

預定的處理順序是:dostarttag()返回skip_body,doafterbodytag()返回skip_body,doendtag()返回eval_page.

如果繼承了tagsupport之後,如果沒有改寫任何的方法,標籤處理的執行順序是:

dostarttag() ->不顯示文字 ->doendtag()->執行接下來的網頁

如果您改寫了dostarttag(),則必須指定返回值,如果指定了eval_body_include,則執行順序是

dostarttag()->顯示文字->doafterbodytag()->doendtag()->執行下面的網頁

一些 命令備忘

set ansi nulls on go set quoted identifier on go 是什麼意思?這些是 sql 92 設定語句,使 sql server 2000 2005 遵從 sql 92 規則。當 set quoted identifier 為 on 時,識別符號可以由雙引號分隔...

git一些備忘

git上傳命令 進入dos介面在專案根目錄路徑下 檢視檔案狀態 git status 在專案目錄下 git add 繼續 git commit m 上傳描述 繼續 git push 本地分支管理 檢視所有分支 git branch a 當前分支與目標分支合併 git merge 目標分支 刪除分支 ...

一些 命令備忘

set ansi nulls on go set quoted identifier on go 是什麼意思?這些是 sql 92 設定語句,使 sql server 2000 2005 遵從 sql 92 規則。當 set quoted identifier 為 on 時,識別符號可以由雙引號分隔...