Существует ли библиотека BSON serializer/deserializer для PHP или Java?BSON serializer/deserializer
ответ
Вы можете проверить драйверы MongoDB для этих языков, поскольку MongoDB использует BSON. Посмотрите, что они используют, или украсть их реализацию.
Не для Java, но вот один для Obj-C: https://github.com/martinkou/bson-objc/
Другая возможность BSON4Jackson расширение для Jackson, который добавляет поддержку для BSON чтения/записи.
BSON encoder/decoder в Java довольно тривиален. Следующий фрагмент кода из моего приложения, так что он находится в Scala. Я уверен, что вы могли бы легко реализовать реализацию Java.
import org.bson.BSON
import com.mongodb.{DBObject, DBDecoder, DefaultDBDecoder}
def convert(dbo: DBObject): Array[Byte] =
BSON.encode(dbo)
// NB! this is a stateful object and thus it's not thread-safe, so have
// to create one per decoding
def decoder: DBDecoder = DefaultDBDecoder.FACTORY.create
def convert(data: Array[Byte]): DBObject =
// NOTE: we do not support Ref in input, that's why "null" for DBCollection
decoder.decode(data, null)
def convert(is: InputStream): DBObject =
// NOTE: we do not support Ref in input, that's why "null" for DBCollection
decoder.decode(is, null)
Единственное существенное замечание, что DBEncoder
экземпляр имеет внутреннее состояние его (вос) используется в процессе декодирования, так что это не поточно-. Это должно быть нормально, если вы декодируете объекты один за другим, но в противном случае вам лучше создать экземпляр для сеанса декодирования.
проверить ссылку http://php.net/manual/en/ref.mongo.php
bson_decode - Десериализует объект BSON в массив PHP
bson_encode - сериализует PHP переменную в строку BSON
А вот C++ 11 JSON кодировщик и декодер, которые я сделал с помощью Rapidjson, потому что собственный кодировщик JSON (BSONObj::jsonString
) использует нестандартную кодировку для длин: https://gist.github.com/ArtemGr/2c44cb451dc6a0cb46af
Кроме того, в отличие от встроенного кодека JSON, у этого нет проблем с декодированием массивов верхнего уровня.
- 1. Зачем нужен BSON тип BSON?
- 2. Python BSON библиотека: получить BSON псевдоним
- 3. BSON :: InvalidDocument: Невозможно сериализовать объект в BSON
- 4. BSON document to FilterDefinition <Bson> MongoDb C# driver
- 5. вложенная BSON к плоскому BSON в Java или Скале
- 6. C++ BSON Library, как загрузить bson из c_str()?
- 7. Почему это называется BSON?
- 8. BSON библиотека для java?
- 9. BSON игнорировать поле
- 10. BSON decode от Blob
- 11. MongoDB ошибка BSON Объект
- 12. Передача BSON клиенту Silverlight?
- 13. Ошибка Java MongoDB/BSON
- 14. BSON 4.0.0 ошибки камня
- 15. Формат JSON String (bson)
- 16. MongoDB: BSON to JSON
- 17. Запись данных в BSON
- 18. 'nodemon' генерирует ошибку bson
- 19. BSON для двоичных данных
- 20. Преобразовать тип варианта BSON
- 21. MongoDB BSON OID Failure
- 22. mongodb BSON размер
- 23. BSON для Swift?
- 24. Mongodb .bson import
- 25. BSON ObjectID из строки
- 26. неинициализированной постоянная BSON :: Документ
- 27. Представлено представление BSON?
- 28. json преобразуется в BSON
- 29. Понимание BSON Обозначение
- 30. MongoDB JSON или BSON?