在SSH开发中,对如下做假设id   name   age   ...
1    john   20    ...现在我有这个对象的id号,现在我想另外持久化一条新的记录,这条记录的所有字段
信息的值和id号为1的值是一样的(id在hibernate中设置的类型是indentity)
得到的期望结果应该是如下:id   name   age   ...
1    john   20    ...
2    john   20    ...  其实也就是复制了条新的记录吧

解决方案 »

  1.   

    本来也想过这个用clone来做,这里用深clone还是浅clone呢?
    从hibenate从自由态到持久态的一个转换,但是这里应该怎么来实现呢?
    从一个id可以得到一个游离态的对象,我们现在要从游离态的对象复制一个新的自由态对象,
    最后通过save来保存。不知道具体应该怎么操作?
      

  2.   

    把插入第一条语句时的那条命令活hql语句再执行一次就好了啊
      

  3.   

    ...这个好像
    如果人家原来插入的不是用hql的呢?
      

  4.   

    假如是People类People people1=peopleService.queryById(People.class,id);
    People people2=new People();
    BeanUtils.copyProperties(people1, people2);  //spring的属性拷贝方法
    people2.setId(null);                         //id为空,新增一条记录
    peopleService.save(people2);