我正在学习Java EE 6& Jax-RS(还没有开始关于Jax-RS的任何事情)为我的工作构建一个xml api。我有我的java控制器设置,现在我正在寻找使用我的模型来生成XML输出。我似乎无法通过搜索Google找到任何XML库。有人可以帮助我指出正确的方向吗?
答案 0 :(得分:5)
如果您使用JAX-RS,您可以使用@Produces(" application / xml"),然后您将拥有一个xml api。 JAX-RS默认使用JAXB。
请参阅http://jersey.java.net/nonav/documentation/latest/jax-rs.html#d4e318
答案 1 :(得分:3)
Java SE已经包含三种样式的XML解析器:
如果您要使用JAX-RS,您可能不希望使用这些“低级”XML库。 JAX-RS应该为您处理解析请求和格式化响应。我相信它使用JAXB,也是标准库的一部分。 JAXB将根据类及其控制序列化的字段/属性的注释自动序列化Java对象。
答案 2 :(得分:1)
这些库不是特定于JavaEE的。为了生成XML,StAX和JDOM是我的经验中最常用的。 StAX是JDK的一部分。他们还进行XML解析和验证。
StAX使用基于事件的模型(读取文档,当您看到元素X执行某些操作时),并且毫无疑问,JDOM使用类似于DOM的语法(查找元素X.Y)。 JDOM将整个文档树加载到内存中,这会占用内存但执行速度更快。
Here's概述了两个工具和JAXB。
答案 3 :(得分:1)
就个人而言,我喜欢Simple XML http://simple.sourceforge.net/
的简单性您也可以考虑使用Java EE6附带的JAXB。 http://www.oracle.com/technetwork/articles/javase/index-140168.html