ドキュメントのセットを持つ MongoDB からレコードをフェッチする必要があります。CRUD 操作を行うために Spring Boot と MongoRepository を使用しています。Query アノテーションを使用して Mongo クエリを渡していますが、Spring は私が作成したクエリを解析できません。私は MongoDB を初めて使用するので、これがばかげた質問である場合はご容赦ください。どんな助けでも大歓迎です、ありがとう。
これは私が使用しているクエリです:
@Query("{ '_id.AID' : ?0, '_id.STS' : {'$gte': NumberLong(1475778600)}, '_id.ETS':{'$lte': NumberLong(1475781659)}}")
List<AggregatedData> findByAidAndStartTimeAndEndTime(String aid);
私が得ている例外:
Caused by: com.mongodb.util.JSONParseException:
{ '_id.AID' : "_param_0", '_id.STS' : {'$gte': NumberLong(1475778600)}, '_id.ETS':{'$lte': NumberLong(1475781659)}}
^
at com.mongodb.util.JSONParser.read(JSON.java:301) ~[mongodb-driver-3.2.2.jar:na]
at com.mongodb.util.JSONParser.parse(JSON.java:180) ~[mongodb-driver-3.2.2.jar:na]
Mongo レコード構造:
{
"_id" : {
"SiteId" : "JATH",
"AID" : "JA04",
"STS" : NumberLong(1475778600),
"ETS" : NumberLong(1475781659)
},
"TS" : [
1475820600,
1475779200,
1475779800,
1475780400,
1475781000,
1475781600
],
"Tags" : {
"ActivePower" : {
"Max" : [
1181.5,
1181.5,
1181.5,
1181.5,
1181.5,
1181.5
],
"Min" : [
73.5,
73.5,
73.5,
73.5,
73.5,
73.5
],
"Sum" : [
224430,
224430,
224430,
224430,
224430,
224430
],
"Avg" : [
374.05,
374.05,
374.05,
374.05,
374.05,
374.05
],
"Count" : [
600,
600,
600,
600,
600,
600
],
"Std" : [
175.242871942532,
175.242871942532,
175.242871942532,
175.242871942532,
175.242871942532,
175.242871942532
]
}
}
}