beanmapper java_Java今日收获——BeanMapper

假如有一个Person类,一个Student类,如下:

public class Person

{

public int id{get;set;}

public string name{get;set;}

public byte sex{get;set;}

public int age{get;set;}

}

public class Student

{

public string name{get;set;}

public byte sex{get;set;}

public string sexCN{get;set;}

}

然后有一个List对象personList,我们要从这个personList数据对象中得到一个新的studentList对象,在C#里的方法如下:

List studentList=new List();

foreach (var person in personList)

{

Student student=new Student();

student.name=person.name;

student.sex=person.sex;

student.sexCN=SexEnum.Default.GetDes(person.sex.ToString());

studentList.Add(student);

}

在Java里面的实现方式如下:

List studentList=new ArrayList<>();

for(Person person in personList){

Student student=new Student();

BeanMapper.copy(person,student);//第一个参数是源数据,第二个参数是目标数据

student.setSexCN(SexEnum.GetDes(person.sex.ToString()));

}

注: 目标数据实体里的属性名必须和源数据实体里的属性名保持一致。

到这里为止,我已经知道了BeanMapper的使用方法,但是还只知其然,不知其所以然。

后来一翻代码,发现BeanMapper是被同事封装过了的,它其实是基于DozerBeanMapper的map方法。就算看到这里,我可能还是没能深刻的知其所以然,不然应该也可以在C#里面实现一个类似的拷贝方法了吧。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值