38.3. Simple Types을 위한 Java 클래스 생성


38.3.1. 개요

기본적으로 명명된 단순 형식은 열거형이 아닌 한 생성된 형식을 가져오지 않습니다.By default, named simple types do not result in generated types unless they are enumerations. 간단한 유형을 사용하여 정의된 요소는 Java 기본 유형의 속성에 매핑됩니다.

Java 클래스에 간단한 유형이 생성되어야 하는 경우가 있습니다(예: 유형 대체를 사용하려는 경우).

전역적으로 정의된 모든 간단한 유형에 대한 클래스를 생성하도록 코드 생성기에 지시하려면 globalBindings 사용자 지정 요소의 mapSimpleTypeDeftrue 로 설정합니다.

38.3.2. 사용자 정의 추가

코드 생성기가 간단한 유형의 Java 클래스를 생성하도록 지시하기 위해 globalBinding 요소의 mapSimpleTypeDef 특성을 추가하고 해당 값을 true 로 설정합니다.

예 38.13. “SimpleTypes에 대한 Java 클래스 생성을 위한 인라인 사용자 지정” 코드 생성기가 이름이 지정된 간단한 유형에 대해 Java 클래스를 생성하도록 강제 적용하는 인 줄 사용자 지정을 보여줍니다.

예 38.13. SimpleTypes에 대한 Java 클래스 생성을 위한 인라인 사용자 지정

<schema targetNamespace="http://widget.com/types/widgetTypes"
        xmlns="http://www.w3.org/2001/XMLSchema"
        xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
        xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
        jaxb:version="2.0">
  <annotation>
    <appinfo>
      <jaxb:globalBindings mapSimpleTypeDef="true" />
    </appinfo>
  </annotation>
  ...
</schema>

예 38.14. “파일의 강제 적용에 파일 바인딩” 간단한 형식의 생성을 사용자 지정하는 외부 바인딩 파일을 보여줍니다.

예 38.14. 파일의 강제 적용에 파일 바인딩

<jaxb:bindings xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
               xmlns:xsd="http://www.w3.org/2001/XMLSchema"
               jaxb:version="2.0">
  <jaxb:bindings schemaLocation="types.xsd">
    <jaxb:globalBindings mapSimpleTypeDef="true" />
  <jaxb:bindings>
<jaxb:bindings>
중요

이 사용자 지정은 전역 범위에 정의된 간단한 유형만 영향을 칩니다.

38.3.3. 생성된 클래스

단순 형식에 대해 생성된 클래스에는 value 라는 하나의 속성이 있습니다. value 속성은 34.1절. “기본 유형” 의 매핑에 의해 정의된 Java 유형 중 하나입니다. 생성된 클래스에는 value 속성의 getter 및 setter가 있습니다.

예 38.16. “간단한 유형의 사용자 지정 매핑”예 38.15. “사용자 지정 매핑을 위한 간단한 유형” 에 정의된 간단한 유형에 대해 생성된 Java 클래스를 보여줍니다.

예 38.15. 사용자 지정 매핑을 위한 간단한 유형

<simpleType name="simpleton">
  <restriction base="xsd:string">
    <maxLength value="10"/>
  </restriction>
</simpleType>

예 38.16. 간단한 유형의 사용자 지정 매핑

@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "simpleton", propOrder = {"value"})
public class Simpleton {

    @XmlValue
    protected String value;

    public String getValue() {
        return value;
    }

    public void setValue(String value) {
        this.value = value;
    }

}
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.