hibernate mysql映射类型
1、Hibernate的映射类型 hibernate mysql映射类型
Hibernate 映射类型 |
Java 类型 |
标准 SQL 类型 |
大小和取值范围 |
integer 或者 int |
int 或者 java.lang.Integer |
INTEGER |
4 字节 |
long |
long Long |
BIGINT |
8 字节 |
short |
short Short |
SMALLINT |
2 字节 |
byte |
byte Byte |
TINYINT |
1 字节 |
float |
float Float |
FLOAT |
4 字节 |
double |
double Double |
DOUBLE |
8 字节 |
big_decimal |
java.math.BigDecimal |
NUMERIC |
NUMERIC(8,2)8 位 |
character |
char Character String |
CHAR(1) |
定长字符 |
string |
String |
VARCHAR |
变长字符串 |
boolean |
boolean Boolean |
BIT |
布尔类型 |
yes_no |
boolean Boolean |
CHAR(1) (Y-N) |
布尔类型 |
true_false |
boolean Boolean |
CHAR(1) (T-F) |
布尔类型 |
MYSQL数据库有以下几种类型:整数型(int,binint,smallint,tinyint等等xxxint型)、浮点型(float,double,real等)、定点数型(decimal,也就是传说中的浮点型的字符串表达形式)、日期与时间型(data,time,datetime,timestamp),字符串型(char,varchar,text,tinytext,mediumtext,longtext等),二进制型(tinyblob,tinyblob,blob等blob型),枚举型(enum,set——set是类似于enum型)。
默认情况下,INT类型既包括正数,也包括负数,如果给INT列定义UNSIGNED属性,那么它的取值范围就永远是正数。
INT 类型 |
该类型的实际含义 |
Tinyint(m) |
8位整数,占用1个字节(-128~+127) |
smallint(m) |
16位整数,占用2个字节(-32768~+32767) |
medimumint(m) |
24位整数,占用3个字节(-8388608~+8388607) |
int(m),integer(m) |
32位整数,占用4个字节(-2147483648~+2147483647) |
bigint(m) |
64位整数,占用8个字节(-9.22E+18 ~ +9.22E+18) |
serial |
这其实是bigint auto_increment not null primary key的简写 |
上面tinyint(m)括号中的m,就是上文所指的最大显示宽度。最后一个serial含义里的auto_increment,代表了该字段是自增字段,即,往有该属性的字段里插数据时,系统会自动把该字段的当前最大值加上1后存进去。 一般而言,该属性往往用于主键字段。