>  기사  >  Java  >  Java의 Jackson은 json 문자열을 일반 목록으로 변환합니다.

Java의 Jackson은 json 문자열을 일반 목록으로 변환합니다.

高洛峰
高洛峰원래의
2017-02-16 16:50:261414검색

제 생각에는 Java와 Json 간의 변환을 위한 프레임워크 중 가장 빠른 것은 Jackson입니다. 물론 Google의 Gson도 매우 좋지만, 인터넷상의 사람들의 성능 테스트에 따르면 Jackson이 더 빠른 것 같습니다.

Jackson은 ObjectMapper 객체의 readValue 및 writeValueAsString 메소드를 사용하여 일반 JavaBean과 Json 간의 변환을 처리할 수 있습니다. 그러나 List6f9a1a6711dbe2504e0d3824080f2898과 같은 복합 유형 컬렉션을 변환하려면 먼저 복합 유형을 일반 컬렉션 유형으로 역직렬화해야 합니다.

ArrayList6f9a1a6711dbe2504e0d3824080f2898인 경우 ObjectMapper의 getTypeFactory().constructParametricType(collectionClass, elementClasses)를 사용합니다.

HashMapf06a8c1c72a64d06223d9867f08acdf6인 경우 ObjectMapper의 getTypeFactory().constructParametricType( HashMap.class,String.class, YourBean.class);

public final ObjectMapper mapper = new ObjectMapper(); 
  
public static void main(String[] args) throws Exception{ 
  JavaType javaType = getCollectionType(ArrayList.class, YourBean.class); 
  List<YourBean> lst = (List<YourBean>)mapper.readValue(jsonString, javaType); 
}
 
  /**  
  * 获取泛型的Collection Type 
  * @param collectionClass 泛型的Collection  
  * @param elementClasses 元素类  
  * @return JavaType Java类型  
  * @since 1.0  
  */ 
public static JavaType getCollectionType(Class<?> collectionClass, Class<?>... elementClasses) {  
  return mapper.getTypeFactory().constructParametricType(collectionClass, elementClasses);  
}

위 내용은 이 글의 전체 내용입니다. 모든 분들의 학습에 도움이 되기를 바라며, 또한 모두가 PHP를 지원해 주시길 바랍니다. 중국사이트.

Java Jackson이 json 문자열을 일반 목록으로 변환하는 것과 관련된 더 많은 기사를 보려면 PHP 중국어 웹사이트에 주목하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.