Hibernate 关于实体映射常用注解

注解

类注解(写在类上面的)

@Entity       标明实体类

@Table(name="数据库标明")      生成数据库时的表名由这个决定

@DynamicInsert 和 @DynamicUpdate

在Hibernate中可以利用@DynamicInsert(true)和@DynamicUpdate(true)生成动态SQL语句,即在插入和修改数据的时候,语句中只包括要插入或者修改的字段。

属性注解(写在属性上)

@Id     标明该属性生成数据库表后相应字段为主键

@GeneratedValue    标明自动增长,一般和@Id配合使用

@Column(name="数据库字段名",nullable=false,columnDefinition="int(8) default ‘0‘ comment ‘这是注释‘")       标明数据库字段名,是否为空,对应数据库的类型、长度、默认值、注释等

时间: 2024-10-11 17:54:24

Hibernate 关于实体映射常用注解的相关文章

hibernate的实体映射(一对一)

Hibernate的实体映射的主要任务就是实现数据库关系表与持久化类之间的映射,其关系如图: 双向映射一对一关联关系,通过唯一外键方式进行一对一关联映射,就是一个表的外键和另一个表的唯一主键对应形成一对一映射关系. 例如,以下例子,社团与社团负责人(社长),两者之间是一对一的关联关系: 持久化类association.java: public class Association implements java.io.Serializable{     private Integer id;   

JPA实体的常用注解

@Entity 标注于实体类上,通常和@Table是结合使用的,代表是该类是实体类@Table 标注于实体类上,表示该类映射到数据库中的表,没有指定名称的话就表示与数据库中表名为该类的简单类名的表名相对应,如果是逆向生成表的话就会以简单类名作为表名 如果指定名称,例如@Table(name="tb_user"),就表示映射到数据库中的tb_userz这个表:@Id 标注于属性上,通常是在get方法上,也可以在属性的声明上. 用于表示该属性作为ID主键@GeneratedValue 主键

实训第二天早上--hibernate之配置文件映射和注解

hibernate 逐步优化第一步 只按照步骤来提取的jre包导入错误第二步 继续封装,把增删改查提取出来,同时进行代码的封装HQL语句  be stranger in the code .be fooled/ get set 方法自动生成 第三步 零映射 第一步骤: 一开始是使用的的myeclipse自带的方式进行配置的,这里我给出几张图片,给自己留个印象也好. 首先是新建一个project,新建完project之后要做的事情就是先在myeclipse中用一个插件管理数据库,具体做法如截图,在

Hibernate之实体关系映射

延迟加载与即时加载 例如Person类和Email类是一对多关系,如果设为即时加载,当加载Person时,会自动加载Email,如果设置为延迟加载,当第一次调用person.getEmails()时才会执行SQL语句加载Email 注解配置时,@OnetToMany(Fetch = FetchType.EAGER)为即时加载,Fetch = FetchType.LAZY为延迟加载 延迟加载和即时加载的策略适用于所有一对多.多对一.多对多等所有的实体关系 一般来说,延迟加载要比即时加载节省资源,但

Hibernate映射之实体映射<转载>

实体类与数据库之间存在某种映射关系,Hibernate依据这种映射关系完成数据的存取,因此映射关系的配置在Hibernate中是最关键的.Hibernate支持xml配置文件与@注解配置两种方式.xml配置文件是最基础的配置,而@注解是Java的官方JPA(Java Persistence API)提供的.本章分别使用@注解与xml讲解Hibernate的映射配置. 10.1  实体类的映射 从Java的角度讲,实体类就是普通的Java封装类(有人称为POJO有人称为VO).仅从实体类中的代码信

Hibernate关系映射(注解)

1.类级别注解 @Entity     映射实体类 @Table    映射数句库表 @Entity(name="tableName") - 必须,注解将一个类声明为一个实体bean. 属性: name - 可选,对应数据库中的一个表.若表名与实体类名相同,则可以省略. @Table(name="",catalog="",schema="")  - 可选,通常和@Entity 配合使用,只能标注在实  体的 class定义处,

关于hibernate 多实体(多表)连接查询映射到实体的讨论

前提表与实体信息: 在hibernate 查询中,我们经过遇到三种情况: 1.查询事个实体,如: select  b from TableB b; 返回的LIst 中封装的是 实体TableB的实例. 2.查询单个属性,如: select b.id from TableB b; hibernate 返回的List 中封装的是ojbect对象. 3.当查询多于一个属性且又不是整个实体时,如:select b.id,b.mes from TableB b;返回的List中封装的是Object[]数组

Rhythmk 学习 Hibernate 07 - Hibernate annotation 实体注解

参考: http://docs.jboss.org/hibernate/annotations/3.4/reference/zh_cn/html_single/ 1.系统配置: 可以通过使用  mapping的 resource,于class 属性混合配置 <mapping resource="com/rhythmk/model/product.hbm.xml" /> <mapping class="com.rhythmk.model.User"&

[Hibernate Search] 实体类型的映射

实体类型映射 在上一篇文章中,简要介绍了如何使用Hibernate Search来对一个实体进行全文搜索. 然而,在真实的应用中,实体与实体之间的关系也许更为复杂.为了对复杂实体进行搜索,就需要让底层的Lucene查询也能够理解这些关系. 下图反映了Database,Hibernate,Hibernate Search和Lucene之间的关系: 域映射选项(Field Mapping Options) 我们已经知道@Field注解用来让某个域可以被全文搜索到. 实际上,在添加该注解后,Hiber