Java UniVocity如何向自定义验证器添加参数
我正在为univocity解析器创建一些自定义验证器,并希望添加一些如下参数:Java UniVocity如何向自定义验证器添加参数,java,validation,univocity,Java,Validation,Univocity,我正在为univocity解析器创建一些自定义验证器,并希望添加一些如下参数: 公共类大小实现验证器 int max; 然后像这样使用它: @已解析 @验证(nullable=false,validators=Size.class(8)) 私有字符串someString; 我没有发现类似的东西,也没有找到带有注释的示例 可能使用javax.validation注释 或者可能是使用范围限制构造函数创建的sizeValidation对象 谢谢 这里有两个选项: 1-在setter上添加注释(简单
公共类大小实现验证器
int max;
然后像这样使用它:
@已解析
@验证(nullable=false,validators=Size.class(8))
私有字符串someString;
我没有发现类似的东西,也没有找到带有注释的示例
可能使用javax.validation注释
或者可能是使用范围限制构造函数创建的sizeValidation对象
谢谢 这里有两个选项:
1-在setter上添加注释(简单但不可重用:
@Parsed
@Validate(nullable = false)
public void setSomeString(String value){
if(value.length() < 3 || value.length() > 5){
throw new DataValidationException("SomeString can't have length " + value.length());
}
this.someString = value;
}
然后将其添加到属性中:
@Parsed
@Convert(conversionClass = LengthValidator.class, args = {"3", "5"})
private String someString;
希望这有帮助。部分解决。大小可以通过RegEx ^ ^
matches=“^.{3,5}$”
Size min=3,max=5进行验证。这非常有帮助。谢谢!非常棒的库顺便说一句。我正在将RegEx与ValidatedConversion相结合,它工作起来……很快!:-)
@Parsed
@Convert(conversionClass = LengthValidator.class, args = {"3", "5"})
private String someString;