草庐IT

java - JAXB 一步将集合编码为 XmlElement 和 XmlAttribute

我想将集合编码为嵌套属性。现在我有:@XmlElement(name="entry")publicCollectiongetSizes(){...}返回:12但我想得到:如果没有新类,这可能吗? 最佳答案 如果没有新类(class),似乎是不可能的。使用XmlAdapter:classEntryAdapterextendsXmlAdapter{publicEntryAdapter.Entrymarshal(Integerid){returnnewEntry(id);}publicIntegerunmarshal(Entrye){re

java - 占用空间小的 XML 库

由于配置的复杂性增加,我想为我的库的配置文件引入XML,并替换现有的属性文件。我愿意使用XSD公开描述XML结构(因此该结构已记录并可以进行版本控制)如果可能,从该XSD生成Java源代码以进行解码(类似于JAXB/XJC)。另一种简单的访问方法也可以(例如简单的XPath表达式)占用空间小,很少甚至没有额外的依赖如果足迹不是问题,我会选择JAXB马上。是否有类似的库占用空间更小?编辑:所谓占用空间,我指的不是消耗的内存,而是库的“大小”(以KB/类数表示)。我希望我相当简单的用例能够被一个包含大约5-6个类的库覆盖。我不需要JAXB的全部功能。 最佳答案

java - 将 hibernate 对象直接转换为 XML 时的任何特殊注意事项

我正在尝试使用JAXB将hibernate对象列表转换为XML。是否有任何特殊注意事项或无法转换具有一对多关系的hibernate对象列表的任何原因?1.)Hibernate提供的PersistentSet似乎不是可序列化的,因此不能由JAXB转换。我可能需要将其转换为“可序列化”集。它是否正确?如果是,我该如何实现?编辑1.我将编写Set适配器类,类似于此示例链接。将更新我的发现。http://www.objectpartners.com/2010/01/25/using-jpa-and-jaxb-annotations-in-the-same-object/如下所述,无需转换Per

java - 无论如何只注释 JAXB 的必填字段

我正致力于使用JAXB将Hibernate对象转换为XML。在我们的类(class)中,我们有大约50个领域,我只需要其中的10个。基本上,我定义了具有2个属性的XmlType#propOrder。JAXB提示说一些公共(public)setter/getter不是proporder的一部分。我看到如果我不使用XmlTransient/XmlElement中的任何一个标记属性,JAXB就会提示它。有什么方法可以跳过在每个字段上写“XmlTransient”吗? 最佳答案 您可以使用@XmlAccessorType(XmlAccess

java - JAXB:如何将元素与命名空间绑定(bind)

他是我在远程机器上托管的XML:LearningJAXBJoeBloggLearningJAXBSEJoeBlogg我有如下装订书:书籍装订:@XmlRootElement(name="book")@XmlType(propOrder={"title","author"})publicclassBook{privateStringtitle;privateStringauthor;privateStringlocation;@XmlElement(name="title")publicStringgetTitle(){returntitle;}publicvoidsetTitle(St

java - 如何使用 xsom\dom\jaxb 获取 xsd 的最大深度?

如何使用xsom获取xsd的最大深度。例如:xsd的每个复杂类型下的元素总数?此外,如果在该复杂类型下存在复杂类型,那么该复杂类型下的元素+属性的数量……使用dom\xsom\jaxbCommentdescribingyourrootelement 最佳答案 其实我只是在找这个。我在API中找不到任何东西,所以昨天找到了一种递归方法。我只是将我的递归方式粘贴到最深处并将它们添加到一个Hashmap中。/**Parsesthexmlschemastringintoahashmap*notethathashmaphasaformofat

java - JAXB 继承冲突 - 在子类上重新注释

我的项目目前有这个环境:publicabstractclassFoo{privateListthings;publicListgetThings(){returnthis.things;}}publicabstractclassBarextendsFoo{@XmlElements({@XmlElement(name="first",type=First.class)})publicListgetThings(){returnsuper.getThings();}}publicclassBobarextendsBar{@XmlElements({@XmlElement(name="sec

java - 功能 'http://apache.org/xml/features/standard-uri-conformant' 的 SAXNotRecognizedException

任何人都知道为什么我会遇到以下代码的异常。我正在使用Java6。finalXMLReaderreader=XMLReaderFactory.createXMLReader();reader.setFeature("http://xml.org/sax/features/validation",doValidate);reader.setFeature("http://apache.org/xml/features/validation/schema",doValidate);reader.setFeature("http://apache.org/xml/features/standa

java - 是否有使用编码/解码的替代方法?

关闭。这个问题需要detailsorclarity.它目前不接受答案。想改进这个问题吗?通过editingthispost添加细节并澄清问题.关闭9年前。Improvethisquestion我一直在开发一个小应用程序,我需要在其中响应XML消息,例如blah我发现编码非常困惑,是否有更好的方法或替代方法?编辑:我的问题是深入了解什么更好?使用编码(marshal)处理/解封处理或一些更简单的替代方法。

java - 使用自定义注释的 Jaxb 编码

我有一个要求,根据字段上标记的自定义注释编码/解码javapojo的一些元素。假设我的javapojp中有3个字段@CustomVersion("v1")privateStringfield1;@CustomVersion("v1","v2")privateStringfield2;@CustomVersion("v2")privateStringfield3;如果我在jaxb中转换时传递version="v1"参数,我只想用v1编码字段。如果我通过v2,所有带有v2注释的字段都应该只被编码。甚至可以使用jaxb吗?我确信通过某些库或方式可以支持选择性编码,经过相当多的搜索后我仍然无法