ジャクソンはJSON配列の一般的なリストをオンにします

直接仕事に、理解するためのコードを参照してください多くのゴシップ。

パッケージcom.zzcloud.job.common。

輸入はjava.util.ArrayList; 
輸入はjava.util.List; 
輸入com.fasterxml.jackson.databind.JavaType。
輸入com.fasterxml.jackson.databind.ObjectMapper。
輸入com.zzcloud.job.common.entity.CheckItemsChild。

パブリッククラスTest { 

	パブリック静的な無効メイン(文字列[] argsが){例外をスロー
		文字列JSON = "[{\ Rの\ n" + 
				"\" "\" checkItemsId \ 1 \ "\ R \ n" + 
				"\ "checkItemsName \": "aaaaaa1の\" \ \ R \ n」+ 
				"\" checkPosition \ ":\" AAAAAA \ "\ R \ n" + 
				"}、{\ Rの\ n" + 
				"\" checkItemsId \ "\" 2 \ "\ R \ n" + 
				"\"
				"}、{\ Rの\ n" + 
				"\" checkItemsName \ ":\" ccccccc1の\ "\ R \ n" + 
				"\" checkPosition \:CCCCCCCの\ "\" "\ R \ n" + 
				「}、 {\ Rの\ N "+ 
				"\" checkItemsId \ ":" 4 \" \ \ R \ n "+ 
				"\" checkItemsName \ ":" dddddddddd1 \" \ \ R \ n」+ 
				"\" checkPosition \ "\" dddddddddd \ "\ R \ n" + 
				"}、{\ Rの\ n" + 
				"\" checkItemsId \ ":\" 5 \ "\ R \ n" + 
				"\" checkItemsName \ "\ "eeeeeeeeee1 \"、\ R \ n」+ 
				"\" checkPosition \ ":\" eeeeeeeeee \ "\ R \ n" + 
				"}、{\ Rを\ n"+ 
				"\" checkItemsId \ ":\" 6 \ "\ R \ n" + 
				"\" checkItemsName \:ffffffff1 \ "\" "\ R \ n" + 
				"\" checkPosition \ ":\" FFFFFFFF \ "\ rをする\ n" + 
				"}] \ R \ n" + 
				""。
		ObjectMapper objMapper =新しいObjectMapper(); 
		JavaTypeのJavaType = getCollectionType(ArrayList.class、CheckItemsChild.class)。
		リスト<CheckItemsChild>リスト=(リスト<CheckItemsChild>)objMapper.readValue(JSON、JavaTypeが)。
		list.stream()のforEach(P - >のSystem.out.println(p.getCheckItemsName()))。
		
	} 
	
	パブリック静的JavaTypeがgetCollectionType(<?> <?>クラスcollectionClass、クラス... elementClasses){ 
		ObjectMapperマッパー=新しいObjectMapper()。
		。mapper.getTypeFactory()constructParametricType(collectionClass、elementClasses)を返します。
	} 

}

 

おすすめ

転載: www.cnblogs.com/jimmyshan-study/p/11706364.html