Spearal:一個全新的序列化協議

infoq發表於2014-10-22

  Spearal 是一個全新、開源的序列化協議,該協議旨在替換JSON序列化協議,並將HTML和移動應用直接連線到Java的後端。Spearal能夠保證端點間複雜資料結構的傳輸能夠良好的執行,它還提供了在標準JSON序列化協議中沒有的高階功能, 如區域性物件序列化、正確處理JPA未初始化的屬性和外來鍵屬性、物件特性過濾等。目前,儘管Spearal還處在初期開發階段, 不過已經實現了對JavaScript和Java的支援,基本實現了對Android的支援;iOS版本使用蘋果的新語言Swift,目前還在初級開發階段,還實現了對JAX-RS以及Spring的整合。當前,隨著Web的不斷髮展以及非同步資料請求在移動應用上的大規模應用,傳送資料的序列化已經變成了一個重大問題,並且應用之間資料交換的事實標準的JSON存在著固有的一些不足,如它不能對自迴圈的物件序列化、缺乏對物件引用的支援、不儲存所序列化物件的類名。儘管這些問題能夠通過非標準的方法來解決,但是非標準方法的JSON編碼和解碼的效率相對比較低。而Spearal旨在突破JSON序列化協議的以上不足並替換JSON序列化協議。

  另外,Spearal專案託管在GitHub上,遵循Apache 2.0開源協議釋出,相關子專案包括Spearal JSSpearal JavaSpearal Jpa2Spearal JaxrsSpearal Spring,目前還提供通過Maven構建Spearal的所有模組的方式。更多Spearal相關資訊請登入GitHub上的專案主頁Spearal官網。目前,除了JSON和 Spearal序列化協議外,還有輕量級的Hessian序列化協議、可擴充套件的序列化協議OceanBase、Google的protocol buffer協議等。

相關文章