문제

먼저이 멋진 사이트를 사용하려고 시도 - 2 시간 동안 검색 한 후 : 따라서 Java Bean이 제공되는 (변경되지 않음에만 주석을 달 수 없음) JaxB를 사용하여 XML에 매핑해야합니다. 언어 기본값 또는 사용자 정의 기본값을 포함 할 때 프리미티브 유형을 인쇄하지 않기를 원합니다.

말했듯이 Java Bean을 변경할 수 없으므로 원시 유형을 객체 포장지로 변경합니다.

어떻게 최선을 다합니까?

샘플 콩 :

class Foo {  
public String name;  
// -1 is user defined default, to indicate field is not set.  
public long someIdx=-1;  
// ...  
}  

Foo f = new Foo();  
f.name = "Duke";

이 인스턴스화의 경우, 내가 원하는 것은 다음과 같은 출력입니다.

<foo><name>Duke</name></foo>
도움이 되었습니까?

해결책

JaxB의 Xmladapters를 사용할 수 있습니다. JAXB 2.0 이후 이용 가능 (JDK 6.0)

어댑터를 사용하여 콩을 혼자서 완전히 다른 클래스를 주석/변경하게합니다. 이것은 귀하의 경우 문제가되지 않아야합니다.

여기에서 내 답장을 참조하십시오

JAXB의 저자의 블로그 게시물을 참조하십시오

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top