spring data jpa 将json格式的字符串插入mysql json类型的字段中
打印错误:2018-07-28 13:58:36.800 ERROR 8160 --- [nio-8080-exec-4] o.h.engine.jdbc.spi.SqlExceptionHelper : Data truncation: Cannot create a JSON value from a string with CHARACTER SET 'binary'.
mysql.log 错误:insert into device (device_num, json) values ('TC1', _binary'ͭ\0t\0&{\"studentName\":\"lily\",\"studentAge\":12}')
controller:
@RequestMapping(value = "/addDevice", method = RequestMethod.POST)
public ResultVo AddUser(@RequestBody DeviceVo deviceVo) {
ResultVo<Object> resultVo;
try {
Device device = new Device();
deviceVo.GetModel(device);
userService.Save(device);
resultVo = new ResultVo<>(null, ResultStatus.Success, "添加成功");
// int a =5/0;
} catch (Exception e) {
resultVo = new ResultVo<>(null, ResultStatus.Failed, "添加失败");
}
return resultVo;
}
DeviceVo:
public class DeviceVo {
private String deviceNum;
private String student;
public String getDeviceNum() {
return deviceNum;
}
public void setDeviceNum(String deviceNum) {
this.deviceNum = deviceNum;
}
public String getStudent() {
return student;
}
public void setStudent(String student) {
this.student = student;
}
public void GetModel(Device device) {
device.setDeviceNum(getDeviceNum());
device.setStudent(getStudent());
}
}
postman 请求 application/json
参数 {
"deviceNum":"TC1",
"student":"{\"studentName\":\"lily\",\"studentAge\":12}"
}