转自:http://hu437.iteye.com/blog/ 在此默默道谢了!
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地址、是否为数字、字符串、日期等。
如果要验证某个字符串是否为空,则使用
- Validator.isNull(String)
- if(validator.isNull(userName)){
- ……
- }
这个类的内容非常简单,可以下载源码或者doc文档API查看。
二、ParamUtil类
这个类非常用,在写action或者servlet时,经常要用到类似这样的代码。
- String userName = request.getParameter("userName");
如果我们要判断,userName是否为空,如果为空默认值应该赋多少,如果我们还想做类开转换,比如将获取的这个参数值转为int、 double等其他类型,还要多写代码。
ParamUtil类,主是对这些常见情况进行封装。
- long companyId = ParamUtil.getLong(request, "companyId");
这行代码就是,将获取到的参数compayId转成long的类型
- int sort = ParamUtil.getLong(request, "sort",1);
这行代码是将获取到的参数sort,转成int,如果参数sort为空,则赋予默认值1。
这个类提供了常见数据类型的转换及这些基本的封装,具体的查看com.liferay.portal.kernel.util.ParamUtil这个类或者API。
三、StringUtil类
这个类部分是重写了String类的方法,部分是新增的,对字符串的常见操作进行了一定的封装,方法有很多,具体的可以查看API或者源码。这里列几个
- public static String add(String s, String add)
- public static String bytesToHexString(byte[] bytes)
- public static boolean contains(String s, String text, String delimiter)
- public static String extractDigits(String s)
四、GetterUtil类
此类从名字上看应该是数据获取类,不过叫类型转换类更合适一点。写几个方法列表看一下
- public static float get(String value, float defaultValue)
- public static int get(String value, int defaultValue)
- public static String get(Serializable value, String defaultValue)
- public static Date get(String value, DateFormat dateFormat, Date defaultValue)
这些都很简单,更多的查看源码或API。
五、其他
其他一些用的比较多的类有
ArrayUtil
DateUtil
FileUtil
ListTree
ListUtil
……
详细了解,可以查看API或者源码,这些代码都非常简单,非常容易看懂。熟练使用可以为开发节省许多时间,也可以将这些代码移除出来形成自己的工具类,用在其他项目中。