Hibernate常用Annotation标签说明

@ javax.persistence.Entity

实体类定义,该标签表示当前类是一个Hibernate的数据库实体,对应着数据库中的某个表

位置:用于类级别

参数:无

样例:@Entity

注意:导入标签类时可能会有多个,这里使用的是javax.persistence.Entity

@javax.persistence.Table

实体类定义,该标签表示当前类是一个Hibernate的数据库实体,对应着数据库中的某个表

位置:用于类级别

参数:name – 用于指定表名,如果不指定则表名与类名相同,考虑到不同数据库的解析方式可能不一样,建议手工指定表名。表名统一用大写字母,单词之间用下划线分隔。

样例:@Table(name=”DAT_USER_INFO”)

注意:导入标签类时可能会有多个,这里使用的是javax.persistence.Table

@ javax.persistence.Id

该标签用于标识数据实体的主键

位置:用于主键属性的Get方法,QFrame约定为getId()方法

参数:无

样例:@Id

@ javax.persistence.GeneratedValue

定义主键生成方式,通常和@ org.hibernate.annotations.GenericGenerator一同使用,用于生成主键。

位置:用于主键属性的Get方法,QFrame约定为getId()方法。

参数:strategy -构造方式;generator -构造器名称。

样例:

1、 由Hibernate自动生成主键:@GeneratedValue(strategy=GenerationType.AUTO)

2、 根据主指构造器生成主键:@GeneratedValue(generator="assigned")

@ org.hibernate.annotations.GenericGenerator

Hibernate提供的主键构造器。通常与@GeneratedValue配合使用。

位置:用于主键属性的Get 方法。

参数:name -构造器名称,在@GeneratedValue 中引用;strategy -构造方式。

样例:

1.      手工指定的主键:
@GeneratedValue(generator="assigned") 
@GenericGenerator(name = "assigned", strategy = "assigned")

2.      从Sequence 获取主键:
@GeneratedValue(strategy=GenerationType.SEQUENCE,generator="TASK_SEQ")
@SequenceGenerator(name="TASK_SEQ",sequenceName="SEQ_GROUP_SEND_TASK")

@ javax.persistence.Column

用于表示实体属性对应数据库表的哪个字段。

位置:用于属性的Get 方法

参数:

name – 字段名,默认为属性名,建议手工指定,字段名统一使用大写字母

nullable -boolean 值,表示该属性是否可以为空,默认为true。

insertable -boolean 值,表示该属性是否在insert语句中包含,默认为true。

updatable -boolean 值,表示该属性是否在update 语句中包含,默认为true。

length -int值,表示该属性值的长度,通常用于字符串属性,默认为255。

unique -boolean 值,表示该属性值是否建立唯一索引,默认为false。

@ javax.persistence.Transient

用于标识不在数据库表中映射的属性。

位置:用于属性的Get 方法

参数:无

@ org.hibernate.annotations.Type

自定义类型,将属性用于自定义类型。通常用于定义枚举类型。

位置:用于属性的Get 方法

参数:type -类型完成名称(包含包名)

样例:@Type(type="net.osjava.xsmfms.entity.SendTypeDataType")

时间: 2024-11-10 15:01:29

Hibernate常用Annotation标签说明的相关文章

java:Hibernate框架(环境搭建,Hibernate.cfg.xml中属性含义,Hibernate常用API对象,HibernteUitl,对象生命周期图,数据对象的三种状态)

1.环境搭建: 三个准备+7个步骤 准备1:新建项目并添加hibernate依赖的jar文件  准备2:在classpath下(src目录下)新建hibernate的配置文件:hibernate.cfg.xml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configurati

html常用的标签

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-

Hibernate常用代码

1.Hibernate使用步骤 1.导入Hibernate包,以及数据库驱动包. 2.引入Hibernate主配置文件hibernate.cfg.xml. 3.创建实体类 4.创建映射关系文件 5.使用Hibernate常用API执行增删改查操作 2.创建HibernateUtil 创建HibernateUtil工具类,提供获取Session和关闭Session的方法 在HibernateUtil中使用ThreadLocal管理Session 3.sequence sequence是采用序列方式

html(三) -- 常用功能标签

媒体标签 <embed></embed> 属性:        hidden : 设置隐藏插件是否隐藏.        src :用于指定音乐的路径 超链接标签 <a></a> 属性: href  : 用于指定链接的资源.常用协议:file:. mailTo:. http:      target: 设置打开新资源的目标.属性对应的值:_Blank 在独立的窗口上打开新资源   _self 在当前窗口打开新资源. a标签的原理:    1. a标签的href

struts 常用的标签

## struts 常用的标签 * 1.<include>利用include标签,可以将一个struts.xml配置文件分割成多个配置文件,然后在struts.xml使用<include>标签引入其他配置文件 ex: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE struts PUBLIC     "-//Apache Software Foundation//D

python Django教程 之模板渲染、循环、条件判断、常用的标签、过滤器

python3.5 manage.py runserver python Django教程 之模板渲染.循环.条件判断.常用的标签.过滤器 一.Django模板渲染模板 注: 本节代码是基于 Django 1.8,但 Django 1.4 - Djagno 1.9 操作流程也是一样的. 后文给出示例代码可以在 Django 1.4.x 到 Django 1.9.x 上运行. 不过还是强调一点,一点要动手敲代码!不要偷懒哦,动手才能学到真东西. 1. 创建一个 zqxt_tmpl 项目,和一个 名

2015年9月16日html第一节课(初识html、常用html标签、相对路径)

一.什么是html html是一种超文本标记语言. 主体架构如下: <html> <head> <title>我的第一个html页面</title> </head> <body> hello world! </body> </html> 注意小点:html默认的编码版本是utf-8.另外一种是gb2312.当有时候我们打开别人的源码发现是乱码的时候,可以看一下编码版本.编码版本不同会造成乱码. 二.常用的标签(

常用HTML标签元素结合及简介

常用HTML标签元素结合及简介 <html></html> 创建一个HTML文档<head></head> 设置文档标题和其它在网页中不显示的信息<title></title> 设置文档的标题        <h1></h1> 最大的标题<pre></pre> 预先格式化文本          <u></u> 下划线<b></b> 黑体字 

Hibernate常用接口

Hibernate的接口类型 在了解了Hibernate的基本配置,映射文件后,道路已经铺平了.我们继续往前走.接下来,我们应该做的是了解Hibernate常用的接口,对Hibernate的工作方式进一步熟悉,为我们下一步的编码做好充分的准备. ORM是复杂的,可以看看Hibernate发布里的javadoc,100+MB.如果我们单单去阅读它的API,估计一年你才能看完.然而,我们仅仅是使用他,并不需要对它了解的十分完全.我们只需要了解它的常用核心类和接口就行了.就像数据库是非常复杂的,然而我