的理解和使用

2021-07-25 18:43:53 字數 2153 閱讀 5809

本文出自:

在傳統 jsp 中,想要實現頁面布局管理比較麻煩,為了解決在 jsp 中布局的問題,出現了很多開源軟體,比如 apache tiles 和 sitemesh 就是其中比較優秀的。但是使用開源軟體實現布局或多或少會產生一些效能問題,有沒有辦法在不依賴第三方開源軟體的情況下,使用 jsp 本身來實現頁面布局呢? 

jsp 2.0 引入了 fragment 技術,使用 fragment 技術可以在 jsp 中實現類似 tiles 和 sitemesh 的頁面布局管理。 

下面的例子說明了如何使用 fragment 實現頁面布局。 

1、首先在 web-inf/tags 資料夾中建立 template.tag 檔案:

在 tag 檔案頭部申明了兩個 attribute 分別是 header 和 footer。在 標籤中呼叫了這兩個 attribute 所對應的 fragment。jsp:invoke 和 jsp:dobody 中的具體內容會被 jsp 中的內容替換。現在編寫 index.jsp。

2、建立 index.jsp 檔案

[html]view plain

copy

<

%@page 

contenttype

="text/html"

pageencoding

="utf-8"

%>

<

%@ taglib 

prefix

="t"

tagdir

="/web-inf/tags/"

%>

<

t:template

>

<

jsp:attribute

name

="header"

>

這裡的內容顯示在頭部。  

jsp:attribute

>

<

jsp:attribute

name

="footer"

>

這裡的內容顯示在尾部。  

jsp:attribute

>

<

jsp:body

>

這裡顯示正文內容:hello world!  

jsp:body

>

t:template

>

jsp:attribute 標籤中的內容將會替換 template.tag 中 jsp:invoke 的內容,name 屬性對應 fragment 屬性。 

如果訪問 index.jsp 頁面,可以看到顯示的內容會按照 template.tag 中設計的樣式來進行布局。

Promise的理解和使用

官方 1 1.promise物件用於非同步計算 1 2.promise表示乙個現在,將來或用不可能可用的值 理解 2 1.主要用於非同步計算 2 2.可以將非同步操作佇列化,按照期望的順序執行,返回符合預期的結果 2 3.可以在物件之間傳遞和操作promise,幫助我們處理佇列 1.同步 不同的事情...

Handler的理解和使用

一 handler簡介 handler是android給我們提供的用來更新ui user inte ce 的一套機制,也是一套資訊處理機制,我們可以通過他傳送訊息和處理訊息 為什麼要是使用handler?其在設計的時候,就封裝了一套資訊建立 傳遞和處理的機制,如果不遵守這種機制,就會丟擲異常 cal...

Python property的理解和使用

重看狗書,看到對user表定義的時候有下面兩行 property def password self raise attributeerror password is not a readable attribute password.setter def password self,passwor...