天天看點

基于jackson的json與對象互相轉換

項目中有對于json串的處理,剛好今天用到,分享給大家一個好用的架構 — jackson

需要的包 :

項目是maven管理的,給大家一個配置檔案的引用

1 2 3 4 5 6 7 8 9 10

<

dependency

>

<

groupId

>org.codehaus.jackson</

groupId

>

<

artifactId

>jackson-core-asl</

artifactId

>

<

version

>1.9.12</

version

>

</

dependency

>

<

dependency

>

<

groupId

>org.codehaus.jackson</

groupId

>

<

artifactId

>jackson-mapper-asl</

artifactId

>

<

version

>1.9.12</

version

>

</

dependency

>

測試代碼  :   

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21

import

java.io.IOException;

import

java.util.HashMap;

import

org.codehaus.jackson.JsonParseException;

import

org.codehaus.jackson.map.JsonMappingException;

import

org.codehaus.jackson.map.ObjectMapper;

import

com.bny.bank.core.BusinessException;

public

class

Test {

@SuppressWarnings

(

"rawtypes"

)

public

static

void

main(String[] args) 

throws

BusinessException, JsonParseException, JsonMappingException, IOException {

ObjectMapper mapper = 

new

ObjectMapper();

String str = 

"{\"jackson\":[{\"id\":\"1\",\"desc\":\"這是一個好工具\",\"sortId\":\"1\"},{\"id\":\"2\",\"desc\":\"這是一個好工具\",\"sortId\":\"2\"}]}"

;

// readValue(json串, 要轉換的類型)

HashMap m = mapper.readValue(str, HashMap.

class

);

System.out.println(m.toString());

// writeValueAsString(要轉換的類型),傳回一個json

System.out.println(mapper.writeValueAsString(m));

}

}

輸出結果  :   

基于jackson的json與對象互相轉換