这是我的问题的一个例子: 1)我有一个XML文件,其中定义了我的发票的规则 rules.. price RequiredTrue/Required MinValue0.1/MinValue price../rules 2)我在java中有一个Invoice对象(重要的是:这应该保持不变
1)我有一个XML文件,其中定义了我的发票的规则
<rules> .. <price> <Required>True</Required> <MinValue>0.1</MinValue> <price> .. </rules>
2)我在java中有一个Invoice对象(重要的是:这应该保持不变(普通).不应该包含任何注释或任何内容.)
public class Invoice implements Serializable {
private String details;
private String tax;
private String recipient;
private double price;
//getter and setter
}
3)至少我有一个Validator对象
public class Validator(){
public boolean validate(String xmlfile, Invoice i) {
//todo: Invoice i should be validated with xmlfile
}
}
我需要的:
Validator应该使用内部规则的XML文件
例如
<price> <Required>True</Required> <MinValue>0.1</MinValue> <price>
并使用该规则验证Invoice java对象.
我可以使用任何好的框架吗?还是教程?途径?
任何帮助都非常感谢.
谢谢.
您可以使用 Hibernate Validator这是JSR 303的实现.您可以在XML中编写约束,如下所示<field name="x2" ignore-annotations="true" > <!-- XML is stronger -->
<constraint annotation="javax.validation.constraints.Min">
<element name="value">2</element>
</constraint>
</field>
一个完整而精彩的教程可以在here找到
