Hibernate注解(一)类级别注解
1、Hibernate注解简介
2、JPA与Hibernate的关系
3、Hibernate注解分类
4、@Entity
5、@Table
6、@Embeddable
7、schema与catalog
一、Hibernate注解简介
用注解的目的:为了简化繁琐的ORM映射文件(*.hbm)的配置
二、JPA与Hibernate的关系
2.1、什么是JPA?
全称Java Persistence API,Java持久化API
JPA注解是JAVAEE的规范和标准
2.2、JPA与Hibernate的关系
JPA是标准接口,Hibernate是实现,但是其功可以是JPA的超集。
2.3、Hibernate如何实现与JPA的关系?
通过hibernate-annotation、hibernate-entitymanager和hibernate-core三个组件来实现。
一般在实际开发中,优先考虑用JPA注解,这样更有利于程序的移植和扩展。
三、Hibernate注解分类
类级别注解
属性级别注解
映射关系注解
四、类级别注解
@Entity
@Table
@Embeddable
五、类级别注解之准备工作
5.1、新建一个Java工程,加入Hibernate的相关jar包
5.2、加上数据库驱动和junit的jar包
5.3、创立Hibernate的配置文件
六、@Entity
6.1、@Entity:映射实体类
6.2、@Entity(name=”tableName”):name可选,对应数据库中的一个表,若表名与实体类名相同,则能省略。
注意:用@Entity时必需制定实体类的主键属性
(1)创立实体类
(2)把它配置到hibernate的配置文件中
(3)创立一个test源包,编写student的测试类,输出表结构
(4)表结构如下
(5)如果我指定了Entity的name属性为t_student
(6)生成的表就是t_student
七、@Table
@Table(name=””,catalog=””,schema=””)
(1)必需与@Entity配合用,只可以标注在实体的class定义处,表示实体对应的数据库表的信息。
(2)name:可选,映射表的名称,默认表名和实体名称一致,只有在不一致的情况下才需要指定表名。
(3)catalog:可选,目录名,默认为空。
(4)schema:可选,模式,默认为空。
Table注解中schema(模式)与catalog(目录)的比照图. 一个数据库对应多个catalog,一个catalog对应一个schema,一个schema对应多个表、视图、字段。
八、@Embeddable
1、@Embeddable表示一个非Entity类能嵌入到另一个Entity类中作为属性而存在。
2、@Embeddable不生成独立的表,能了解@Embeddable注解类为属性集。
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » Hibernate注解(一)类级别注解