有没有一种方法可以处理 JAXB 和/或 SimpleXML 中的 native 查询?我正在寻找类似于 JPA Named Queries 的东西.
在我们的环境中,我们希望为 JAXB、SimpleXML 和 JPA 使用相同的查询 API。
我知道有
jaxbContext.getValueByXPath(customer, "@id", null, Integer.class);
但我需要获取多个具有特定值属性的对象。
最好在 JPA/SimpleXML 中实现这样的东西:
@NamedQuery(name="orderFromCountry", query="SELECT o FROM Order o where o.address like :address")
最佳答案
JAXB (JSR-222)目前没有像 JPA 那样定义任何类型的查询 API。您在问题中包含的 getValueByXPath
是 EclipseLink JAXB (MOXy) 提供的扩展.下面是它的使用示例(我是 MOXy 的负责人):
由于 JAXB 对象只是 POJO,您可以对它们使用任何类型的查询实现。以下是可能有帮助的相关问题的链接:
关于java - JAXB 中的 native 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18379282/