Używaj rozszerzeń produktu WebSphere do definiowania odwzorowań trwałości zarządzanej przez kontener

Plik jbosscmp-jdbc.xml zawiera odwzorowania atrybutów komponentów EJB na kolumny bazy danych używane przez usługi CMP (Container-Managed Persistence) i CMR (Container-Managed Relationships).

Ta reguła wykrywa odwzorowania pól CMP w pliku jbosscmp-jdbc.xml. Automatyczna poprawka podejmie próbę wygenerowania mapowań wymaganych przez WebSphere(R ) Serwer aplikacji dla Container-Managed Persistence do działania. Odwzorowania są zależne od typu i schematu bazy danych. Zautomatyzowana poprawka podejmie próbę wyboru poprawnego schematu dla bazy danych.

rozwiązanie

Dostawcę bazy danych można skonfigurować na panelu właściwości reguły. Jeśli zostanie ustawiona wartość Automatyczne wykrywanie, ustawienie database-type w pliku jbosscmp-jdbc.xml określa typ używanej bazy danych. Jeśli nie zostanie podana żadna wartość, używana będzie baza danych DB2. Obsługiwane są tylko następujące typy bazy danych: DB2(R), Oracle, SQLServer i SQLServer2000. Baz danych MySQL, POINTBASE, Informix(R) i Sybase nie można poddać migracji.

W poniższej tabeli przedstawiono odwzorowania typów Java na typy kolumn używanej bazy danych. Jeśli schemat tabeli bazy danych odbiega od tego formatu lub jeśli w pliku jbosscmp-jdbc.xml określone są niestandardowe typy danych, usługi CMP mogą nie działać. W takich przypadkach do migracji odwzorowań CMP należy użyć ustawienia Zbieżne w kreatorze odwzorowań EJB na RDB produktu Rational Application Developer.

Typ JavaDB2OracleSQLServer
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