Hibernate 用@TableGenerator 生成Id

原创 2013年12月03日 11:21:12

package com.bjsxt.hibernate;

import java.util.Date;

import javax.persistence.Entity;
import javax.persistence.EnumType;
import javax.persistence.Enumerated;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.IdClass;
import javax.persistence.SequenceGenerator;
import javax.persistence.TableGenerator;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.persistence.Transient;

//本例有两个Generator
@Entity
@TableGenerator(
        name="Teacher_GEN",
        table="GENERATOR_TABLE",   
        pkColumnName = "pk_key",
        valueColumnName = "pk_value",
        pkColumnValue="Teacher",//从pk_key=Teacher的pk_value
        allocationSize=1//每一次拿出就出加多少
    )
/**
 *
 * 表: GENERATOR_TABLE
 *  pk_key            pk_value
 *  Teacher           1
 */
public class Teacher {
    private int id;
    private String name;
    private String title;

 
    @Id
    @GeneratedValue(strategy=GenerationType.TABLE, generator="Teacher_GEN")
    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }
   
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getTitle() {
        return title;
    }
    public void setTitle(String title) {
        this.title = title;
    }
   
}

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

Hibernate框架-@TableGenerator注解

主键的值以查询的形式从一个特定的表中获取,获取完之后修改主键值,理论上可以兼容任何数据库。 要配合@GeneratedValue注解—— 注解声明了主键的生成策略。有如下属性:

探索 Hibernate 新 TableGenerator 机制

探索 Hibernate 新 TableGenerator 机制 Hibernate 从 3.2.3 之后引入了两个新的主键生成器 TableGenerator 和 SequenceStyle...
  • sqbzo
  • sqbzo
  • 2014-03-26 10:55
  • 723

Hibernate的ID生成策略

原文链接:http://blog.csdn.net/csuliky/article/details/5719304

Hibernate进阶之ID主键生成策略

hibenate内置主健生成策略:  我们从三个方面进行比较:(1)主键类型;(2)是否依赖于底层数据库;(3)多线程情况下是否安全;          (A)increment      整型...

Hibernate的ID生成策略/联合主键解决方案

对于不同数据库的主键id,生成是不一样的.在Hibernate中也有相对应的策略.可选的子元素是一个Java类的名字, 用来为该持久化类的实例生成唯一的标识。如果这个生成器实例需要某些配置值或者初始化...

Hibernate 第五讲 数据库Id生成策略 (4)

xml配置方式 Student.hbm.xml         "-//Hibernate/Hibernate Mapping DTD 3.0//EN"         "http:...

hibernate ID联合生成主键

xml的方法: 构造一个新的类存放主键,在类里面写主键,一定要重写equals和hashcode方法例如: public class StudentPK implements java.io.Se...

HIbernate——ID自动生成

Annotation实现,xml不做讨论 1.@GeneratedValue//id自动增长(常用。默认为auto,在MySQL中为auto_increment;在Oracle中为seque...

Hibernate中ID生成策略

四、ID生成策略 第一种:XML配置ID 通过为元素增加子元素,该子元素拥有class属性。常用的class属性有: (1)increment:用于为long、short、或者int类型生成唯一...

hibernate id 联合主键生成策略

如果数据库中用多个字段而不仅仅是一个字段作为主键,也就是联合主键,这个时候就可以使用hibernate提供的联合主键生成策略。  具体如下:  可以使用一个组件作为一个实体类的标识符。你的...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)