java convert在哪个包_java – 为来自不同包的对象创建一个通用转换器

我有5个Web服务,A,B,C,D和E.每个都有自动生成的对象具有完全相同的结构,但具有不同的名称和不同的包.

com.ws.a.carA contains parameters and com.ws.a.wheelA

com.ws.b.carB contains parameters and com.ws.b.wheelB

com.ws.c.carC contains parameters and com.ws.c.wheelC

com.ws.d.carD contains parameters and com.ws.d.wheelD

com.ws.e.carE contains parameters and com.ws.e.wheelE

我想创建一个函数,可以将这些对象(和内轮)中的每一个转换为一个名为的对象

com.model.car,

但我不会有很多功能,如:

com.model.car convert(com.ws.a.objA obj)

com.model.car convert(com.ws.b.objB obj)

问题是,我无法为所有对象提供实现的通用接口,因为我不想手动更改自动生成的类(它们经常重新创建).

我需要一种方法,可能是泛型,来创建一个共同的功能

com.model.car convert(T obj)

这将适用于所有类型的汽车,但我不知道如何实施它.

解决方法:

PropertyUtils #copyProperties将值从一个对象复制到另一个对象,其中字段名称相同.因此,对于copyProperties(dest,orig),它会为两个对象中存在的所有字段调用dest.setFoo(orig.getFoo()).

BeanUtils #copyProperties也是如此,但您可以注册转换器,以便在必要时将值从String转换为Int.有许多标准转换器,但你可以注册自己的,在你的情况下com.ws.a.wheelA到com.model.wheel,或其他什么.

标签:java,generics,web-services

来源: https://codeday.me/bug/20191006/1863191.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值