hibernate常用注解说明

一、导入注解开发支持的jar包
hibernate-annotations.jar
hibernate-commons-annotations.jar (Hibernate中支持注解开发的jar包)
ejb3-persistence.jar(API规范的jar包)
slf4j/slf4j-api-1.5.0.jar
slf4j-log4j12-1.5.0.jar
log4j-1.2.15.jar  (支持日志输出的jar包,注意版本的匹配)

二、hibernate注解开发的目的
1、主要是代替实体和数据表的映射文件
2、核心配置文件中的数据库配置还的用xml文件

三、hibernate常用注解
1、@Entity 表示当前的类为实体类,声明在类的前面。可以将当前类和数据库的表和字段进行关联映射
2、@Table 表示要映射的表,声明在类的前面
3、@Id:表示主键的映射,声明在主键的get方法前边,默认情况下主键利用assigned(用户提供)生成策略。如果想要设置API规
范提供了四种主键生成策略:
@GeneratedValue(strategy=GenerationType.AUTO)      相当于Hibernate框架的native主键生成策略
@GeneratedValue(strategy=GenerationType.IDENTITY)  相当于Hibernate框架的identity主键生成策略,适用于MySQL,SQL Server
@GeneratedValue(strategy=GenerationType.SEQUENCE)  相当于Hibernate框架的sequence主键生成策略,适用于Oracle,DB2
@GeneratedValue(strategy=GenerationType.TABLE)     使用一张单表管理主键值。
         默认情况下API规范是不支持Hibernate框架中的uuid的主键生成策略,假如我们想要使用,需要我们进行增加主键生成器,如下:
@GenericGenerator(name="hibernate-uuid",strategy="uuid")
@GeneratedValue(generator="hibernate-uuid")

4、@Column : 表示映射属性,和表的字段进行关联
5、@ManyToOne : 表示映射关系中的多对一
6、 @JoinColumn : 表示外键映射属性,和表的外键字段进行关联
7、@OneToMany : 表示映射关系中的一对多,这里需要注意,一对多时,外键的维护需要翻转交给
多的一方进行维护,需要配置反转属性mappedBy,属性取值为多的一方的映射属性名称。相当于
xml配置文件中的Inverse="true"。
8、@OrderBy : 表示排序字段
9、@Transient : 表示声明瞬时属性,不和数据库的字段发生关联,也就是没有表中列与之映射。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值