Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Spring 如何将属性从对象复制到另一个对象?_Spring_Hibernate_Spring Boot - Fatal编程技术网

Spring 如何将属性从对象复制到另一个对象?

Spring 如何将属性从对象复制到另一个对象?,spring,hibernate,spring-boot,Spring,Hibernate,Spring Boot,当我试图将所有属性和集合从编队的对象复制到另一个编队的对象并用另一个id保存时,我得到了关于id的这个异常。我如何解决这个问题 org.hibernate.HibernateException:实体实例的标识符。Formation已从2更改为null 位于org.hibernate.event.internal.DefaultFlushentyEventListener.checkId(DefaultFlushentyEventListener.java:80) 在f中有我的代码来复制此表单:

当我试图将所有属性和集合从编队的对象复制到另一个编队的对象并用另一个id保存时,我得到了关于id的这个异常。我如何解决这个问题

org.hibernate.HibernateException:实体实例的标识符。Formation已从2更改为null
位于org.hibernate.event.internal.DefaultFlushentyEventListener.checkId(DefaultFlushentyEventListener.java:80)
f
中有我的代码来复制此表单:

BeanUtils.copyProperties(f,地层);
返回信息(f);

我在调用BeanUtils.copyProperties之前操作原始对象时遇到了同样的问题,我通过先调用BeanUtils.copyProperties,然后操作新对象的字段来修复它

    Transaction tx = session.beginTransaction();
    Unit unitRecord = (Unit) session.get(Unit.class, 1076L);
    Unit newObject = new Unit();
    
    //////////WORK//////
    BeanUtils.copyProperties(unitRecord, newObject );
    newObject.setId(1077L);
    ////////////
    
    /////////////NOT WORK/////
    unitRecord.setId(1077L);
    BeanUtils.copyProperties(unitRecord, newObject );
    /////////////
    
    newObject.setName("TESTONLY TESTSTST");
    session.save(newObject);
    tx.commit();

你检查过这个吗?是的,当然情况不一样了。