curl 命令,自动把时间字段的字符串转换成date类型例如:
curl -XPUT http://localhost:9200/test/person/1 -d '
{
"name":"1",
"birthday":"2016-02-15 18:14:13",
"no":"2222",
"age":"100",
"top":"20",
"weigth":"40",
"with":"123.0",
"boy":"2"
}
'
在person 的mapping时,es会自动为其创建mapping,但是默认不会为birthday 定义为date类型,如果需要自动转换,则需要修改其源码:
1. 在RootObjectMapper.DYNAMIC_DATE_TIME_FORMATTERS 字段中检查你的时间格式是否已经在默认当中,如果没有,则需要加上去.
2. 确保 RootObjectMapper.DATE_DETECTION=true.
同理,如果想让age,no等等数字类型自动转换为int,long,float类型可以设置:RootObjectMapper.NUMERIC_DETECTION=true.
curl -XPUT http://localhost:9200/test/person/1 -d '
{
"name":"1",
"birthday":"2016-02-15 18:14:13",
"no":"2222",
"age":"100",
"top":"20",
"weigth":"40",
"with":"123.0",
"boy":"2"
}
'
在person 的mapping时,es会自动为其创建mapping,但是默认不会为birthday 定义为date类型,如果需要自动转换,则需要修改其源码:
1. 在RootObjectMapper.DYNAMIC_DATE_TIME_FORMATTERS 字段中检查你的时间格式是否已经在默认当中,如果没有,则需要加上去.
2. 确保 RootObjectMapper.DATE_DETECTION=true.
同理,如果想让age,no等等数字类型自动转换为int,long,float类型可以设置:RootObjectMapper.NUMERIC_DETECTION=true.
0 个回复