spring - 推土机和 Spring 集成

标签 spring dozer

编辑:引入了一个新的库,它阐明了新版本的内容

Since version 5.5.0 Spring integration comes within additional module dozer-spring.



嗨,我对 Dozer 和 Spring 还比较陌生,对如何将它们实现起来有点困惑。

来自推土机网站:http://dozer.sourceforge.net/documentation/usage.html

Spring integration ...


<bean id="mapper" class="org.dozer.DozerBeanMapper">
  <property name="mappingFiles">
    <list>
      <value>dozer-global-configuration.xml</value>            
      <value>dozer-bean-mappings.xml</value>
      <value>more-dozer-bean-mappings.xml</value>
    </list>
  </property>
</bean>

现在从 http://dozer.sourceforge.net/documentation/springintegration.html :
<bean class="org.dozer.spring.DozerBeanMapperFactoryBean">
    <property name="mappingFiles" value="classpath*:/*mapping.xml"/>
    <property name="customConverters">
        <list>
            <bean class="org.dozer.converters.CustomConverter"/>      
        </list>
    </property>
    <property name="eventListeners">
        <list>
            <bean class="org.dozer.listeners.EventListener"/>
        </list>
    </property>
    <property name="factories">
        <map>
            <entry key="id" value-ref="bean-factory-ref"/>
        </map>
    </property>
</bean>

所以我不确定我应该以哪种方式使用它。我的目标是在我的业务类中有一个映射器对象,它将转换 Business ObjectsDTO (反之亦然)。
所以我认为它应该是一个基本的依赖注入(inject)?

谢谢你的帮助。

最佳答案

两者都是有效的方法,只需将此映射器作为依赖项注入(inject)负责映射的服务类中,例如:

@Service
public class MyMappingService{
 @Autowired DozerBeanMapper dozerBeanMapper;
}

使用 DozerBeanMapperFactoryBean 沿着这些路线的方法应该有效:
<bean class="org.dozer.spring.DozerBeanMapperFactoryBean">
....
</bean>

这将返回一个映射器实例,因此只需以这种方式注入(inject)一个映射器类型:
@Service
public class MyMappingService{
 @Autowired Mapper dozerBeanMapper;
}

关于spring - 推土机和 Spring 集成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13323282/

相关文章:

java - dozer boolean 属性映射

java - 如何告诉 Dozer 在目标字段中使用 LinkedHashSet 集合?

java - Spring数据绑定(bind)在后台是如何工作的?

java - 在服务器停止时获取内存泄漏错误(Eclipse、Hibernate、Spring)

java - Spring库中的REST(RestTemplate)是否支持HTTPS协议(protocol)?

java - 如何注销 Spring WebFlux WebClient 请求的失败响应正文,同时将响应返回给调用者?

java - 复杂物体的推土机映射

java - 如何使用 Dozer 对深层(或嵌套)对象属性进行映射?

java - 具有集合和 set-method 属性的 Dozer Bean 映射器配置

java - @service 在 spring 中的混淆行为