BeanUtils自定义转换器 (一)

使用 commons-beanutils-1.8.0.jar 与 commons-logging.jar

对javaBean的存取操作

1) BeanUtils bUtils = new BeanUtils();

2) 在存取值得时候8种基本类型可以 自动转换
 
 可以注册自己定义的类型转化/注册使用BeanUtils定义好的转换规则 
注册: ConvertUtils.register(转换方式,要转换的目标类型);

(org.apache.commons.beanutils.converters)包里面 预先定义好的转换规则

 

自定义转换方式:

1):一个实现了org.apache.commons.beanutils.Converter 接口的类

CASE:

public class MyDateConvert implements Converter {
 public Object convert(Class type, Object value) {
   try {

    String str = null;

    if (value instanceof String) {

      str = (String) value;
    } else if (value instanceof java.util.Date) {
      str = convertTimestamp(((java.util.Date)value).getTime());
    } else if (value instanceof Long) {
      str = convertTimestamp((Long) value);
    } else {

      throw new NotAttributeException();

    }
    return new java.text.SimpleDateFormat("yyyy-MM-dd hh:mm:ss").parse(str);
  } catch (NotAttributeException e) {
    e.printStackTrace();
    return null;

  } catch (ParseException e) {
    e.printStackTrace();
    return null;
  }
}

 private String convertTimestamp(Long time) {
  return new java.sql.Timestamp(time).toString();
 }
}

posted @ 2012-09-18 15:56  流-星-追-月  阅读(630)  评论(0编辑  收藏  举报