在哪里可以找到 Java EE 6 XML 库
我正在学习 Java EE 6 & Jax-RS(尚未开始任何有关 Jax-RS 的工作)为我的工作构建 xml api。我已经设置了 java 控制器,现在正在寻找使用我的模型来生成 XML 输出。我似乎无法通过搜索 Google 找到任何 XML 库。有人可以帮我指出正确的方向吗?
I'm learning Java EE 6 & Jax-RS (haven't started anything about Jax-RS yet) to build an xml api for my work. I have my java controllers setup and I'm looking now to use my models to generate XML output. I can't seem to find any XML libraries by searching Google. Can someone help point me in the right direction?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
如果你使用JAX-RS,你可以使用@Produces("application/xml"),那么你将拥有一个xml api。
JAX-RS 默认与 JAXB 配合使用。
请参阅http://jersey.java.net/nonav/documentation/最新/jax-rs.html#d4e318
If you use JAX-RS, you can use @Produces("application/xml"), then you will have an xml api.
JAX-RS works by default with JAXB.
See http://jersey.java.net/nonav/documentation/latest/jax-rs.html#d4e318
Java SE 已经包含三种样式的 XML 解析器:
如果您打算使用 JAX-RS,您可能不想使用这些“低级”XML 库。 JAX-RS 应该为您处理解析请求和格式化响应。我相信它使用 JAXB为此,也是标准库的一部分。 JAXB 将根据类及其控制序列化的字段/属性的注释自动序列化 Java 对象。
Java SE already includes XML parsers in three styles:
If you're going to use JAX-RS, you probably don't want to use these "low-level" XML libraries. JAX-RS should handle parsing requests and formatting responses for you. I believe it uses JAXB for this, also a part of the standard library. JAXB will serialise a Java object automatically based on annotations on the class and its fields / properties that control the serialisation.
就我个人而言,我喜欢 Simple XML 的简单性 http://simple.sourceforge.net/
您也可以考虑使用 JAXB Java EE6 附带的。 http://www.oracle.com/technetwork/articles/javase/index -140168.html
Personally I like the simplicity of Simple XML http://simple.sourceforge.net/
Also you could consider using JAXB that comes with Java EE6. http://www.oracle.com/technetwork/articles/javase/index-140168.html
这些库不是特定于 JavaEE 的。根据我的经验,对于生成 XML,StAX 和 JDOM 是最常用的。 StAX 是 JDK 的一部分。他们还进行 XML 解析和验证。
一些教程: 1 2
StAX 使用基于事件的模型(阅读文档,当您看到元素 X做某事),毫不奇怪,JDOM 使用与 DOM 类似的语法(查找元素 XY)。 JDOM 将整个文档树加载到内存中,这会占用内存但执行速度更快。
这里概述了这两个工具和 JAXB 的比较。
The libraries aren't JavaEE specific. For generating XML, StAX and JDOM are the most commonly used in my experience. StAX is part of the JDK. They also do XML parsing and validation.
A couple of tutorials: 1 2
StAX uses an event based model (read the document and when you see element X do something) and unsuprisingly JDOM uses syntax similar to DOM (find element X.Y). JDOM loads the entire document tree into memory, which eats up memory but performs faster.
Here's an overview comparing the two tools and JAXB.