Java-драйвер MongoDB, как добавлять массивы со смешанными типами данных

У меня проблемы, потому что я хочу увеличить объект даты за 1 час с помощью драйвера Java, это:

{"tDate":{$add: ["$tDate", 3600*1000]}

создание, не будет работать, потому что mongoDB ожидает число и получает строку

String [] date_add_array =  {"$t_tDate", String.valueOf(3600*1000) };
BasicDBObject query_component = new BasicDBObject("tDate", new BasicDBObject("$add", date_add_array))

>exception: $add only supports numeric or date types, not String

Использование списка объектов BasicDBList не сработает, потому что мне не нужен объект внутри массива. Это будет (и это не то, что я хочу или нужно):

 {"tDate":{$add: [{"$tDate", 3600*1000}]}

Какая работа вокруг? Как я могу передать MongoDB массив смешанных типов данных?


person SQL.injection    schedule 18.09.2013    source источник
comment
это полезно? stackoverflow.com/questions/17335037/   -  person 3rf    schedule 18.09.2013
comment
Я думаю, что ссылка говорит о том, чтобы просто передать объект DBList без дальнейшего переноса его в массив?   -  person 3rf    schedule 18.09.2013
comment
@ 3rf да, я хочу передать массив/список в развернутом виде. Использование DBList поместит массив обернутых объектов. Я получу это с помощью BasicDBList: {tDate:{$add: [{$tDate, 3600*1000}]}, но мне нужно это: {tDate: {$добавить: [$tDate, 3600*1000]}.   -  person SQL.injection    schedule 18.09.2013
comment
Приведенная выше ссылка, кажется, предполагает, что что-то вроде BasicDBList dbList = new BasicDBList(); dbList.add("$tDate); dbList.add(3600*1000); может работать. Опять же, я просто пытаюсь быть полезным, у меня очень ограниченный опыт работы с java-драйвером.   -  person 3rf    schedule 18.09.2013
comment
@3rf Я попробую это завтра, когда вернусь в офис. Ура, приятель   -  person SQL.injection    schedule 18.09.2013
comment
это работает, вчера, когда я пытался использовать BasicDBList, я не мог добавить и int (интерфейс принимает только объекты), сегодня я создал объект Integer, и BasicDBList его принял :)   -  person SQL.injection    schedule 19.09.2013