leechuewah
2019-01-11 16:36
采纳率: 100%
浏览 517
已采纳

Hibrenate 使用save()可以插入不能修改

可以新增,但是却不能够修改,数据库没有update成功

代码块如下

@Service
public class EmployeeService {

    @Autowired
    private EmployeeManager employeeManager;

    public Employee doSaveEmployee(Employee employee) throws Exception {
        try {
            Employee result = new Employee();
            if (employee.getId() == null) {
                result.setIsDelete("0");
                result = employee;
            } else {
                result = this.employeeManager.load(employee.getId());
                result.setName(employee.getName());
                result.setPost(employee.getPost());
                result.setAge(employee.getAge());
                result.setAddress(employee.getAddress());
                result.setBirth(employee.getBirth());
                result.setIdcard(employee.getIdcard());
                result.setSex(employee.getSex());
                result.setPhone(employee.getPhone());
            }
            employeeManager.save(result);
            return result;
        }catch (Exception e){
            e.printStackTrace();
            throw e;
        }
    }
}

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • leechuewah 2019-01-12 11:05
    已采纳

    在save()方法里加session.flush()

    已采纳该答案
    评论
    解决 无用
    打赏 举报
  • 大鱼海贼 2019-01-11 16:38

    你是不是应该使用saveorupdate

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题