/ / Warum Play Framework JSON verwendet, warum MongoDb BSON verwendet - Json, Mongodb, Scala, PlayFramework, Bson

Warum Play Framework JSON verwendet, warum MongoDb BSON verwendet - json, mongodb, scala, playframework, bson

Ich hatte viele Probleme mit der Serialisierung / Deserialisierung von Scala-Datentypen in JSON-Objekte und deren Speicherung in MongoDB in BSON-Form.

Erste Frage: Warum verwendet Play Framework JSON, warum MongoDb BSON verwendet?

2. frage: Wenn ich mich nicht irre, hat Javascript keine Leser und Schreiber für die Serialisierung / Deserialisierung von BSON von MongoDB. Wie kann das passieren? Javascript kann nahtlos mit JSON umgehen, aber für BSON gehe ich davon aus, dass es einige Leser und Autoren braucht.

3. Frage: (ich lese irgendwo) warum Salat und ReactiveMongo unterschiedliche Mechanismen verwenden, um mit MongoDB zu sprechen

Antworten:

1 für die Antwort № 1

JSON ist heutzutage ein weit verbreitetes Format für die Datenübertragung. So gut, dass es "von der Box" im Web-Framework ist. Das ist der Grund, warum Play es hat.

Der gleiche Grund, warum Mongo es benutzt - es ist eine gute Ideeum Daten in demselben Format wie der Benutzer abzufragen und zu speichern. Warum also mongo BSON aber JSON verwenden? Nun, BSON ist das gleiche wie JSON, hat aber zusätzliche Eigenschaften für jeden Wert - Datenlänge und Datentyp. Der Grund dafür: Wenn Sie viele Daten anzeigen (wie db query), müssen Sie das gesamte Objekt in JSON lesen, um zu einem anderen Objekt zu gelangen. Wir können das Lesen in dem Fall überspringen, wenn wir die Länge der Daten kennen.

Sie benötigen also keine BSON-Reader in JS (dies könnte irgendwo sein, wird aber selten verwendet), da BSON das Format für die Verwendung innerhalb von DBs ist.

du kannst lesen Dieser Artikel für mehr informationen