关于ACE 6.0.0新版本对APG一书中ACE_static_case宏用法的补充

    新版的ACE已经取消了ACE_static_case宏的使用,直接使用static_cast做转换。针对此变化,对APG一书中关于47页的例子做了一改动:

 

 

参考资料:《ACE程序员指南:网络与系统编程的使用设计模式》

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在 Dozer Mapper 中,put 方法是 CustomConverter 接口中的一个方法,用于在转换过程中将自定义转换器的属性传递给其他对象。下面是一个简单的例子。 假设您有一个自定义转换器,用于将一个字符串转换为一个包含两个属性的对象。您希望在转换过程中将属性值传递给目标对象的另一个属性。您可以通过 put 方法来实现。 首先,在自定义转换器中,您需要通过调用 put 方法并传递一个键值对来设置属性值: ```java public class MyCustomConverter implements CustomConverter { @Override public Object convert(Object destination, Object source, Class<?> destClass, Class<?> sourceClass) { // 自定义类型转换逻辑 ((MyDestinationObject)destination).setOtherProperty(context.get("otherProperty")); return convertedObject; } @Override public void setParameter(String key, String value) { context.put(key, value); } } ``` 然后,在使用映射器时,您可以通过调用 withParameter 方法并传递一个键值对来设置属性值: ```java Mapper mapper = DozerBeanMapperBuilder.create() .withCustomConverter(new MyCustomConverter()) .withParameter("otherProperty", "otherPropertyValue") .build(); ``` 现在,在转换过程中,自定义转换器将从上下文中获取键为 "otherProperty" 的属性值,并将其设置为目标对象的其他属性。 需要注意的是,put 方法和 withParameter 方法都是可选的。如果您的自定义转换器不需要处理属性值,则不需要实现 put 方法。同样,如果您的映射器不需要传递属性值,则不需要调用 withParameter 方法。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值