@配置普通属性
普通属性使用@Column与@Basic配置。二者都可以省略,如果省略,则全部按照默认的规则配置。
@Column | 所指定的属性用于生成DDL建表语句。 publicinterface Column extends Annotation { String name(); // 数据库列名称 boolean unique(); // 是否唯一 boolean nullable(); // 是否允许为null boolean insertable(); // 是否允许插入 boolean updatable(); // 是否允许更新 String columnDefinition(); // 列定义 String table(); // 所属表 int length(); // 列长 int precision(); // 小数点精度 int scale(); // 整数长度 } |
@Basic | 可为普通属性配置加载方式,默认为即时加载。 如果列数据比较大,例如大文本类型或者LOB类型,可配置延时加载。 publicinterface Basic extends Annotation { // 抓取策略 FetchType fetch(); // 配置该列是否可为null。如果为true,表示该属性是可选的,可以为null,否则不可以为null boolean optional(); } |
XML配置普通属性
XML中使用<property>元素配置普通属性。
<property
name="salary"
precision="2"
scale="10"
length="255"
column="salary"
type="string"
update="true"
insert="true"
lazy="false"
unique="false"
not-null="false">
</property>
@配置中,如果某属性没有配置,则默认该属性名与数据表列名相同;而XML配置中,如果某属性没有配置,则认为该属性没有对应的数据库列,不参与持久化。
今天就先写到这里,更多学习资料