【问题标题】:Mapping an Object[] with dozer用推土机映射 Object[]
【发布时间】:2013-02-19 17:48:13
【问题描述】:

Dozer 的帮助下,我想将Object[] 映射到DTO 类

<mapping>
    <class-a>com.example.myDtoClass</class-a>
    <class-b>java.lang.Object[]</class-b>
    <field>
        <a>prop</a>
            <!-- <b key="1">this</b> -->
        <b>this[1]</b>
        <b-hint>java.lang.String</b-hint>
    </field>
</mapping>

&lt;b&gt;this[1]&lt;/b&gt;&lt;b key="1"&gt;this&lt;/b&gt; 两种设置都不起作用,并且 prop 字段设置为整个 Object[] 字段,因此返回的 JSON 中的结果看起来像

"prop": "[Ljava.lang.Object;@40147864"

我错过了什么?我希望在prop 变量中有Object[] 的第一个元素

【问题讨论】:

  • 为什么不直接将数组的第一个元素复制到prop所代表的类型,然后设置到你的DTO中呢?
  • 避免样板代码。 Object[] 中有 10 个元素,我需要在需要该映射的任何地方添加这 10 行代码。而且非常需要

标签: java dozer


【解决方案1】:

我犯了一个严重的错误。是的,我得到了一个Object[] 来映射,但是Object[] 的第一个元素又是Object[] 类型。我很困惑,认为这是主要因素。我确实期望一个字符串,但得到了一个必须连接回字符串的二进制代码数组。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-05-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多