【hibernate框架】用Annotation注解表示id生成策略

前面已经说过用XML配置ID生成策略的两个例子:http://blog.csdn.net/acmman/article/details/43305177

这里简单说一下用Annotation如何设置ID的生成策略:

除了在XML文件中去指定id的生成策略,还可以用Annotation中的注解去指定id的生成策略。

方法:

@Id
	@GeneratedValue
	public int getId() {
		return id;
	}

@GeneratedValue指定的id生成策略默认是AUTO,相当于native。
有以下三种生成策略:

javax.persistence.GenerationType.AUTO
javax.persistence.GenerationType.TABLE
javax.persistence.GenerationType.SEQUENCE

转换方法:

@Id
	@GeneratedValue(strategy=GenerationType.IDENTITY)
	public int getId() {
		return id;
	}

转载请注明住处http://blog.csdn.net/acmman

时间: 2024-11-05 18:38:27

【hibernate框架】用Annotation注解表示id生成策略的相关文章

[Hibernate开发之路](4)ID生成策略

一 对象关系数据库映射之Id 被映射的类必须定义对应数据库表主键字段.大多数类有一个JavaBeans风格的属性, 为每一个实例包含唯一的标识.<id> 元素定义了该属性到数据库表主键字段的映射.  <id name="propertyName" type="typename" column="column_name" unsaved-value="null|any|none|undefined|id_value&qu

hibernate 怎么配置oracle的id生成策略

问题描述 hibernate 怎么配置oracle的id生成策略 之前使用hibernate连接mysql,后来需要转为oracle. 原来: mysql的id设置为自增, hibernate中对应的自增策略 @GeneratedValue(strategy=GenerationType.IDENTITY) private int userId; 现在: oracle中的id使用序列加触发器实现了插入前自增 但是现在hibernate中应该怎么配置? 解决方案 @GeneratedValue(s

详解Java的Hibernate框架中的注解与缓存_java

注解Hibernate注解是一个没有使用XML文件来定义映射的最新方法.可以在除或替换的XML映射元数据使用注解. Hibernate的注解是强大的方式来提供元数据对象和关系表的映射.所有的元数据被杵到一起的代码POJO java文件这可以帮助用户在开发过程中同时要了解表的结构和POJO. 如果打算让应用程序移植到其他EJB3规范的ORM应用程序,必须使用注解来表示映射信息,但仍然如果想要更大的灵活性,那么应该使用基于XML的映射去. 环境设置Hibernate注释 首先,必须确保使用的是JDK

mybatis 针对SQL Server 的 主键id生成策略

  SQL Server中命令: select newId()  ,可以得到SQL server数据库原生的UUID值,因此我们可以将这条指令写到 Mybatis的主键生成策略配置selectKey中. 如下: 在 mapper.xml 类型映射配置文件中 <insert id="insert" parameterType="com.hqdl.xiaoyi.bean.SpUser"> <selectKey keyProperty="id&

【HIBERNATE框架开发之四】HIBERNATE-ANNOTATION常用的注解归总&amp;&amp;ID的生成策略&amp;&amp;联合主键

本站文章均为 李华明Himi 原创,转载务必在明显处注明:  转载自[黑米GameDev街区] 原文链接: http://www.himigame.com/hibernate/811.html 这篇主要讲解Hibernate中Annotation的常用注解和ID的生成策略以及联合主键三块:     首先介绍些常用的Annotation注解: 1.  当表名与类名不一致: @Table(name="数据库表名")        (javax.persistence)      如果类名与

hibernate-Hibernate框架使用JPA注解时,使用的主键生成策略

问题描述 Hibernate框架使用JPA注解时,使用的主键生成策略 Hibernate框架使用JPA注解,在ID加上@GeneratedValue注解,使用的是什么主键生成策略?数据库生成了一张hibernate_sequence表.使用的是M有SQL数据库 解决方案 你用的sequence 这种策略吧,这是针对oracle 不提供自动增长的数据库类型的主键的生成方式 解决方案二: JPA使用Hibernate实现使用UUID.主键的生成策略.JPA学习笔记(4)--使用Table策略来生成主

【hibernate框架】多对多单向关联(Annotation实现)

什么情况下是多对多? 举个例子:一个老师可以教多个学生,每个学生也可以被多个老师教.这就是多对多的情况. 在数据库表中这种关系该怎么设计?很简单,加一张中间表. 设计模型: table_student id<int> <pk> table_teacher id<int> <pk> 中间表: T_S t_id<int> <pk,fk2> s_id<int> <pk,fk1> 比如老师2教学生1,在中间表中就存2,

hibernate主键生成策略-为什么我的程序只有native方式生效(注解)

问题描述 hibernate主键生成策略-为什么我的程序只有native方式生效(注解) 我想采用uuid主键策略,但是多次各种尝试都不成功.我是通过往数据库插入数据测试的.重点是使用native能正常插入数据,而使用uuid就不行,主要原因是整个程序也不报错,就是运行了,看起来就像是跳过执行插入语句一样,实际上是执行到了插入方法的,也没有堆栈信息什么的可参考.代码如下: @Id @GeneratedValue (generator = "paymentableGenerator" )

Hibernate框架学习之一:Hello World程序

前言 对一个框架的直观认识,往往是从一个Hello World程序开始.Hibernate是一个ORM(Object Relationship Mapping)对象映射框架.实现了JDBC轻量级的封装,使得在进行JDBC开发的时候可以直接使用面向对象的思维进行开发,说白了Hibernate框架的作用是在Java对象与关系数据库中做了一个映射,使得程序员不用再使用各种SQL了.所以总结Hibernate以下几点: 1.完成了对JDBC的封装,不用再与各种Connection打交道了 2.在业务体系