Types 如何将任何Java对象动态转换为另一个对象?

Types 如何将任何Java对象动态转换为另一个对象?,types,type-conversion,Types,Type Conversion,我试图找出是否有一种方法可以使用注释或XML配置来定义映射,将任何Java对象动态转换为另一个对象 我听说Apache的PropertyUtils提供了一种在Java对象之间来回复制数据的方法,类型转换由ConvertUtils处理,这需要我自己定制的转换器 例如: class A { long sellerId; long buyerId; String orderId; Date purchaseDate; //getter and setters } ------

我试图找出是否有一种方法可以使用注释或XML配置来定义映射,将任何Java对象动态转换为另一个对象

我听说Apache的
PropertyUtils
提供了一种在Java对象之间来回复制数据的方法,类型转换由
ConvertUtils
处理,这需要我自己定制的转换器

例如:

class A { 
  long sellerId;
  long buyerId;
  String orderId;
  Date purchaseDate;

  //getter and setters
}

------------------------------------------------------------------------

class B {
  Integer payerId;  //mapped to buyerId
  Integer payeeId;  //mapped to sellerId
  String externalId //mapped to orderId 
  Calendar tranDate; //mapped to purchase Date

  //getter and setters
}
请告诉我是否有开源组件可以使用反射、注释或XML配置提供动态Java类型转换


感谢您的帮助

为什么要使用XML或注释?编写自己的函数可能更容易,如下所示:

public B convertAtoB (A a)
{
B buf;
B buf = new B(); 
//Conversion routine goes here
buf.sellerId = a.sellerID; 
//etc
return buf;
}

你能试着用伪代码来表达你希望这个库如何工作吗?你能给出两个你想在它们之间转换的类的例子吗?