【问题标题】:Dozer mapping Booleans推土机映射布尔值
【发布时间】:2014-02-11 09:14:02
【问题描述】:

我正在使用推土机,但无法从布尔值映射到布尔值。可能是什么问题?

映射xhtml

<field>
    <a>test</a>
    <b is-accessible="true" >test2</b>
</field>

甲类

private boolean test;

public boolean getTest(){
    return test;
}

b类

private Boolean test2;

public boolean isTest2(){
    return test2;
}

【问题讨论】:

  • 有什么问题?你得到什么错误?
  • get...() vs. is...() - 我记得推土机对此很挑剔......
  • 问题是映射对象填充后没有test2字段。

标签: java dozer


【解决方案1】:

使用推土机 5.4.0,以下内容对我有用

    <field>
        <a is-accessible="true" get-method="isFoo">foo</a>
        <b is-accessible="true" set-method="setFoo">foo</b>
    </field>

【讨论】:

    【解决方案2】:

    根据推土机上的documentation,这应该是可能的:

    数据类型转换由 Dozer 映射引擎自动执行。目前,Dozer 支持以下几种类型的转换:(这些都是双向的)

    • 基元到基元包装器
    • ...

    specifying set-method and get-method helps可以试试。

    【讨论】:

    • 我尝试了一些与 get-methods、set-methods 的组合,但它仍然无法正常工作。我应该将 get-method 放在 set-method 的哪里?
    • 我已经用 Dozer 5.4.0 执行了你的代码,它运行良好,即使没有指定 set-method 或 get-method。你用的是哪个版本?
    • 我在 deepEqual 的测试中使用它: ERROR main (...deepEquals.DeepEquals:154): ... #test2:java.lang.Boolean field are not equal (true!= null)|#]
    • 您能否也将您已经拥有的所有代码添加到您的问题中?
    • 我认为要补充一点。我只是对两个对象的映射进行了一些测试。与 thoose 2 对象的区别在于,一个具有字段布尔值,另一个布尔值,就像我在问题中写的那样,仅此而已。说的真好
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多