Le pilote standard prend les types java.util.date et les sérialise en tant que dates BSON. Donc avec un objet de collection pour "exemple"
Date now = new Date();
BasicDBObject timeNow = new BasicDBObject("date", now);
example.insert(timeNow);
Si vous cherchez un moyen d'utiliser le temps "serveur" dans les opérations, il y a le $currentDate
opérateur, mais cela fonctionne avec les "mises à jour", donc vous voudriez une opération "upsert":
BasicDBObject query = new BasicDBObect();
BasicDBObject update = new BasicDBObject("$currentDate",
new BasicDBObject("date", true)
);
example.update(query,update,true,false);
Puisqu'il s'agit en fait d'une instruction de mise à jour, vous devez faire attention à ne pas faire correspondre de documents si vous souhaitez qu'il s'agisse uniquement d'une insertion. Il serait donc préférable de vous assurer que votre "requête" contient des informations uniques, telles qu'un _id
nouvellement généré ou quelque chose d'aussi unique.