我有一个需要序列化为XML的对象,其中包含以下字段:
List<String> tags = new List<String>();
Run Code Online (Sandbox Code Playgroud)
XStream将它串行化(在一些别名之后),如下所示:
<tags>
<string>tagOne</string>
<string>tagTwo</string>
<string>tagThree</string>
<string>tagFour</string>
</tags>
Run Code Online (Sandbox Code Playgroud)
这是可以的,但是我希望能够将这些<string>元素重命名为<tag>.我无法从XStream网站上的别名文档中看到一种明显的方法.我错过了一些明显的东西吗
我的应用程序经常需要使用查找来修饰它所服务的文档中的值,以获取各种代码的可读形式.
例如<product_code>PC001</product_code>,希望被返回为<product_code code='PC001'>Widgets</product_code>.它并不总是product_code; 有一些不同类型的代码需要类似的行为(其中一些只有几十个例子,其中一些只有几千个.)
我想知道的是在数据库中存储数据的最有效方法是什么?我可以想到两种可能性:
1)每个代码类型一个文档,包含许多元素:
<product-codes>
<product-code code = "PC001">Widgets</product-code>
<product-code code = "PC002">Wodgets</product-code>
<product-code code = "PC003">Wudgets</product-code>
</product-codes>
Run Code Online (Sandbox Code Playgroud)
2)每个代码一个文档,每个文档包含一个<product-code>如上所述的元素.
(显然,两种选择都包括合理的指数)
这些中的任何一个明显比另一个快吗?还有另一种更好的选择吗?
我的感觉是,每个文档保留一个"东西"通常会更好,因为它在概念上稍微清晰一些(我理解)更适合ML的索引,但在这种情况下,它似乎会导致非常大量的非常小的文件.那是我应该担心的吗?