问题描述;当我们修改某些数据后会出现数据丢失情况
简述几种解决的方法:
方法1:隐藏要传递的值(只隐藏,但是数据还是需要传递,这和第一个项目是同相同的方案)
方法2:在实体类的字段上加上不可修改的注解
@Column(updatetable=false)
private String username;
方法3:查询数据库,获取持久化对象,把修改的值传递到里面去(使用@ModelAttribute注解)
@ModelAttribute("editEmployee")
public Employee beforeEdit(Long id){
if(id!=null){
Employee employee = employeeService.findOne(id);
return employee;
}
return null;
}
@RequestMapping("/save")
@ResponseBody
public Map<String,Object> save(Employee employee){
return saveOrUpdate(employee);
}
@RequestMapping("/update")
@ResponseBody
public Map<String,Object> update(@ModelAttribute("editEmployee")Employee employee){
return saveOrUpdate(employee);
}