Post

Hibernate Mapping Types

1. Mapping Types

Hibernate 매핑 문서를 준비할 때 Java 데이터 유형을 RDBMS 데이터 유형에 매핑한다. 매핑 파일에 선언되고 사용되는 유형은 Java 데이터 유형이 아니며 SQL 데이터베이스 유형도 아니다. 이러한 유형을 Hibernate 매핑 유형이라고 하며, Java에서 SQL 데이터 유형으로 변환하거나 그 반대로 변환할 수 있다.

2. Primitive Types

Mapping typeJava typeANSI SQL Type
integerint or java.lang.IntegerINTEGER
longlong or java.lang.LongBIGINT
shortshort or java.lang.ShortSMALLINT
floatfloat or java.lang.FloatFLOAT
doubledouble or java.lang.DoubleDOUBLE
big_decimaljava.math.BigDecimalNUMERIC
characterjava.lang.StringCHAR(1)
stringjava.lang.StringVARCHAR
bytebyte or java.lang.ByteTINYINT
booleanboolean or java.lang.BooleanBIT
yes/noboolean or java.lang.BooleanCHAR(1) (‘Y’ or ‘N’)
true/falseboolean or java.lang.BooleanCHAR(1) (‘T’ or ‘F’)

3. Date and Time Types

Mapping typeJava typeANSI SQL Type
datejava.util.Date or java.sql.DateDATE
timejava.util.Date or java.sql.TimeTIME
timestampjava.util.Date or java.sql.TimestampTIMESTAMP
calendarjava.util.CalendarTIMESTAMP
calendar_datejava.util.CalendarDATE

4. Binary and Large Object Types

Mapping typeJava typeANSI SQL Type
binarybyte[]VARBINARY (or BLOB)
textjava.lang.StringCLOB
serializableany Java class that implements java.io.SerializableVARBINARY (or BLOB)
clobjava.sql.ClobCLOB
blobjava.sql.BlobBLOB
Mapping typeJava typeANSI SQL Type
classjava.lang.ClassVARCHAR
localejava.util.LocaleVARCHAR
timezonejava.util.TimeZoneVARCHAR
currencyjava.util.CurrencyVARCHAR

[출처 및 참고]

This post is licensed under CC BY 4.0 by the author.