>Java >java지도 시간 >JAXB에서 키를 요소 이름으로 사용하여 XML에 대한 맵을 마샬링하는 방법은 무엇입니까?

JAXB에서 키를 요소 이름으로 사용하여 XML에 대한 맵을 마샬링하는 방법은 무엇입니까?

Patricia Arquette
Patricia Arquette원래의
2024-11-16 19:09:03446검색

How to Marshall a Map to XML with Key as Element Name in JAXB?

키를 요소 이름으로 사용하여 XML로 맵 마샬링

JAXB는 객체를 XML로 매핑하는 편리한 방법을 제공합니다. 그러나 지도의 경우 일반적으로 지도를 중첩된 를 포함하는 요소 및 요소.

경우에 따라 키를 요소 이름으로, 값을 요소 내용으로 사용하여 Map to XML을 마샬링할 수도 있습니다.

동적 속성 이름 처리

사용자 정의 마샬링 및 역마샬링을 처리하기 위해 JAXB 개발자가 제공하는 권장 접근 방식에는 XmlAdapter를 사용하는 것이 포함됩니다. 그러나 동적 속성 이름을 처리하기 위해 어댑터를 구현하는 것은 어려울 수 있습니다.

대체 솔루션

이러한 XML 생성은 인터페이스 계약에 미치는 영향으로 인해 일반적으로 권장되지 않지만 몇 가지 가능한 해결책은 다음과 같습니다.

1. 키에 대한 열거 유형 사용:

맵 키에 대한 열거 유형을 정의합니다. 이렇게 하면 컴파일 타임에 XSD에 알려진 요소 목록이 포함됩니다.

2. 기본 구조 단순화:

MapAdapter를 사용하여 지도를 키와 값의 속성이 포함된 MapElement 배열로 변환합니다. 이는 XML 구조를 키 및 값 속성이 있는 요소.

결론

동적 요소 이름으로 XML을 생성하는 것은 권장되지 않지만 제공된 대안은 이 동작이 다음과 같은 특정 시나리오에 대한 솔루션을 제공합니다. 원합니다.

위 내용은 JAXB에서 키를 요소 이름으로 사용하여 XML에 대한 맵을 마샬링하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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