xmlbeans - 设置复杂类型的内容
我的 xsd 文件包含:
<xs:sequence>
<xs:element name="Book">
<xs:complexType>
<xs:attribute name="author" type="xs:string" />
<xs:attribute name="title" type="xs:string" />
</xs:complexType>
</xs:element>
</xs:sequence>
使用 xmlbeans,我可以使用以下方式轻松设置属性:
Book book= books.addNewBook();
book.setTitle("The Lady and a Little Dog");
我知道我可以使用 newCursor() 来设置元素的内容,但这是最好的方法吗?
object.newCursor().setTextValue(builer.toString());
My xsd file contains:
<xs:sequence>
<xs:element name="Book">
<xs:complexType>
<xs:attribute name="author" type="xs:string" />
<xs:attribute name="title" type="xs:string" />
</xs:complexType>
</xs:element>
</xs:sequence>
With xmlbeans, I can set the attributes easily using:
Book book= books.addNewBook();
book.setTitle("The Lady and a Little Dog");
I know that I can use newCursor() to set the content of the element, but is this the best way?
object.newCursor().setTextValue(builer.toString());
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我不太明白你的问题。
我认为您的 XSD 将为您提供 Java 类来生成这样的 XML:
您的意思是您想要在 XML 元素中设置“内部”文本,所以您最终会得到这样的 XML?
如果是这样,请将您的 XSD 更改为此,以使用嵌套元素而不是属性:
然后您将能够执行以下操作:
更新
好的 - 我现在明白了。
试试这个:
然后:
应该给出这样的 XML,我认为这就是你想要的:
I don't quite understand your question.
I think your XSD will give you Java classes to produce XML like this:
Do you mean you want to set the "inner" text within an XML element, so you end up with XML like this?
If so, change your XSD to this, to use nested elements rather than attributes:
Then you'll simply be able to do:
UPDATE
OK - I understand now.
Try this:
And then:
Which should give XML like this, which I think is what you want:
我不确定这是否正是您所要求的,但使用 XMLBeans 设置属性或元素值的最佳方法是使用 XMLBeans 生成的 getter 和 setter。
也许为您的光标问题提供更多背景信息会有所帮助。
I'm not sure if this is exactly what you're asking, but the best way to set the value of attributes or elements using XMLBeans is to use the XMLBeans-generated getters and setters.
Maybe a little more context for your cursor question would be helpful.