首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

BeanMapping公布1.0.2版本

2012-08-22 
BeanMapping发布1.0.2版本背景??BeanMapping是什么? 请查看我之前的一篇文章: ?我也造了个轮子:BeanMappin

BeanMapping发布1.0.2版本
背景

??BeanMapping是什么? 请查看我之前的一篇文章: ?我也造了个轮子:BeanMapping(属性拷贝)?

版本变更内容
    ??convetor包名重构,拼写错误??ScriptExecutor接口重构,加上ScriptContext操作??FiledSetExecutor去除对args的强制匹配依赖??mapping支持name定义??mapping支持嵌套映射/集合映射对象的name定义??增加NullSymbolGetExecutor的实现,支持无源属性的映射
相比于?BeanMapping发布1.0.1版本,主要增加的两个特性:特性1:mapping支持别名定义

可以解决的需求:

map<->map之间可以有不同的映射规则,服务化接口用map这样弱类型的情况会比较多.?嵌套映射,集合映射都可以指定特定的映射规则,改变原先的默认按照class类型查找的方式testcase : ?https://raw.github.com/agapple/mapping4java/master/src/test/java/com/agapple/mapping/BeanMappingNestAndNameTest.java

?

@Test    public void testNullSymbol() { // 测试下null的特殊属性        BeanMappingBuilder builder = new BeanMappingBuilder() {            protected void configure() {                behavior().debug(true).mappingEmptyStrings(false).mappingNullValue(false).trimStrings(true);// 设置行为                mapping(HashMap.class, HashMap.class);                fields(srcField("null"), targetField(ONE_OTHER, String.class)).defaultValue("10");            }        };        BeanMapping mapping = new BeanMapping(builder);        Map dest = new HashMap();        mapping.mapping(new HashMap(), dest);        assertEquals(dest.get(ONE_OTHER), "10");    }

后续计划:
    支持object factory模式,允许自己控制嵌套对象的创建过程,目前默认是系统通过构造函数进行newInstance.fel script实现支持 (http://www.iteye.com/news/24711-Fel-java-script)
目前在阿里公司内部正在逐步使用,也欢迎大家试用和给我提需求,可以非常方便的替换原先的BeanUtils,性能上也会有一定的惊喜。

?

热点排行