Hibernate注解
1:引入注解
@entity,通过这个注解知道这个类是做持久化操作的
@Table(name="tb_user") //表名要跟数据库的表名一致
@Transient //配置瞬时的,不要跟数据库对应,@Transient指定属性不需要持久化
映射关联关系
如何配置一对多(Set集合)/多对一
1:映射多对一
1):@ManyToOne
2):指定关联列@JoinColumn(name="xxx_id")
2:映射一对多
1):@OneToMany 默认会使用连接表做一对多的关联。
2):添加@JoinColumn(name="xxx_id")后,就会使用外键关联,而不使用连接表了。
3:映射双向一对多
1):在多端:
@ManyToOne
@JoinColumn(name="外键名")
2):在一端:(一对多关联,把关系维护权交给多端更有效率)
@OneToMany(mappedBy="多端的关联属性名")
@JoinColumn(name="外键名")
4:mappedBy属性:用在双向关联中,把关系的维护权反转
/一对多:
@OneToMany(mappedBy="cha") //配的是指多的一方指向一的一方
//mappedBy="cha"指多的一方的 private Cha cha;
/多对一
@ManyToOne(fetch=FetchType.LAZY)表明要不要延迟加载