找到 2637 篇文章 关于 Java
8K+ 次查看
JsonObjectBuilder 可用于创建 JsonObject 模型,而 JsonArrayBuilder 可用于创建 JsonArray 模型。可以使用 Json 类创建 JsonObjectBuilder,它包含用于创建构建器对象和使用 Json.createObjectBuilder().build() 构建空 JsonObject 实例的方法。可以使用 Json 类创建 JsonArrayBuilder,它包含用于创建构建器对象和使用 Json.createArrayBuilder().build() 构建空 JsonArray 实例的方法。示例 import java.io.*; import javax.json.*; public class JsonObjectTest { public static void main(String[] args) { JsonObject empObject = Json.createObjectBuilder().add("empName", "Jai") .add("empAge", ... 阅读更多
952 次查看
JsonGenerator 接口可用于以流式方式将 JSON 数据写入输出源。我们可以使用 JsonGenerator 的 writeStartArray() 方法创建或实现 JSON 数组,此方法在当前对象上下文中写入 JSON 名称/起始数组字符对。writeStartObject() 方法写入 JSON 起始对象字符,并且仅在数组上下文中有效,而 writeEnd() 方法写入当前上下文的结尾。语法 JsonGenerator writeStartArray(String name) 示例 import java.io.*; import javax.json.*; import javax.json.stream.*; public class JsonGeneratorTest { public static void main(String[] args) throws Exception { StringWriter writer = new ... 阅读更多
768 次查看
javax.json 包提供了一个对象模型 API 来处理 JSON。对象模型 API 是一个高级 API,它为 JSON 对象和数组结构提供不可变的对象模型。这些 JSON 结构可以使用 JsonObject 和 JsonArray 接口表示为对象模型。我们可以使用 JsonGenerator 接口以流式方式将 JSON 数据写入输出。JsonGenerator.PRETTY_PRINTING 是一个配置属性,用于美化生成 JSON。我们可以在下面的示例中实现美化打印 JSON。示例 import java.io.*; import java.util.*; import javax.json.*; import javax.json.stream.*; public class JSONPrettyPrintTest { public static void main(String args[]) { String jsonString = ... 阅读更多
2K+ 次查看
流式 API 包含一个重要的接口 JsonParser,此接口包含以流式方式解析 JSON 的方法,并提供对 JSON 数据的向前、只读访问。Json 类包含从输入源创建解析器的方法。我们可以使用 Json 类的静态方法 createParser() 解析 JSON。语法 public static JsonParser createParser(Reader reader) 示例 import java.io.*; import javax.json.Json; import javax.json.stream.JsonParser; import javax.json.stream.JsonParser.Event; public class JSONParseringTest { public static void main(String[] args) { String jsonString = "{\"name\":\"Adithya\", \"employeeId\":\"115\", \"age\":\"30\"}"; JsonParser parser = Json.createParser(new StringReader(jsonString)); while(parser.hasNext()) { Event event = ... 阅读更多
2K+ 次查看
javax.json.JsonObject 接口可以表示不可变的 JSON 对象值,并提供对 JSON 对象名称/值映射的不可修改的 map 视图。可以使用 javax.json.JsonReader 类的静态方法 readObject() 从输入源创建 JsonObject 实例,也可以使用 javax.json.Json 类的静态方法 createObjectBuilder() 创建。语法 public static JsonObjectBuilder createObjectBuilder() 示例 import java.io.*; import javax.json.*; public class JsonObjectTest { public static void main(String[] args) throws Exception { JsonObjectBuilder builder = Json.createObjectBuilder(); builder.add("Name", "Adithya"); builder.add("Designation", "Python Developer"); builder.add("Company", "TutorialsPoint"); builder.add("Location", "Hyderabad"); JsonObject data = builder.build(); ... 阅读更多
2K+ 次查看
javax.json.JsonArray 接口可以表示不可变的 JSON 数组,并提供对数组中值的不可修改的 list 视图。可以通过读取输入源中的 JSON 数据以及使用 javax.json.Json 类的静态方法 createArrayBuilder() 来创建 JsonArray 对象。为了执行它,我们需要导入 javax.json 包(下载 javax.json-api.jar 文件)。语法 public static JsonArrayBuilder createArrayBuilder() 示例 import java.io.*; import javax.json.*; import javax.json.JsonObjectBuilder; public class JsonArrayTest { public static void main(String[] args) { JsonObjectBuilder builder = Json.createObjectBuilder(); builder.add("Name", "Raja Ramesh"); builder.add("Designation", "Java Developer"); builder.add("Company", "TutorialsPoint"); ... 阅读更多
316 次查看
Flexjson 是一个轻量级库,用于将 Java 对象序列化和反序列化为 JSON 格式。我们可以使用 JSONDeserializer 类的 deserialize() 方法从 Reader 流反序列化 Java 对象,它使用 Reader 类的实例作为 JSON 输入。语法 public T deserialize(Reader input) 示例 import java.io.*; import flexjson.JSONDeserializer; public class JSONDeserializeReaderTest { public static void main(String[] args) { JSONDeserializer deserializer = new JSONDeserializer(); String jsonStr = "{" + "\"firstName\": \"Adithya\", " + ... 阅读更多
1K+ 次查看
JSONObject 是名称和值对的无序集合。JSONArray 的一些重要方法是 accumulate()、put()、opt()、append()、write() 等。accumulate() 方法累积某个键下的值,此方法类似于 put() 方法,不同之处在于如果某个键下存在现有对象,则可以在键下存储 JSONArray 以保存所有累积的值。如果存在现有 JSONArray,则可以添加新值。语法 public JSONObject accumulate(java.lang.String key, java.lang.Object value) throws JSONException 示例 import org.json.*; public class JSONAccumulateMethodTest { public static void main(String[] args) throws JSONException { ... 阅读更多
4K+ 次查看
JSONObject 可以将字符串文本解析成 Map 类型的对象。当我们需要一个预定义的值列表,而这些值并不代表某种数字或文本数据时,可以使用 Enum 来定义常量集合。我们可以使用 ObjectMapper 类的 readValue() 方法将 JSON 对象转换为枚举。在下面的示例中,我们将使用 Jackson 库将 JSON 对象转换为 Java 枚举。示例 import com.fasterxml.jackson.databind.*; public class JSONToEnumTest { public static void main(String arg[]) throws Exception { ObjectMapper mapper ... 阅读更多
1K+ 次查看
Jackson 的 @JsonInclude 注解可以用来在特定条件下排除类的属性或字段,它可以使用 JsonInclude.Include 枚举来定义。JsonInclude.Include 枚举包含一些常量,例如 "ALWAYS"、"NON_DEFAULT"、"NON_EMPTY" 和 "NON_NULL",用于确定是否排除属性(字段)。语法 public static enum JsonInclude.Include extends Enum 示例 import com.fasterxml.jackson.annotation.*; import com.fasterxml.jackson.databind.*; import java.io.*; public class JsonIncludeTest { public static void main(String args[]) throws IOException { ObjectMapper objectMapper = new ObjectMapper(); Employee emp = new Employee(); String jsonString = objectMapper.writerWithDefaultPrettyPrinter().writeValueAsString(emp); System.out.println(jsonString); } } // Employee 类 ... 阅读更多