Jmesa系列(二)Jmesa源碼的包結構解讀:

Jmesa源碼的包結構大致分爲四個包:
org.jmesa.core Jmesa的核心包,所下面定義下最核心的接口CoreContext,CoreContext的作有容後再述,下面有四個子包:
    org.jmesa.core.filter 過濾器(按條件對紀錄進行過濾)
    org.jmesa.core.sort 排序,該包提供紀錄按指定列進行排序的功能
    org.jmesa.core.message I18N資源文件實現,使用Java內置的ResourceBundle實現。較簡單
    org.jmesa.core.preference Jmesa選項,使用Java內置Properties實現。也較簡單
org.jmesa.limit 該包提供對紀錄進行過濾的功能,limit的原意爲限制,這裏表現爲過濾。Jmesa提供接口讓開發人員自定義存放Limit的地方。該接口就是位於該包 下面子包state下的State接口,用來保存當前用戶查詢選項或參數的狀態,這些參數可能包括過濾條件(Filter),排序條件(Sort)以及分 頁信息等。
org.jmesa.view 視圖,亦即展現。該包下定義了展現表格的接口及提供了兩種實現,CSV及HTML。展現的原理很簡單,一個視圖擁有一個被展現的組件(Component)和渲染器(Renderer)。使用渲染器來渲染組件。那麼自然而然,View包下面又看到兩個子包:
org.jmesa.view.component 定義了表格需要的組件,即表格,行,列。
org.jmesa.view.renderer 定義表格所需要的一系列渲染器,如行渲染,列渲染,單元格渲染等
org.jmesa.web 爲在Web環境中使用Jmesa提供的一系列便利的類。

這就是Jmesa源碼的分佈。個人覺得結構很清晰明白,代碼看起來也不費力。代碼是最有說服力的文檔。有時候,看文檔還比不上直接讀源碼。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章