wsreversemapping 명령
wsreversemapping 도구는 데이터베이스 스키마에서 지속 클래스 정의와 메타데이터를 생성합니다.
구문
명령을 실행하기 전에 클래스 경로에 persistence.xml 파일의 사본을 배치하거나 -p [path_to_persistence.xml] 인수에서 특성 파일로 지정해야 합니다. 다음에서 명령을 실행하세요.bin 하위 디렉토리 프로필_루트 예배 규칙서.
명령 구문은 다음과 같습니다.
wsreversemapping.sh [parameters][arguments]wsreversemapping.bat [parameters][arguments]매개변수
- -schemas/-s<스키마 및 테이블 이름> : XML 스키마 파일이 제공되지 않은 경우 wsreversmapping 도구를 실행하기 위한 쉼표로 구분된 스키마 및 테이블 이름 목록입니다.
목록의 각 요소는 openjpa.jdbc.Schemas 특성의 이름 지정 규칙을 준수해야 합니다. 이 매개변수 플래그가 생략되는 경우 해당 기본값은 Schemas 특성입니다. Schemas 특성이 정의되지 않으면 모든 스키마가 역방향으로 맵핑됩니다.
- -package/-p<패키지 이름> : 생성된 클래스의 패키지 이름입니다.
패키지 이름이 지정되지 않으면 생성된 코드에 패키지 선언이 포함되지 않습니다.
- -directory/-d<출력 디렉터리> : 생성된 모든 코드와 메타데이터는 이 경로의 디렉터리에 기록됩니다.
경로가 클래스 패키지와 일치하지 않는 경우 패키지 구조는 이 디렉토리 바로 아래에 작성됩니다. 이 매개변수의 기본값은 현재 디렉토리입니다.
- -useSchemaName/-sn<사실/t | 거짓/f>: 이 매개변수 플래그를 다음으로 설정합니다. 진실 생성된 각 클래스의 이름에 스키마와 테이블 이름을 포함합니다.
이 메소드는 이름이 동일한 테이블을 갖는 여러 스키마를 처리할 때 유용합니다.
- -useForeignKeyName/-fkn<사실/t | 거짓/f>: 이 매개변수 플래그를 다음으로 설정합니다. 진실 관계의 필드 이름이 데이터베이스 외래 키 이름을 기반으로 하도록 하려는 경우.
관계 필드 이름은 기본적으로 관련 클래스의 이름에서 파생됩니다.
- -nullableAsObject/-no<사실/t | 거짓/f> : 기본적으로 외래 키가 아닌 모든 열은 기본 형식에 매핑됩니다.
널값을 지원하는 열 대신 프리미티브 랩퍼 필드를 생성하려면 이 매개변수 플래그를 true로 설정하십시오.
- -blobAsObject/-bo<사실/t | 거짓/f> : 기본적으로 모든 이진 열은 byte[] 필드에 매핑됩니다.
이 열을 대신 Object 필드로 맵핑하려면 이 매개변수 플래그를 true로 설정하십시오.
주목: 이러한 방식으로 매핑되면 열은 직렬화된 Java™ 개체를 포함하는 것으로 추정됩니다. - -primaryKeyOnJoin/pkj<사실/t | 거짓/f> : 표준 역방향 매핑 도구 동작은 기본 키가 있는 모든 테이블을 영구 클래스에 매핑하는 것입니다.
스키마의 많은 결합 테이블에도 1차 키가 있는 경우 해당 테이블에 대한 클래스를 작성하지 않으려면 이 플래그를 true로 설정하십시오.
- -inverseRelations/-ir<사실/t | 거짓/f>: 이 매개변수 플래그를 다음으로 설정합니다. 거짓 감지된 모든 다대일 또는 일대일 관계에 대해 역일대다 또는 일대일 관계가 생성되는 것을 방지합니다.
- -useDatastoreIdentity/-ds<사실/t | 거짓/f>: 로 설정 진실 단일 숫자 기본 키 열이 있는 테이블에 대해 데이터 저장소 ID를 사용합니다.
일반적으로 이 도구는 생성된 모든 클래스에 애플리케이션 ID를 사용합니다.
- -useBuiltinIdentityClass/-bic<사실/t | 거짓/f>: 이 매개변수 플래그를 다음으로 설정합니다. 거짓 가능한 경우 wsreversemapping 도구가 내장 애플리케이션 ID 클래스를 사용하지 못하도록 방지합니다.
이렇게 하면 1차 키 열이 하나뿐인 경우에도 도구를 사용하여 사용자 정의 애플리케이션 ID 클래스를 작성합니다.
- -innerIdentityClasses/-inn<사실/t | 거짓/f>: 이 매개변수 플래그를 다음으로 설정합니다. 진실 생성된 애플리케이션 ID를 영구 클래스 내에서 정적 내부 클래스로 생성하도록 분류합니다.
기본 설정은 false입니다.
- -identityClassSuffix/-is<접미사> : 응용 프로그램 ID 클래스 이름을 형성하기 위해 클래스 이름에 추가하거나 내부 ID 클래스의 경우 내부 클래스 이름을 추가하는 접미사입니다.
기본 접미사는 다음과 같습니다.Id.
- -typeMap/-typ<타입 매핑> : 스키마에 표시되는 각 SQL 유형에 대해 생성할 기본 Java 클래스를 지정하는 문자열입니다.
형식은 SQLTYPE1=JavaClass1, SQLTYPE2=JavaClass2입니다. SQL 유형 이름은 먼저 SQLTYPE(SIZE,PRECISION) 기반 사용자 정의를 찾고 이어 SQLTYPE(SIZE), SQLTYPE 기반 사용자 정의를 찾습니다. CHAR 유형을 가진 열이 있는 경우 이 열은 먼저 CHAR(50,0) 유형 이름 스펙을 찾고 이어 CHAR(50), 마지막으로 CHAR을 찾습니다. 예를 들어, 정확한 크기가 50자인 모든 char 열에 대한 char 배열을 생성하고 모든 유형 이름 INTEGER의 short를 생성하려면 CHAR(50)=char[],INTEGER=short를 지정해야 합니다.
주목: 다양한 데이터베이스는 서로 다른 유형 이름을 다르게 보고하며, 한 데이터베이스 유형이 다른 데이터베이스에서는 작동하지 않을 수 있습니다. JPA for WebSphere Application Server가 검사하는 유형 이름을 추적하려면 MetaData 채널에 대한 TRACE 레벨 로깅을 활성화하십시오. - -customizerClass/-cc<수업 이름>: 클래스의 전체 이름 org.apache.openjpa.jdbc.meta.ReverseCustomizer 사용자 정의 플러그인.
역방향 사용자 정의기를 직접 지정하지 않는 경우 시스템 기본값은 PropertiesReverseCustomizer입니다. 이 사용자 정의기는 -customizerProperties 플래그를 사용하여 해당 특성 파일에 단순 사용자 정의 옵션을 지정합니다.
- -customizerProperties/-cp<속성 파일 또는 리소스> : 초기화 시 역방향 맞춤설정 도구에 전달할 속성 파일의 경로 또는 리소스 이름입니다.
- -customizer/-c<속성 이름> <속성값>: 주어진 속성 이름은 지정된 리버스 커스터마이저의 해당 Java Bean 속성과 일치하고 지정된 값으로 설정됩니다.
사용법
- 데이터베이스 테이블과 데이터베이스 연결을 구성해야 합니다.
- 명령행에서 $ {profile_root}/bin 디렉토리에 wsreversemapping 도구를 실행하십시오.
- 이 도구는 모든 클래스에 대한 .java 파일과 XML 디스크립터 파일 orm.xml을 함께 생성합니다.
예
schema.xml 파일에 저장된 정보에 기초하여 엔티티를 생성합니다. Schema.xml은 스키마 도구를 실행하여 작성되었습니다. Java 파일은 src 디렉토리에 작성되며 com.xyz 패키지를 사용합니다.
${profile_root}/bin/wsreversemapping.sh -pkg com.xyz -d ./src schema.xml${profile_root}\bin\wsreversemapping.bat -pkg com.xyz -d ./src schema.xml정보를 기반으로 엔터티를 생성합니다. DB2® 데이터 베이스. 엔티티는 src 디렉토리에 작성되며 com.reversemapped 패키지를 사용합니다.
C:\> %profile_root%/bin/wsreversemapping.bat -sa dropDB Magazine.javapkg com.reversemapped -d src
-connectionDriverName=com.ibm.db2.jcc.DB2Driver -connectionURL=jdbc:db2:localhost:50000/TEST
-connectionUser=db2User -connectionPassword=db2Password
C:\> %profile_root%\bin\wsreversemapping.bat -sa dropDB Magazine.javapkg com.reversemapped -d src
-connectionDriverName=com.ibm.db2.jcc.DB2Driver -connectionURL=jdbc:db2:localhost:50000/TEST
-connectionUser=db2User -connectionPassword=db2Password
추가 정보
자세한 정보는 Apache OpenJPA 사용자 안내서의 맵핑 절을 참조하십시오.