-
Notifications
You must be signed in to change notification settings - Fork 2.1k
Azure Json Migration
Alan Zimmer edited this page Jan 24, 2024
·
8 revisions
com.azure:azure-json
is a library that defines interfaces for reading and writing JSON using streaming APIs, or in other words,
APIs where you explicitly define the behavior of the JSON being written. For example, a simple object with a single string property
"hello":
jsonWriter.writeStartObject()
.writeStringField("hello", "world")
.writeEndObject();
com.azure:azure-json
contains no external dependencies and provides a default implementation of the reader and writer interfaces.
-
azure-json
contains no external dependencies, removing possible dependency conflicts with popular JSON serialization libraries such as Jackson and GSON. - Stream serialization is easier to debug and reason about behavior as there isn't configurations hidden at construction time of the reader and writer nor does it need to perform reflective accesses to objects being deserialized.
- Reduces the amount of reflection and reflective access permissions, limiting possible access denied exceptions if the module system
is configured incorrectly or a
SecurityManager
is being used to limit permissions during runtime. - Possible reduction in JAR sizes and potential performance gains.
- Since reading and writing logic are interfaces the backing implementation could conform to the environment running the Azure SDK code. For example, you can use a GSON or Jackson implementation instead of the default.
- Frequently Asked Questions
- Azure Identity Examples
- Configuration
- Performance Tuning
- Android Support
- Unit Testing
- Test Proxy Migration
- Azure Json Migration
- New Checkstyle and Spotbugs pattern migration
- Protocol Methods
- TypeSpec-Java Quickstart
- Getting Started Guidance
- Adding a Module
- Building
- Writing Performance Tests
- Working with AutoRest
- Deprecation
- BOM guidelines
- Release process
- Access helpers