java - JAXB 中的 native 查询

标签 java xml xpath jaxb simple-framework

有没有一种方法可以处理 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。您在问题中包含的 getValueByXPathEclipseLink JAXB (MOXy) 提供的扩展.下面是它的使用示例(我是 MOXy 的负责人):

由于 JAXB 对象只是 POJO,您可以对它们使用任何类型的查询实现。以下是可能有帮助的相关问题的链接:

关于java - JAXB 中的 native 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18379282/

相关文章:

javascript - 在android webview中删除网页的某些部分然后显示它

java - 与 zip aws S3 对象相关的类和接口(interface)有哪些?

java - Spring Security 即使使用 @PreAuthorize ("permitAll()"也会阻止匿名请求)

python - 使用 lxml 修改大型 xml 文件

xml - 是否可以在assert和xpath的帮助下使用xsd 1.1检查或验证xml节点的值?

java - ActionBarSherlock 类型 mAdded 无法解析或不是字段 Watson.java

php - DOMXPath 查询提取特定的 li 元素

xpath - 使用 Sahi 驱动程序使 CSS 选择器(第一个 child )在 Behat 3 中工作

xslt - 使用XSLT查找文本模式的索引

java - 如何防止 JAXB 在编码期间写入未使用的 namespace