`
lxc63lxc
  • 浏览: 29197 次
最近访客 更多访客>>
社区版块
存档分类
最新评论

hibernate一对一外键映射--iteye技术网站

 
阅读更多

hibernate一对一外键映射--iteye技术网站
2011年08月01日
   person作为IdCard的一个外键 
  Person.java
  package cn.itcast.hibernate.domain; public class Person { private int id; private String name; private IdCard idcard; 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 IdCard getIdcard() { return idcard; } public void setIdcard(IdCard idcard) { this.idcard = idcard; } } 
  IdCard
  package cn.itcast.hibernate.domain; import java.util.Date; public class IdCard { private int id; private Date usefullife; private Person person; public int getId() { return id; } public void setId(int id) { this.id = id; } public Person getPerson() { return person; } public void setPerson(Person person) { this.person = person; } public Date getUsefullife() { return usefullife; } public void setUsefullife(Date usefullife) { this.usefullife = usefullife; } } 
  JavaBean映射文件1(Person.hbm.xml)
             
  JavaBean映射文件2(IdCard.hbm.xml)
              
  Hibernate配置文件(hibernate.cfg.xml) 
        com.mysql.jdbc.Driver   jdbc:mysql://localhost:3306/test  root 123456  1   org.hibernate.dialect.MySQLDialect   true  create     
  One2One.java用来使用映射
  package cn.itcast.hibernate; import java.util.Date; import java.util.HashSet; import java.util.Set; import org.hibernate.Session; import org.hibernate.Transaction; import cn.itcast.hibernate.domain.Department; import cn.itcast.hibernate.domain.Employee; import cn.itcast.hibernate.domain.IdCard; import cn.itcast.hibernate.domain.Person; public class One2One { /** * @param args */ public static void main(String[] args) { add(); queryPerson(1); // queryIdCard(1); } static Person queryPerson(int id){ Session s= null; Transaction tx = null; try { s=HibernateUtil.getSession(); tx= s.beginTransaction(); Person person=(Person)s.get(Person.class, id); System.out.println(person.getIdcard().getUsefullif e()); tx.commit(); return person; }finally{ if(s!=null){ s.close(); } } } static IdCard queryIdCard(int id){ Session s= null; Transaction tx = null; try { s=HibernateUtil.getSession(); tx= s.beginTransaction(); IdCard idCard=(IdCard)s.get(IdCard.class, id); System.out.println(idCard.getPerson().getName()); tx.commit(); return idCard; }finally{ if(s!=null){ s.close(); } } } static Person add(){ Session s= null; Transaction tx = null; try { s=HibernateUtil.getSession(); tx= s.beginTransaction(); IdCard idcard = new IdCard(); idcard.setUsefullife(new Date()); Person person = new Person(); person.setName("personname1"); person.setIdcard(idcard); idcard.setPerson(person); s.save(person); s.save(idcard); tx.commit(); return person; }finally{ if(s!=null){ s.close(); } } } } 
  
  
分享到:
评论

相关推荐

    Hibernate一对一唯一外键关联映射(双向关联)

    博文链接:https://shaqiang32.iteye.com/blog/201312

    Hibernate关联映射-one to one单向外键关联

    本话题主要探讨的是Hibernate中的一种关联映射方式——一对一(One-to-One)单向外键关联。这种关联模式通常用于两个实体之间存在唯一对应的关系,例如一个用户对应一个唯一的账户。 在Hibernate中,一对一关联可以...

    9 映射-- 一对一(两种)(人与身份)

    4. **My-Hibnate示例**:在"My-Hibnate"压缩包中,可能包含了使用Hibernate框架实现一对一映射的示例代码。这些代码可以帮助我们更好地理解如何在实际项目中配置和使用一对一映射。通过阅读和分析这些示例,我们可以...

    Hibernate 一对一

    本主题将深入探讨Hibernate中的一对一关系映射,这是一种关联两个实体之间一对一联系的数据模型。 **一对一双向关联** 在Hibernate中,一对一关系可以是单向或双向的。在双向一对一关联中,两个实体类都拥有对对方...

    Hibernate 一对多双向映射及乐观锁使用

    **描述解析:** 链接指向了一篇名为“kuangyeyazi”的作者在iteye博客上发布的文章,详细介绍了如何在Hibernate中实现一对多双向映射以及如何应用乐观锁机制。虽然描述内容为空,但我们可以根据标题推测文章内容可能...

    hibernate bag 集合映射

    在Hibernate中,集合映射是指将数据库中的表与Java集合对象(如List、Set等)进行关联,方便对一组相关数据进行操作。 "bag"是Hibernate中的一种集合类型,表示无序的、可重复的对象集合。在数据库层面,这通常对应...

    hibernate一对多实例

    标题中的“hibernate一对多实例”指的是在Java编程中使用Hibernate框架处理数据库关系时的一对多关联映射。Hibernate是Java领域中的一个流行对象关系映射(ORM)框架,它允许开发者用面向对象的方式操作数据库,从而...

    Hibernate 映射文件 结构

    5. **<many-to-one>**:一对多关系映射,表示一个实体类的某个属性引用了另一个实体类的一个实例。 6. **<one-to-many>**:多对一关系映射,与`<many-to-one>`相反,表示一个实体类的一组实例引用了另一个实体类的...

    hibernate映射心得 原创

    4. **关系映射**:一对一、一对多、多对多关系的建立,外键的处理,集合映射(List、Set、Map等)的配置。 5. **查询语言**:HQL(Hibernate Query Language)和 Criteria API的使用,以及与原生SQL的比较。 6. **懒...

    Hibernate one to many(many to one) 配置

    标题"Hibernate one to many(many to one) 配置"涉及到的是关系型数据库在Java中的持久化框架Hibernate中的两种关联映射关系:一对一(One-to-One)和多对一(Many-to-One)。在数据库设计中,这种关系很常见,例如...

    Hibernate学习之 : 一对多关联映射

    本篇将深入探讨Hibernate学习中的一个重要概念:一对多关联映射。通过阅读指定的博文链接(https://ag-bruce.iteye.com/blog/213436),我们可以了解到如何在实际项目中设置并应用这种关联关系。 一对多关联映射是...

    hibernate一对多,多对一,一对多双向关联

    在阅读《Hibernate实战》等专业书籍,或者参考如iteye等技术社区的博客(如上述链接所示),你可以获取更深入的理论知识和实践经验。在实践中,不断尝试和调试,掌握这些关联映射的精髓,将有助于提升你的Java开发...

    hibernate 关联映射(一) many to one

    在Java世界中,Hibernate是一个非常流行的ORM(对象关系映射)框架,它允许开发者将数据库操作转换为面向对象的编程。本篇文章将深入探讨Hibernate中的关联映射,特别是"Many to One"关系的映射。在数据库设计中,...

    myeclipse试用小记----Hibernate多对一自身关联(3)

    标题中的“myeclipse试用小记----Hibernate多对一自身关联(3)”表明了这篇内容是关于MyEclipse IDE的使用体验,特别聚焦在Hibernate框架中的多对一自身关联关系的实践与理解。Hibernate是Java开发中常用的一个对象...

    Hibernate 注解一对多,多对一

    "Hibernate注解一对多,多对一"是两个常见的关系映射类型,适用于处理实体类之间的复杂关联。 一、一对多关系 在现实世界中,例如一个部门有多个员工,这就是一对多的关系。在Hibernate中,我们可以使用`@...

    hibernate中文帮助文档

    10. **多对一、一对多、多对多关联映射**: Hibernate支持各种复杂的关联关系,如实体间的关联映射配置,如外键、联合主键等。 综上,这份压缩包提供的文档涵盖了Hibernate的基本使用到高级特性,结合SQL参考手册,...

    Hibernate的JAR包

    9. **一对多、多对一、一对一和多对多关系映射**: Hibernate支持多种关联映射,包括通过集合类实现的一对多、多对一,通过单个属性实现的一对一,以及通过中间表实现的多对多关系。 10. ** Hibenate工具**: ...

    hibernet实例

    6. "hibernate_one2one_ufk_1"可能是关于一对一关系,但使用了外键来建立关联的案例。 7. "hibernate_extends_3"可能涉及到了Hibernate的继承映射,如何处理一个类继承另一个类的情况。 8. "hibernate_compositePK_...

    JPA实体关联(hibernate实现)

    以下将详细解释四种主要的关联类型:复合主键、多对多、一对一和一对多。 1. **复合主键(JPACompositePK)** 在某些情况下,一个实体的主键可能由多个字段组成,这就需要使用复合主键。在JPA中,我们可以创建一个...

    Hibernate学习笔记

    在Java世界中,Hibernate作为一款强大的对象关系映射(ORM)框架,极大地简化了数据库操作,让开发者可以专注于业务逻辑而无需过多关注底层SQL的编写。本学习笔记将深入探讨Hibernate的核心概念,包括实体管理、继承...

Global site tag (gtag.js) - Google Analytics