我有一个spring数据jpa应用程序和一个库。库包含一个类,比如Car.java
public class Car{
Long id;
String name;
String color;
.. getter and setter
}
在我的应用程序中,我需要存储这个对象,并希望使用rest存储库。为此,我需要注释类:
@Entity
@Table(name = "customerCar")
public class CarEntity{
@Id
Long id;
String name;
String color;
.. getter and setter
}
有没有一种方法可以在不重复代码和/或不复制的情况下做到这一点?
CarEntity customerCar = new CarEntity();
customerCar.setId(car.getId());
....
使用mapper框架来避免复制样板代码。您可以根据下面提到的性能基准测试选择使用JMapper映射库:
https://www.baeldung.com/java-performance-mapping-frameworks
至少我采用了与@sham非常相似的方法。我使用了Spring Framework 中BeanUtils类的复制属性函数
org.springframework.beans.BeanUtils;
BeanUtils.copyProperties(car,carEntity);