為了提高訪問portal的速度,引入了cache ,在jsr-286規範裡面有兩種cache :
a.快取portlet資料 (比如ehcache)
注意,如果是要顯示實時資料的portlet不應該用data cache
b. 快取portlet內容 (快取的是portlet的內容而不是portal頁面的內容)
對於b,內容cache,有兩種型別:
基於超時(expiration-based)和基於校驗的(validation-based)內容cache.
(1) expiration-based 內容cache
實現方法<1>:在portlet.xml中如下配置 ,以秒作為單位
<portlet
>
...
<
expiration-cache
>
60expiration-cache
>
<
cache-scope
>
private
cache-scope
>
<
supports
>
...
supports
>
...
portlet
>
未超時的情況下,當portlet容器獲得渲染portlet的請求時候,他不會呼叫render方法,而是直接返回cache裡面的內容。如果超時了,則當獲得渲染請求時候,他會立刻呼叫render方法。
為public時候,這個cache的內容所有portal使用者可見,為private時候,這個cache內容只有指定使用者可見。
實現方法<2>:(可以覆蓋<1>)
publicabstract
inte***ce
cachecontrol
(2) validation-based 內容cache
它是expiration-based cache的補充,當cache超時時候,它會進行校驗,如果portlet發現被cache的內容仍然合法,那麼它會讓portlet 容器繼續使用cache中的內容持續cache設的時間,如果校驗發現被cache的內容非法,則會產生新的內容。
每乙個被cache的內容都有乙個校驗令牌(token),它被portlet設定並且存於portlet容器中。當超時發生時,可以用getetag取出來並且和原來的進行比較。
但是,很多portlet容器並不支援validation-based cache,比如liferay 就不支援。
Portal 開發讀書筆記)程式設計式安全控制
像很多框架或者容器一樣,portlet的安全也可以用宣告式或者程式設計式,這裡談程式設計式。portletrequest 類定義了幾個方法和安全有關,用於表示對某個portlet請求時應用安全設定 public inte ce portletrequest 關於role的配置 首先在portlet....
敏捷開發讀書筆記
1 開始時需求要明確 2 盡早發布可執行的demo,持續進行整合 3 功能粒度要足夠低 4 架構可以隨時進行調整 5 測試驅動開發 6 持續整理 及架構重構 7 持續的速度,任務分解需要細緻 粒度要小,各個模組的任務完成要及時 有效 軟體之美在於它的功能,在於它的內部結構,還在於團隊建立它的過程。對...
Vue 開發讀書筆記
1.node.js安裝成功後 在鍵盤按下 win r 鍵,輸入cmd,然後回車,開啟cmd視窗,輸入node v和npm v即可顯示當前安裝的版本號,即表示安裝成功 2.安裝cnpm npm install g cnpm registry 然後等待。3.安裝vue cli 命令 npm instal...