0

Dozerを使用して、Java Bean 間のマッピングを行います。そこに存在するすべてのマッピングを含む dozer マッピング ファイルがあります。サンプル マッピングを以下に示します。

<mapping>
    <class-a>com.xyz.A</class-a>
    <class-b>com.xyz.B</class-b>
    <field>
        <a>key</a>
        <b>id</b>
    </field>
    <field>
        <a>actionId</a>
        <b>action</b>
    </field>
</mapping>

ここで、実行時にマッピングを見つけたいと思います。たとえば、フィールドを string として指定すると、それがプログラムcom.xyz.A.keyでマップされていることを確認したいと思います。com.xyz.B.idDozer API (org.dozer.Mapperインターフェース) を調べたところ、Bean をマップするためだけにメソッドが公開されています。

だから私の質問は: プログラムでマッピングを見つけるための API はありますか?

4

1 に答える 1

1

Dozer にマッピングを検査するためのパブリック API があるかどうかはわかりません。

マッピングを検査するための Service Provider Interface (SPI) とともに Dozer と同じ機能をすべて提供するオブジェクト マッピング ライブラリであるModelMapperを試すことができます。あなたの例の使い方は簡単です:

ModelMapper modelMapper = new ModelMapper();
List<Mappings> mappings = modelMapper.createTypeMap(A.class, B.class).getMappings();

詳細については、ModelMapper サイトをご覧ください。

http://modelmapper.org

于 2011-06-23T05:33:55.140 に答える