1. 程式人生 > >LifeRay Portal 6學習筆記8:Liferay的一些常用工具類

LifeRay Portal 6學習筆記8:Liferay的一些常用工具類

Liferay從早期版本開始就提供了一些封裝好的工具類,熟悉這些工具類能夠大大提高開發的效率和程式碼的質量,下面做一個簡介,只是大概介紹一下,詳細瞭解可以檢視API或者檢視原始碼。

在早期的版本4.x中,這些工具類是放在包util-java.jar的com.liferay.util這個目錄下面,不知道是從5.x(對於5.x版本瞭解不多)開始還是從6.x開始,這些工具類被移到了portal-service.jar這個包的com.liferay.portal.kernel.util目錄下面。

在使用Liferay IDE構建的環境裡面並不能找到portal-service.jar這個包,需要我們手動的新增到開發環境的build path裡面,但是不需要複製到執行環境裡面,因為portal-service.ja這個包已經放到了tomcat/lib/ext這個目錄下面。

一、驗證類(Validator)

此類是Liferay封裝的一些常用的驗證資訊類,如驗證是否為空,兩個值是否相等、email地址、是否為數字、字串、日期等。

如果要驗證某個字串是否為空,則使用

Java程式碼  收藏程式碼
  1. Validator.isNull(String)  
Java程式碼  收藏程式碼
  1. if(validator.isNull(userName)){  
  2.     ……  
  3. }  

這個類的內容非常簡單,可以下載原始碼或者doc文件API檢視。

二、ParamUtil類

這個類非常用,在寫action或者servlet時,經常要用到類似這樣的程式碼。

Java程式碼  
收藏程式碼
  1. String userName = request.getParameter("userName");  

如果我們要判斷,userName是否為空,如果為空預設值應該賦多少,如果我們還想做類開轉換,比如將獲取的這個引數值轉為int、 double等其他型別,還要多寫程式碼。

ParamUtil類,主是對這些常見情況進行封裝。

Java程式碼  收藏程式碼
  1. long companyId = ParamUtil.getLong(request, "companyId");  

這行程式碼就是,將獲取到的引數compayId轉成long的型別

Java程式碼  收藏程式碼
  1. int sort = ParamUtil.getLong(request, 
    "sort",1);  

這行程式碼是將獲取到的引數sort,轉成int,如果引數sort為空,則賦予預設值1。

這個類提供了常見資料型別的轉換及這些基本的封裝,具體的檢視com.liferay.portal.kernel.util.ParamUtil這個類或者API。

三、StringUtil類

這個類部分是重寫了String類的方法,部分是新增的,對字串的常見操作進行了一定的封裝,方法有很多,具體的可以檢視API或者原始碼。這裡列幾個

Java程式碼  收藏程式碼
  1. publicstatic String add(String s, String add)  
  2. publicstatic String bytesToHexString(byte[] bytes)  
  3. publicstaticboolean contains(String s, String text, String delimiter)  
  4. publicstatic String extractDigits(String s)  
 

四、GetterUtil類

此類從名字上看應該是資料獲取類,不過叫型別轉換類更合適一點。寫幾個方法列表看一下

Java程式碼  收藏程式碼
  1. publicstaticfloat get(String value, float defaultValue)  
  2. publicstaticint get(String value, int defaultValue)  
  3. publicstatic String get(Serializable value, String defaultValue)  
  4. publicstatic Date get(String value, DateFormat dateFormat, Date defaultValue)  

這些都很簡單,更多的檢視原始碼或API。

五、其他

其他一些用的比較多的類有

ArrayUtil

DateUtil

FileUtil

ListTree

ListUtil

……

詳細瞭解,可以檢視API或者原始碼,這些程式碼都非常簡單,非常容易看懂。熟練使用可以為開發節省許多時間,也可以將這些程式碼移除出來形成自己的工具類,用在其他專案中。