Я просто пытаюсь найти, какой подход лучше подходит для копирования данных с одного объекта на другой. Вы можете найти код нижеBeanUtils.copyProperties() или используйте setter() для копирования значений
Bean1
:
private int id;
private int rollnumber;
private String name;
private String department;
//constructor and getter setter
Bean2
:
private int id;
private int rollnumber;
private String name;
private String dob;
private String department;
//constructor and getter setter
У меня есть эти два класса. Теперь, основной() является,
public static void main(String...args){
Bean1 bean1 = new Bean1(1,1001,"","");
Bean2 bean2 = new Bean2();
long startTime = System.currentTimeMillis();
//Copying using setter
bean2.setDepartment(bean1.getDepartment());
bean2.setDob(null);
bean2.setId(bean1.getId());
bean2.setName(bean1.getName());
bean2.setRollnumber(bean1.getRollnumber());
System.out.println("total time "+(System.currentTimeMillis()-startTime));
}
В этом подходе, разница во времени очень меньше по сравнению с приведенной ниже кода, который использует BeanUtils.copyProperties.
public static void main(String...args){
Bean1 bean1 = new Bean1(1,1001,"","");
Bean2 bean2 = new Bean2();
long startTime = System.currentTimeMillis();
BeanUtils.copyProperties(bean1, bean2);
System.out.println("total time "+(System.currentTimeMillis()-startTime));
}
Любой пожалуйста, предложите мне, какой подход лучше в проекте в организации.
Спасибо заранее!
лучший подход - хранить ваши ** важные объекты, используя 'constructor' и отдыхать, используя' setter' ** – emotionlessbananas