在尝试对elasticSearch的API (使用Java)执行一些调用时,我遇到了一个问题。发送的大JSON中的一个属性就是星号。
"fields":{
"*":{
"highlight_query":{
...} } }我最初的工作方式是使用一个模型类,该类将映射到要发送的模型,但很明显,星号阻止了这种工作方式--您不能使用名为*的变量
我考虑过的另一种方法是将整个JSON粘贴到string.Format中并提供参数,但这将导致具有大量参数的String.Format,而这些参数是完全丑陋的。
还有别的办法吗?
发布于 2018-07-09 11:43:55
如果使用Jackson将模型类转换为json,则可以使用@JsonProperty注释告诉它字段的名称。
public class MyModelClass {
public String foo;
@JsonProperty("*") // what you want the property to be named
public String bar;
}这将使json的格式
{
"foo": "someValue",
"*": "someOtherValue"
}https://stackoverflow.com/questions/51244759
复制相似问题