<property
type=""
update="true"
insert="true"
unique-key=""
unique="false"
optimistic-lock="true"
generated="never"
name="name"
属性的名称,必选属性
column=""
可选的字段,如果不填写则默认的和字段名称相同。
type=""
update="true"
insert="true"
formula=""
可选字段是一个SQL表达式,用于计算改持久化类属性的值,需要注意的是,既然值是计算出来的那么他自然不必对应于数据库中任何一个字段。
unique-key=""
unique="false"
optimistic-lock="true"
generated="never"
/>
也可以自定义类型
<property name="">
<type name="">
<param name=""></param>
</type>
</property>
hibernate的数据映射类型:
java类型 | Hibernate映射类型 | SQL类型 |
java.math.BigDecimal | big_decimal | numeric |
byte[] | binary | varbinary(blob) |
boolean(java.lang.Boolean) | boolean | bit |
byte(java.lang.Byte) | byte | tinyint |
java.util.Calendar | calendar | timestamp |
java.sql.Clob | clob | clob |
java.util.Date 或java.sql.Date | date | date |
double(java.lang.Double) | double | double |
float(java.lang.Float) | float | float |
int (java.lang.Integer) | integer | integer |
java.util.Local | local | varchar |
long(java.lang.Long) | long | bigint |
java.io.Serializable的某个实例 | serializable | varbinary(或blob) |
java.lang.String | string | varchar |
java.lang.String | text | clob |
java.util.Date 或 java.sql.Timestamp | time | timestamp |
从书上把这个表抄下来方便以后查阅.
考虑到 操作 blob 的字段太复杂 一个变换的技巧是 . 实体类用 byte[] 类型 , hibernate 类型用 binary ,数据库还是用 blob .这样 可以简化一些操作.