WebSphere 확장을 사용하여 CMP 맵핑 정의

jbosscmp-jdbc.xml 파일에는 CMP(Container-Managed Persistence) 및 CMR(Container-Managed Relationships)이 사용하는 데이터베이스 열에 대한 EJB 속성의 맵핑이 있습니다.

이 규칙은 jbosscmp-jdbc.xml 파일에서 CMP 필드 맵핑을 발견합니다. 자동화된 수정은 WebSphere(R )에 필요한 매핑을 생성하려고 시도합니다 애플리케이션 서버 Container-Managed Persistence 에 필요한 매핑을 생성하려고 시도합니다. 맵핑은 데이터베이스 유형 및 스키마에 민감합니다. 자동 수정은 데이터베이스에 맞는 올바른 스키마를 선택하기 위해 최선의 노력을 기울입니다.

솔루션

데이터베이스 벤더는 이 규칙의 특성 패널에 구성할 수 있습니다. 자동 발견으로 설정된 경우 jbosscmp-jdbc.xml 파일의 database-type 설정은 사용되는 데이터베이스의 유형을 판별합니다. 아무 것도 지정되지 않은 경우 DB2가 사용됩니다. 지원되는 데이터베이스 유형은 DB2(R), Oracle, SQLServer, 및 SQLServer2000 뿐입니다. MySQL, POINTBASE, Informix(R) 및 Sybase는 마이그레이션할 수 없습니다.

다음 테이블은 사용되는 데이터베이스 열 유형에 대한 Java 유형을 표시합니다. 데이터베이스 테이블 스키마가 이 형식에서 벗어나거나 jbosscmp-jdbc.xml 파일에 사용자 정의 데이터 유형이 지정된 경우, CMP가 작동하지 않습니다. 이런 경우, Rational Application Developer의 RDB 맵핑 마법사에 대한 EJB의 중간 합류식 설정을 사용하여 CMP 맵핑을 마이그레이션하십시오.

Java 유형DB2OracleSQLServer
java.lang.Integer/intINTEGERINTEGERINTEGER
java.lang.Double/doubleDOUBLE PRECISIONDOUBLE PRECISIONDOUBLE PRECISION
java.lang.Float/floatFLOATFLOATFLOAT
java.lang.Short/shortINTEGERINTEGERSMALLINT
java.lang.Long/longBIGINTINTEGERDECIMAL
java.math.BigDecimalDECIMALDECIMALDECIMAL
java.lang.StringVARCHARVARCHARVARCHAR
java.lang.Character/charCHARCHARCHAR
java.lang.Byte/byteINTEGERINTEGERTINYINT
java.lang.Boolean/booleanINTEGERINTEGERINTEGER
java.sql.DateDATEDATEDATETIME
java.sql.TimeTIMEDATEDATETIME
java.sql.TimestampTIMESTAMPDATEDATETIME
byte[]/java.io.SerializableVARCHAR FOR BIT DATARAWIMAGE