Java 使用OrelsThrow方法在节省员工时间时抛出ConstraintViolationException
我正在学习SpringBoot,如果任何员工字段在保存时为空,我想在保存时显示错误消息。但是Java 使用OrelsThrow方法在节省员工时间时抛出ConstraintViolationException,java,spring,rest,spring-boot,crud,Java,Spring,Rest,Spring Boot,Crud,我正在学习SpringBoot,如果任何员工字段在保存时为空,我想在保存时显示错误消息。但是orelsetrow方法向我显示了错误。我怎样才能节省时间呢 @ApiOperation(value = "Add an employee") @PostMapping("/createemployee") Employee createOrSaveEmployee( @ApiParam(value = "Employee object store in d
orelsetrow
方法向我显示了错误。我怎样才能节省时间呢
@ApiOperation(value = "Add an employee")
@PostMapping("/createemployee")
Employee createOrSaveEmployee(
@ApiParam(value = "Employee object store in database table", required = true)
@Valid
@RequestBody Employee newEmployee)
throws BadRequestExceptionHandler, ConstraintViolationException {
/*in below line orElseThrow method shows error
that create new method named as orElseThrow in Employee Pojo. */
return employeeRepository.save(newEmployee)
.orElseThrow(() -> new ConstraintViolationException("Required parameters can not be empty."));
}
可选
返回可以使用orelsetrow()
处理。不用尝试这种方法,您几乎可以用这种方法覆盖相同的异常,也可以用您自己的方式抛出异常
try{
employeeRepository.save(newEmployee);
}catch(ConstraintViolationException e){
throw new OwnDefinedException("Required parameters can not be empty.");
}
可选
返回可以使用orelsetrow()
处理。不用尝试这种方法,您几乎可以用这种方法覆盖相同的异常,也可以用您自己的方式抛出异常
try{
employeeRepository.save(newEmployee);
}catch(ConstraintViolationException e){
throw new OwnDefinedException("Required parameters can not be empty.");
}
存储库
save
方法不会返回可选的,您不能使用或lsetrow
。我不知道您使用的是哪种DB,但是如果DB级别需要某些字段,那么如果您尝试插入与预期不匹配的行,ORM框架应该会引发异常。只需进行一些调查,以了解在这种情况下引发的异常类型,并处理它“…创建新方法的错误…”您是否可以将其重新表述为“…OrelsThrow方法显示错误:在Employee Pojo中创建名为OrelsThrow的新方法”?存储库save
方法不会返回可选的,您不能使用orelsetrow
。我不知道您使用的是哪种DB,但是如果DB级别需要某些字段,那么如果您尝试插入与预期不匹配的行,ORM框架应该会引发异常。只需进行一些调查,以了解在这种情况下引发的异常类型,并处理它“…创建新方法的错误…”您是否可以将其重新表述为“…OrelsThrow方法显示错误:在Employee Pojo中创建名为OrelsThrow的新方法”?约束冲突异常不接受字符串,它接受设置值。我尝试了你在这里写的东西。我已经更新了,如果它违反了约束,你可以抛出你自己定义的异常。您还可以添加多个异常以相同的方式处理。约束冲突异常不接受字符串,它接受设置值。我尝试了你在这里写的东西。我已经更新了,如果它违反了约束,你可以抛出你自己定义的异常。您还可以添加多个异常以相同的方式进行处理。