`

Apache的BeanUtils对日期的支持

 
阅读更多
在Java对象的拷贝过程中,Apache的BeanUtils对日期的支持不是很好,但有扩展,大家可以找到它的日期转换器,注册进去就ok了

创建BeanUtils的子类,把日期转换器注册进去,以后用这个子类来copy对象:

public class BeanUtilEx extends BeanUtils {

private static Map cache = new HashMap();
private static Log logger = LogFactory.getFactory().getInstance(BeanUtilEx.class);

private BeanUtilEx() {
}

static {
// 注册sql.date的转换器,即允许BeanUtils.copyProperties时的源目标的sql类型的值允许为空
ConvertUtils.register(new org.apache.commons.beanutils.converters.SqlDateConverter(null), java.sql.Date.class);
ConvertUtils.register(new org.apache.commons.beanutils.converters.SqlDateConverter(null), java.util.Date.class); 
ConvertUtils.register(new org.apache.commons.beanutils.converters.SqlTimestampConverter(null), java.sql.Timestamp.class);
// 注册util.date的转换器,即允许BeanUtils.copyProperties时的源目标的util类型的值允许为空
}

public static void copyProperties(Object target, Object source)
throws InvocationTargetException, IllegalAccessException {
// 支持对日期copy
org.apache.commons.beanutils.BeanUtils.copyProperties(target, source);

}

}
分享到:
评论

相关推荐

    org.apache.commons.beanutils.jar

    6. **国际化支持**:通过与Apache Commons Locale配合,BeanUtils支持国际化和本地化,可以方便地处理不同地区的语言和格式设置。 `commons-license.txt`文件通常包含了Apache Commons BeanUtils的许可协议,它是...

    commons-beanutils-1.9.3.jar

    Apache Commons BeanUtils是Java开发中的一个实用工具库,主要用于简化对JavaBean的操作。这个`commons-beanutils-1.9.3.jar`文件是该库的一个版本,它提供了丰富的API来帮助开发者更方便地处理JavaBean对象。在这个...

    org.apache.commons工具包

    5. **包装器支持**:BeanUtils还支持Java的包装器类型,这意味着你可以方便地处理Integer、Boolean等包装类的属性,而无需关心它们与原始类型的转换。 6. **自定义转换器**:如果你需要处理一些特殊的类型转换,...

    Java工具类之Apache的Commons Lang和BeanUtils

    5. **枚举操作**:`EnumUtils`类提供了对Java枚举类型的友好支持,如枚举值的转换和检查。 6. **类型转换**:`TypeConversionUtils`和`ConvertUtils`类提供了类型之间的安全转换,避免了因类型不匹配引发的异常。 ...

    BeanUtils相关jar包

    4. **处理日期和枚举类型**:BeanUtils提供了对日期和枚举类型的特殊处理,使得这些复杂类型能在Bean复制过程中正确转换。 5. **处理异常**:BeanUtils库在处理过程中会捕获并包装可能抛出的异常,如`...

    commons-beanutils-1.9.4

    - **集合操作**:BeanUtils也支持对集合类型的属性进行操作,如列表、数组等。 2. **使用场景**: - **数据绑定**:在Web开发中,BeanUtils常用于将HTTP请求参数绑定到JavaBean对象,简化表单数据处理。 - **...

    beanutils-1.8.3

    Apache Commons BeanUtils库还支持处理复杂的类型转换,例如将字符串转换为整型或日期等。此外,它还包含了一些辅助类,如`ConvertUtils`,可以注册自定义的转换器,以便在处理不同类型的数据时更加灵活。 在实际...

    commons-beanutils-1.8.0的jar包(全).rar

    4. **集合操作**:BeanUtils还支持对集合类型的属性进行操作,例如可以将数组或列表的元素映射到bean的集合属性上。 5. **异常处理**:在处理bean操作时,BeanUtils会捕获并封装可能抛出的异常,以`...

    commons-beanutils-jesse.zip(20080825更新)

    该包对源码进行了部分修改,使其支持对String与Date之间的类型转换。 2008-07-17更新: 增加了BeanUtils的copyProperty以及copyProperties方法对Date的null值复制功能,取消了当Date为null时的抛异常。 2008-08-25...

    beanutils JAR包下载

    5. **国际化支持(Internationalization Support)**:BeanUtils可以与ResourceBundle结合使用,实现基于不同地区的属性值处理。 在实际开发中,BeanUtils常用于以下场景: - 数据绑定:在Web应用中,BeanUtils...

    beanUtils包与源码

    此外,BeanUtils还支持自定义转换器(Converter),这在处理不同类型之间的转换时非常有用。通过注册自定义的转换器,我们可以控制特定属性值的转换逻辑,比如日期字符串到Date对象的转换。 总的来说,BeanUtils是...

    commons-beanutils-1.8.3-sources.jar

    4. **动态属性访问:** BeanUtils还支持动态属性操作,即使属性名在运行时才能确定,通过`invokeMethod()`方法可以实现动态调用getter和setter。 5. **异常处理:** 库中内置了对可能出现的异常(如属性不存在或...

    commons-beanutils-1.8.0.zip

    9. **Integration with Other Commons Libraries**:Apache Commons BeanUtils与其他Apache Commons库(如Collections、Lang等)兼容,可以一起使用以实现更强大的功能,如集合操作、日期处理等。 10. **Version ...

    commons-beanutils-1.7.0_java_java编程_

    4. **内建集合操作**:BeanUtils还支持对集合类型的属性进行操作,例如可以将数组或集合转换为JavaBean的属性,反之亦然。 5. **动态Bean访问**:对于那些没有源码或者不完全了解的对象,BeanUtils可以动态地根据其...

    BeanUtils jar包+源码

    6. **国际化支持**:BeanUtils还支持国际化(i18n),通过`ResourceBundle`和`MessageResources`类,可以在不同语言环境下进行属性值的转换和显示。 7. **线程安全性**:由于BeanUtils的一些方法不是线程安全的,...

    BeanUtils所需的包

    在处理复杂的数据类型时,BeanUtils也提供了处理日期、数字等类型的转换功能。例如,当源对象和目标对象的属性类型不完全匹配时,BeanUtils会尝试使用ConversionService进行类型转换。 在使用BeanUtils时,需要注意...

    BeanUtils工具 .jar 包

    6. **国际化支持**:BeanUtils工具包可以与ResourceBundle结合使用,实现基于不同语言和地区的国际化(i18n)处理。 在"java学习笔记——javaweb之BeanUtils、EL、JSTL"这篇博客中,作者可能详细讲解了如何在Java Web...

    commons-beanutils-1.9.2-bin.zip

    4. **处理集合属性**:BeanUtils还支持处理集合类型的属性,如List、Set和Map。可以通过`index`或`key`来操作这些集合中的元素。 5. **处理嵌套属性**:可以使用点号分隔的字符串来访问和修改Bean的嵌套属性,如`...

    BeanUtils开发包

    此外,BeanUtils还支持对集合类型的属性进行操作。当JavaBean对象中包含List或Map等集合属性时,可以使用`populate()`方法将Map对象中的键值对填充到JavaBean对象中,实现了将复杂数据结构转换为JavaBean的过程。 ...

    java 包commons-beanutils-1.9.2-bin

    4. **集合操作**:库还支持对JavaBean中集合属性的操作,如数组、列表或映射。可以一次性设置或获取整个集合属性,这在处理复杂的对象结构时非常有用。 5. **拷贝属性**:BeanUtils提供了`copyProperties()`方法,...

Global site tag (gtag.js) - Google Analytics