JiBX 1.2,第2部分: 从XML模式到Java代码(一) - 编程入门网
"PRIORITY_MAIL");
public static final Shipping INTERNATIONAL_MAIL = new Shipping(
"INTERNATIONAL_MAIL");
public static final Shipping DOMESTIC_EXPRESS = new Shipping(
"DOMESTIC_EXPRESS");
public static final Shipping INTERNATIONAL_EXPRESS = new Shipping(
"INTERNATIONAL_EXPRESS");
private static final String[] values = new String[]{"DOMESTIC_EXPRESS",
"INTERNATIONAL_EXPRESS", "INTERNATIONAL_MAIL", "PRIORITY_MAIL",
"STANDARD_MAIL"};
private static final Shipping[] instances = new Shipping[]{
DOMESTIC_EXPRESS, INTERNATIONAL_EXPRESS, INTERNATIONAL_MAIL,
PRIORITY_MAIL, STANDARD_MAIL};
private Shipping(String value) {
this.value = value;
}
public String toString() {
return value;
}
public static Shipping convert(String value) {
int index = java.util.Arrays.binarySearch(values, value);
if (index >= 0) {
return instances[index];
} else {
return null;
}
}
public static Shipping fromValue(String text) {
Shipping value = convert(text);
if (value == null) {
throw new IllegalArgumentException("Value \''" + text
+ "\'' is not allowed");
} else {
return value;
}
}
}
}
还有许多其他的自定义也可用于 CodeGen。您稍后将在本教程中看到这些自定义的一些示例,但是为了更好地说明这些自定义的强大之处,有必要继续介绍一个更复杂的模式。 JiBX 1.2,第2部分: 从XML模式到Java代码(一)(9)时间:2012-01-14 IBM Dennis Sosnoski尝试一个实际的模式 独立的模式定义非常适合用于简单演示,但是在应用到企业应用程序中广泛使用的复杂模式定义时,它无法让用户了解工具的工作原理。现在将以一个符合行业标准的 HR-XML 模式定义为例,继续介绍一个更实际的示例。 HR-XML TimeCard 模式 HR-XML Consortium 是为开发针对人力资源的 XML 表示的开放标准而成立的组织。它代表着 110 多家企业成员,并且几乎有 50 家技术公司通过了符合其标准的认证。 本教程中使用的 HR-XML 模式包含 157 个模式,其中混合了顶级文档定义和常用组件。CodeGen 可以轻松地处理这些模式,但是生成的类数目和相互关系的复杂度掩盖了模式处理的更有趣方面。为了关注这些细节,这里使用的 HR-XML 的子集包括 TimeCard 元素的一个顶级文档定义,以及作为 TimeCard 定义的一部分引用的常用组件 — 总计七个模式定义。 您可以在 hrxml/schemas 目录下找到本教程中使用的 HR-XML 模式定义子集。清单 7 显示了经过编辑的 TimeCard 元素定义的主要模式。这将给出一个 HR-XML 模式样式样例,该样例将同时使用嵌套及全局类型的定义,并且比第一个示例包含更广泛的模式结构,包括: <xs:choice> 组合器(compositor)(如 TimeCardType 定义中的某些嵌入式 complexType 所 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |