JsonNode를 ObjectNode로 변환하는 방법
나는 가지고 있다com.fasterxml JsonNode
오브젝트에는 데이터가 포함되어 있습니다.데이터를 좀 조작해야겠어요.나는 답을 검색해 보았지만 제대로 이해하지 못했다.JsonNode 데이터 조작 방법을 제안해 주시겠습니까?나도 개종을 시도했다.JsonNode
로.ObjectNode
다음과 같이
ObjectNode objectNode = (ObjectNode)filterJson;
하지만 예외는 있습니다.
java.lang.ClassCastException: com.fasterxml.jackson.databind.node.TextNode cannot be cast to
com.fasterxml.jackson.databind.node.ObjectNode
제발 도와주세요!!
변환할 수 있습니다.JsonNode
에 있어서ObjectNode
다음과 같은 간단한 방법으로요.
ObjectNode objectNode = jsonNode.deepCopy();
잭슨 2.0에서 이용 가능하며 잭슨 2.4.0에서 테스트 완료
마침내 다음과 같은 해결책을 얻었습니다.
JsonNode jsonNode = Json.toJson("Json String");
ObjectNode node = (ObjectNode) new ObjectMapper().readTree(jsonNode.asText());
//perform operations on node
jsonNode = (JsonNode) new ObjectMapper().readTree(node.toString());
또는 아래와 같은 다른 것...
ObjectNode node = (ObjectNode) new ObjectMapper().readTree("Json String")
//perform operations on node
jsonNode = (JsonNode) new ObjectMapper().readTree(node.toString());
하지만 이게 좋은 방법인지 아닌지 모르겠어요. 위보다 더 좋은 방법이 있다면 알려주세요.감사해요!
저 같은 경우에는 바보같은 실수였지만 저도 이 오류가 있었습니다.실수로 수입했다org.codehaus.jackson.node.ObjectNode
대신com.fasterxml.jackson.databind.node.ObjectNode
Jackson ObjectNode를 사용하여 이슈를 수정했습니다.
다음과 같이 JsonNode를 ObjectNode로 변환할 수 있습니다.
JsonNode demoPath = requestParams.at("/Subscription/0");
((ObjectNode) demoPath).put("mylID", "test12");
나도 가끔 해 봐, 괜찮을 거야!정의해야 할 것은Student Class
속성을 매핑합니다.그 후, 그 변환은jsonNode
로.Student
물건.
Student student = objectMapper.convertValue(jsonNode1, Student.class);
이게 니즈에 맞을 것 같아!
언급URL : https://stackoverflow.com/questions/32713109/how-to-convert-jsonnode-to-objectnode
'programing' 카테고리의 다른 글
오류: [Home]이(가) 구성 요소가 아닙니다. 의 모든 구성 요소는 또는이어야 합니다. (0) | 2023.04.01 |
---|---|
babel-preset-es2015 모듈을 찾을 수 없습니다. (0) | 2023.04.01 |
$rootScope에서 $apply 실행과 다른 범위 실행 (0) | 2023.04.01 |
오류 소스 옵션 1.5는 더 이상 지원되지 않습니다.1.6 이후 사용 (0) | 2023.04.01 |
경고: strpos(): ......wordpress 플러그인의 바늘이 비어 있습니다. (0) | 2023.04.01 |