hibernate(jpa)中注解配置字段为主键

http://www.blogjava.net/ITdavid/archive/2009/02/25/256605.html
注解方式的主键配置

非自增字段为主键,注解annotation表示

以N_LOG_ID字段为例:

@Id

@Column(name = "N_LOG_ID", unique = true, nullable = false)

自增字段为主键,注解annotation表示

以N_LOG_ID字段为例:

Oracle数据库

@Id
@SequenceGenerator(name = "PK_PACKETLOG", sequenceName = "SEQ_PACKETLOG")
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "PK_PACKETLOG")
@Column(name = "N_LOG_ID", unique = true, nullable = false)

Oracle自增需要一个Sequence实现,其中注解@SequenceGenerator的name 属性的值可以自定义且不能有相同的值(建议如例子一样名字规范些),sequenceName 属性的值配置成Oracle中建立的Sequence名。@GeneratedValue注解简单写如例子,详细配置可查询。

时间: 2024-08-09 18:10:33

hibernate(jpa)中注解配置字段为主键的相关文章

hibernate关于一对一注解配置

注解(Annotation),也叫元数据.一种代码级别的说明.它是JDK1.5及以后版本引入的一个特性,与类.接口.枚举是在同一个层次.它可以声明在包.类.字段.方法.局部变量.方法参数等的前面,用来对这些元素进行说明,注释. Emp实体类配置 @Entity @Table(name = "Emp2") public class Emp { @Id @GeneratedValue private Integer eid; private String ename; @OneToOne

关于spring中注解配置的问题

今天写spring的时候,想用注解配置,但不巧的是用Junit工具测试的时候出错了,检查了很久的代码,发现并不是代码的问题,那就有些奇怪了. 后来去百度,回答的奇奇怪怪,和我的问题沾边的不多,最后还是FQ找到的答案,废话不多说,先贴出错误提示: org.springframework.beans.factory.BeanDefinitionStoreException: Unexpected exception parsing XML document from class path resou

Hibernate JPA中@Transient、@JsonIgnoreProperties、@JsonIgnore、@JsonFormat、@JsonSerialize等注解解释

@jsonignore的作用作用是json序列化时将java bean中的一些属性忽略掉,序列化和反序列化都受影响. http://www.cnblogs.com/toSeeMyDream/p/4437858.html 当表间有One2Many或Many2One时,会发生无限循环的场景,如何破? 只要在Set方法前增加以下注解即可: @JsonIgnore public Set xxxs() { return this.xxxYyyy; } http://www.cnblogs.com/tomp

HIbernate实体类注解配置

一.类级别注解 1.@Entity(name="EntityName") 必须 name为可选,对应数据库中一的个表 2.@Table(name="",catalog="",schema="") 可选,通常和@Entity配合使用,只能标注在实体的class定义处,表示实体对应的数据库表的信息 name:可选,表示表的名称.默认地,表名和实体名称一致,只有在不一致的情况下才需要指定表名 catalog:可选,表示Catalog

idea中注解配置一对多,多对一,双向多对一映射(不详细)

一对多 package cn.pojo; import javax.persistence.*; import java.io.Serializable; import java.util.Set; @Entity //声明这是一个实体类 必写 public class District implements Serializable { private static final long serialVersionUID = 8009273978191878070L; //编号 @Id //标

hibernate 多对多注解配置及实体属性条件查询

以下是通过hibernate注解的方式写的多对多关系用户和角色实体,即一个用户有多个角色,一个角色下也有多个用户. 普通属性作为条件查询相信那么简单大家都会了,如下是一个关系实体作为查询条件的小例子. 用户和角色的多对多配置如下: @Entity public class UserInfo { @Id @GeneratedValue(strategy = GenerationType.AUTO) private Integer id; private String no; private Str

hibernate中1对1的注解配置

hibernate中1对1的注解配置分为:外键关联映射和主键关联映射 1.外键配置 //一方@Entity@Table(name="test_classinfo")public class ClassInfo { @Id @SequenceGenerator(name="seqClassInfo",sequenceName="seq_test_classinfo") @GeneratedValue(generator="seqClass

Hibernate中注解的开发

在利用注解开发数据库持久层曾经,须要学习一个规范JPA(Java Persistence API),这也是SUN公司提出的数据库的持久化规范. 就类似于JDBC.Servlet,JSP等规范一样.而Hibernate框架就实现了此规范,我们能够通过注解和配置文件来实现此规范.前边的学习都是建立在配置文件的基础上,而注解开发如今也处于一种趋势.毕竟它大大提高了开发速度. 看一下注解在Hibernate框架中的开发知识. 一.首先须要导入支持注解开发的jar包: hibernate-annotati

Annotation(二)——Hibernate中注解的开发

在利用注解开发数据库持久层以前,需要学习一个规范JPA(Java Persistence API),这也是SUN公司提出的数据库的持久化规范.就类似于JDBC,Servlet,JSP等规范一样.而Hibernate框架就实现了此规范,我们可以通过注解和配置文件来实现此规范.前边的学习都是建立在配置文件的基础上,而注解开发现在也处于一种趋势,毕竟它大大提高了开发速度. 看一下注解在Hibernate框架中的开发知识. 一,首先需要导入支持注解开发的jar包: hibernate-annotatio