Java 在异常类中有成员变量

Java 在异常类中有成员变量,java,validation,exception,transactional,Java,Validation,Exception,Transactional,是的,很好。异常是一个类,它可以像任何其他类一样具有成员变量和方法。顺便说一下,这种异常的一个非常接近的例子就是标准,由标准Bean验证框架抛出,其中包含一组约束冲突 但是,常规做法是使异常不可变:它的状态在创建时设置,之后再也不会更改。是的,这很好。异常是一个类,它可以像任何其他类一样具有成员变量和方法。顺便说一下,这种异常的一个非常接近的例子就是标准,由标准Bean验证框架抛出,其中包含一组约束冲突 但是,常规做法是使异常不可变:它的状态在创建时设置,之后再也不会更改。是的,这很好。异常是一

是的,很好。异常是一个类,它可以像任何其他类一样具有成员变量和方法。顺便说一下,这种异常的一个非常接近的例子就是标准,由标准Bean验证框架抛出,其中包含一组约束冲突


但是,常规做法是使异常不可变:它的状态在创建时设置,之后再也不会更改。

是的,这很好。异常是一个类,它可以像任何其他类一样具有成员变量和方法。顺便说一下,这种异常的一个非常接近的例子就是标准,由标准Bean验证框架抛出,其中包含一组约束冲突


但是,常规做法是使异常不可变:它的状态在创建时设置,之后再也不会更改。

是的,这很好。异常是一个类,它可以像任何其他类一样具有成员变量和方法。顺便说一下,这种异常的一个非常接近的例子就是标准,由标准Bean验证框架抛出,其中包含一组约束冲突


但是,常规做法是使异常不可变:它的状态在创建时设置,之后再也不会更改。

是的,这很好。异常是一个类,它可以像任何其他类一样具有成员变量和方法。顺便说一下,这种异常的一个非常接近的例子就是标准,由标准Bean验证框架抛出,其中包含一组约束冲突


但是,使异常不可变是常规做法:它的状态在创建时设置,在创建后不会更改。

那么你的问题是什么?那么你的问题是什么?那么你的问题是什么?那么你的问题是什么?
@Transactional //Spring transactional
void saveFile(ExcelFile file) {
    //Each sheet have different kind of entities and it is an ordered insert and first insert is needed before the second set of inserts
    for(each sheet in excel file) {
        List<Entity> entityList = convertIntoEntities(sheet);
        ValidationResult vr = validateEntities(entityList);
        saveEntities(entityList);
    }

    ValidationResult validateEntities(List<Entity> entityList) {
    validator.validate(entityList) // The new validation we need to do before 
}

void saveEntities(List<Entity> entityList) {
    dao.saveEntities(entityList);
}
ValidationResult {
 boolean isValid;
List<String> errorMessage;
}
class InvalidInputFileException extends RuntimeException {
ValidationResult vr;

}