2017-07-27 26 views
-2

一個鍵值對我想要添加的鍵值對像我想補充現有JSON文件

"Signature":64237402i242840805749670 in the existing json field properties 

{ 
"headers":{ 
    "JMSCorrelationID":"The JMS correlation ID", 
    "JMSDeliveryMode":"The JMS delivery mode", 

}, 
"properties":{ 
    "asu_timestamp":"12345678", 
    "asu_type":"Ack", 
} 

請告訴我如何通過使用Java將其添加到屬性。

+0

您的新鍵值是否來自任何來源,並且您想將其添加到現有的JSON中?還有一個,你想添加特定的標籤(如標題,屬性)或任何地方? – sForSujit

+0

我正在通過使用java代碼生成鍵值,我想將它添加到現有的JSON屬性標籤 – UtkarshaG

+0

好吧,給我一些時間,我會給你解決方案 – sForSujit

回答

0
package com.sujit; 

import java.io.File; 
import java.io.IOException; 

import org.codehaus.jackson.JsonGenerationException; 
import org.codehaus.jackson.map.JsonMappingException; 
import org.codehaus.jackson.map.ObjectMapper; 
import org.codehaus.jackson.node.ObjectNode; 

public class JSONTest { 
     public static void main(String[] args) throws JsonGenerationException, JsonMappingException, IOException { 
      ObjectMapper mapper = new ObjectMapper(); 
      ObjectNode nodes = mapper.readValue(new File("D:\\test.json"),ObjectNode.class); 
      nodes.with("properties").put("Signature", "64237402i242840805749670 "); 
      mapper.writer().writeValue(new File("D:\\test.json"), nodes); // Overwritting the file with new updated JSON data 
     } 
} 

添加的jar 傑克遜全1.9.0 jar文件到您的類的構建路徑,(鏈接http://www.java2s.com/Code/Jar/j/Downloadjacksonall190jar.htm

否則,如果你正在使用maven,添加依賴

<dependency> 
    <groupId>org.codehaus.jackson</groupId> 
    <artifactId>jackson-mapper-asl</artifactId> 
    <version>1.9.0</version> 
</dependency> 
+0

是的代碼工作。很大的幫助,謝謝你。 – UtkarshaG

+0

@UkkarshaG不客氣 – sForSujit