`
lanhuidong
  • 浏览: 226281 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

hibernate-annotations——@OneToOne

阅读更多

1.OneToOne共享主键

import javax.persistence.CascadeType;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.OneToOne;
import javax.persistence.PrimaryKeyJoinColumn;

/**
 * @author lan 2010-8-26
 * 主表
 */
@Entity
public class Body {

    private Integer id;
    private Heart heart;
    private Integer age;

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

    public void setId(Integer id) {
        this.id = id;
    }

    @OneToOne(cascade = CascadeType.ALL)
    @PrimaryKeyJoinColumn
    public Heart getHeart() {
        return heart;
    }

    public void setHeart(Heart heart) {
        this.heart = heart;
    }

}

 

import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.OneToOne;
import javax.persistence.PrimaryKeyJoinColumn;

import org.hibernate.annotations.GenericGenerator;
import org.hibernate.annotations.Parameter;

/**
 * @author lan 2010-8-26
 * 从表
 */
@Entity
public class Heart {

    private Integer id;
    private Body body;
    private Double weight;

    @Id
    @GenericGenerator(name = "fk", strategy = "foreign", parameters = @Parameter(name = "property", value = "body"))
    @GeneratedValue(generator = "fk")
    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    @OneToOne(optional=false)
    @PrimaryKeyJoinColumn(name="body_id")
    public Body getBody() {
        return body;
    }

    public void setBody(Body body) {
        this.body = body;
    }

}

 

2.OneToOne外键

import javax.persistence.CascadeType;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.OneToOne;

/**
 * @author lan
 * 2010-8-26
 * 主表
 */
@Entity
public class Passport {
    private Integer id;
    private String name;
    private Customer owner;

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

    public void setId(Integer id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    @OneToOne(mappedBy="passport", cascade=CascadeType.ALL)
    public Customer getOwner() {
        return owner;
    }

    public void setOwner(Customer owner) {
        this.owner = owner;
    } 
}

 

import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.OneToOne;

/**
 * @author lan
 * 2010-8-26
 * 从表
 */
@Entity
public class Customer {
    
    private Integer id;

    private Passport passport;

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

    public void setId(Integer id) {
        this.id = id;
    }

    @OneToOne
    @JoinColumn(name="passport_id")
    public Passport getPassport() {
        return passport;
    }

    public void setPassport(Passport passport) {
        this.passport = passport;
    }
    
}

 

分享到:
评论

相关推荐

    hibernate jar包:hibernate-commons-annotations-4.0.1.Final.jar等

    hibernate-commons-annotations-4.0.1.Final.jar hibernate-core-4.1.12.Final.jar hibernate-ehcache-4.1.12.Final.jar hibernate-entitymanager-4.1.12.Final.jar hibernate-jpa-2.0-api-1.0.1.Final.jar ...

    hibernate-annotations-3.4.0.GA

    《Hibernate Annotations 3.4.0.GA:深入理解与应用》 Hibernate是Java领域中广泛应用的对象关系映射(ORM)框架,它极大地简化了数据库操作,使得开发者可以使用面向对象的方式来处理数据。而Hibernate ...

    Hibernate-annotations-3.4最新版本

    《深入理解Hibernate-annotations-3.4.0:简化对象持久化的注解神器》 在现代软件开发中,数据库操作是不可或缺的一部分。为了有效地管理数据对象与数据库之间的映射关系,Hibernate作为一款强大的Java对象关系映射...

    hibernate-commons-annotations-5.0.1.Final.jar

    在本文中,我们将深入探讨`hibernate-commons-annotations-5.0.1.Final.jar`的源码,了解其内部结构和主要功能。 一、元数据注解 HCA的核心在于提供了一系列的注解,如`@Entity`、`@Table`、`@Column`、`@Id`等,...

    hibernate-commons-annotations-5.1.0.Final.jar

    hibernate-commons-annotations-5.1.0.Final.jar

    hibernate-commons-annotations-4.0.1.Final.jar

    hibernate-commons-annotations-4.0.1.Final.jar

    hibernate-annotations.jar和hibernate-annotations-src.zip

    解压后可得hibernate-annotations.jar和hibernate-annotations-src.zip,hibernate-annotations-src.zip为hibernate-annotations.jar的源代码

    hibernate-annotations jar包

    使用注解Annotation时用的jar包。 包括: hibernate-commons-annotations-3.3.0.ga.jar hibernate-entitymanager.jar ejb3-persistence.jar hibernate-annotations.jar

    hibernate-common-annotations.jar

    《hibernate-common-annotations.jar:Hibernate ORM框架中的核心注解库详解》 在Java世界里,ORM(Object-Relational Mapping)框架是连接数据库与应用程序的重要桥梁,而Hibernate作为其中的佼佼者,深受广大...

    hibernate-annotations-3.4.0.GA and hibernate-entitymanager-3.4.0.GA

    本篇将详细探讨`hibernate-annotations-3.4.0.GA`和`hibernate-entitymanager-3.4.0.GA`这两个版本中的核心知识点,尤其是它们在注释和枚举映射方面的应用。 首先,`hibernate-annotations`是Hibernate提供的一套...

    hibernate-annotations-3.4.0 中文帮助文档

    hibernate-annotations-3.4.0 中文帮助文档,希望对大家有帮助。

    hibernate-annotations-3.4.0.jar

    《Hibernate核心组件:hibernate-annotations-3.4.0.jar详解》 在Java世界里,ORM(Object-Relational Mapping)框架是连接数据库的重要工具,其中Hibernate作为一款广泛应用的ORM框架,大大简化了数据库操作。而`...

    hibernate-annotations-3.4.0.GA.chm中文版

    `html.CHM`可能包含了通用的HTML格式的文档,方便在各种设备上阅读,而`hibernate-annotations-3.4.0.GA.CHM`则可能是专门为Hibernate注解3.4.0.GA版本定制的帮助文件,其中包含了详细的API参考、示例代码和使用指南...

    hibernate-annotations 相关jar包

    1. 引入Hibernate和Hibernate Annotations相关jar包:包括hibernate-annotations.jar、hibernate-commons-annotations.jar、hibernate-entitymanager.jar以及JPA规范所需的jar包。 2. 创建实体类:在实体类上添加@...

    hibernate-annotations-3.4.0.GA.rar 提供hibernate配置包

    hibernate-annotations-3.4.0.GA.rar 提供hibernate与annotation的配置包,一般现在的版本是3.5的版本,而3.5版本里面的参考文档不是很齐全,因此老版本的hibernate包还是有用的

    hibernate-commons-annotations

    hibernate-commons-annotationshibernate-commons-annotationshibernate-commons-annotations

    hibernate-annotations-3.4.0.GA+hibernate-distribution-3.3.2.GA-dist

    《深入理解Hibernate 3.3.2与Annotations 3.4.0:核心特性与实践应用》 Hibernate作为Java领域中的一个强大ORM(对象关系映射)框架,为开发者提供了在Java应用程序中操作数据库的强大工具。它允许我们将数据库操作...

    hibernate-annotations

    《Hibernate Annotations 3.4.0.GA:深入解析企业级Java开发的持久化利器》 Hibernate,作为Java领域中最著名的对象关系映射(ORM)框架之一,极大地简化了数据库与Java应用程序之间的交互。其中,Hibernate ...

    hibernate-commons-annotations-3.3.0.ga-sources.jar

    hibernate-commons-annotations-3.3.0.ga-sources.jar hibernate 源码

Global site tag (gtag.js) - Google Analytics