这是我的问题的一个例子: 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找到