jpa对同一个对象save 2次后报错

result returns more than one elements

单看结果是 数据库还是插入了2条数据了 但是这个异常该怎么解决啊
我的标题 有点歧义 但是你们看下代码 应该能看出来 这个"同一个对象”实际上是通过new的方法创建的 也就是说2次都没有主键 所以不存在对一个持久化对象 save


public void save(Task task){
if(task.getId()==null){
task.setCreateTime(new Date());
}
taskRepository.saveAndFlush(task);
}

    StudentPosition sp=spService.getOne(id);
        Student student=sp.getStudent();
        Position position=sp.getPosition();
        Task task=new Task();
        task.setStudent(student);
        task.setPosition(position);
        //保存任务
        taskService.save(task);

首先一个对象是不能保存两次的,第一次保存后已经生成主键并返回到对象中,第二次保存就会有主键冲突