`
esffor
  • 浏览: 1370708 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Hibernate集合映射之Bag

阅读更多

 数据库结构:

 

create table teamBag (id varchar(32),teamname varchar(32));
create table studentBag(id varchar(
32),cardid varchar(32),name varchar(32),age int,description varchar(32), team_id varchar(32),cid varchar(32));

 

POJO

 

package Collection.Bag;

public class Student ...{
  
private String id;
  
private String name;
  
private String description;
  
private int age;
  
private String cardid;
  
private Team team;
public String getId() ...{
    
return id;
}

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

public String getName() ...{
    
return name;
}

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

public String getDescription() ...{
    
return description;
}

public void setDescription(String description) ...{
    
this.description = description;
}

public int getAge() ...{
    
return age;
}

public void setAge(int age) ...{
    
this.age = age;
}

public String getCardid() ...{
    
return cardid;
}

public void setCardid(String cardid) ...{
    
this.cardid = cardid;
}

public Team getTeam() ...{
    
return team;
}

public void setTeam(Team team) ...{
    
this.team = team;
}

}




package Collection.Bag;

import java.util.ArrayList;
import java.util.List;
import java.util.Map;

public class Team ...{
   
private String id;
   
private String teamname;
   
private List students=new ArrayList();
public String getId() ...{
    
return id;
}

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

public String getTeamname() ...{
    
return teamname;
}

public void setTeamname(String teamname) ...{
    
this.teamname = teamname;
}

public List getStudents() ...{
    
return students;
}

public void setStudents(List students) ...{
    
this.students = students;
}


}

 

Student.hbm.xml

 

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"
>
<!-- 
    Mapping file autogenerated by MyEclipse - Hibernate Tools
-->
<hibernate-mapping>
<class name="Collection.Bag.Student" table="studentBag" >
    
<id name="id" unsaved-value="null">
      
<generator class="uuid.hex"></generator>
    
</id>
    
<property name="cardid" type="string" column="cardid"></property>
    
<property name="name" type="string" column="name"></property>
    
<property name="age" type="int" column="age"></property>
    
<property name="description" type="string" column="description"></property> 
    
<many-to-one name="team" 
                 column
="team_id"
                 class
="Collection.Bag.Team" 
                 cascade
="none" 
                 fetch
="join">
    
</many-to-one>
</class>

</hibernate-mapping>

 

Team.hbm.xml

 

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"
>
<!-- 
    Mapping file autogenerated by MyEclipse - Hibernate Tools
-->
<hibernate-mapping>
<class name="Collection.Bag.Team" table="teamBag" >
    
<id name="id" unsaved-value="null">
      
<generator class="uuid.hex"></generator>
    
</id>
    
<property name="teamname" type="string" column="teamname"></property>
  
    <bag name="students" table="studentBag" cascade="all,delete-orphan" >

      
<key column="team_id"></key>
      
<one-to-many class="Collection.Bag.Student"/>
    
</bag>
</class>

</hibernate-mapping>

 

hibernate.cfg.xml

 

<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
          "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
          "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"
>

<!-- Generated by MyEclipse Hibernate Tools.                   -->
<hibernate-configuration>

<session-factory>
    
<property name="connection.username">root</property>
    
<property name="connection.url">
        jdbc:mysql://localhost:3306/schoolproject?characterEncoding=gb2312
&amp;useUnicode=true
    
</property>
    
<property name="dialect">
        org.hibernate.dialect.MySQLDialect
    
</property>
    
<property name="myeclipse.connection.profile">mysql</property>
    
<property name="connection.password">1234</property>
    
<property name="connection.driver_class">
        com.mysql.jdbc.Driver
    
</property>
    
<property name="hibernate.dialect">
        org.hibernate.dialect.MySQLDialect
    
</property>
    
<property name="hibernate.show_sql">true</property>
    
<property name
分享到:
评论

相关推荐

    hibernate bag 集合映射

    标题中的“hibernate bag 集合映射”指的是Hibernate框架中的一种关系映射机制。Hibernate是一个流行的Java ORM(对象关系映射)框架,它允许开发者将数据库表与Java类进行映射,使得在处理数据库操作时可以使用面向...

    [原]Hibernate集合映射

    《Hibernate集合映射详解》 Hibernate作为Java领域中的一款强大持久化框架,其核心功能之一就是对象关系映射(ORM),使得开发者可以方便地在Java对象与数据库表之间进行交互。其中,集合映射是Hibernate中非常关键...

    Hibernate常见集合映射(Set,List_Array,Map,Bag)

    Hibernate 集合映射详解 Hibernate 是一个流行的Java持久化框架,它提供了多种集合映射类型,以满足不同的业务需求。在 Hibernate 中,集合映射是指将 Java 集合类型与数据库表之间的映射关系。常见的集合映射类型...

    hibernate map 集合映射

    Hibernate集合映射的基本概念 集合映射是Hibernate中一个核心的概念,它允许我们将数据库表中的多对一(OneToMany)、一对多(ManyToOne)、多对多(ManyToMany)等关系映射到Java对象的集合属性上。通过这种方式...

    Hibernate集合映射

    **标题:Hibernate集合映射** **正文:** Hibernate作为Java领域中最流行的ORM(对象关系映射)框架之一,它的核心功能之一就是实现Java对象与数据库表之间的映射。集合映射是Hibernate中一个非常关键的概念,它...

    hibernate 集合映射

    本文将深入讲解Hibernate中的集合映射,包括set、list、map和bag的配置与使用。 1. **Set集合映射** Set集合不允许有重复元素,因此在Hibernate中,set映射通常用于表示唯一性关系,如一对多关系。在Hibernate映射...

    JAVA培训-HIBERNATE的集合映射.doc

    ### JAVA培训-HIBERNATE的集合映射 #### 概述 本文主要聚焦于Hibernate框架下的集合映射机制,特别是针对`Set`、`List`、`Array`、`Map`、`Bag`五种集合...希望本文能帮助读者更好地理解和应用Hibernate集合映射技术。

    Hibernate教程16_集合映射

    在Java的持久化框架Hibernate中,集合映射是至关重要的一个概念,它允许我们将数据库中的表与Java对象的集合属性进行关联。本教程主要讲解了如何在Hibernate中配置和使用集合映射,以便更好地理解和应用这个强大的...

    hibernate中的集合映射范例程序

    在这个“hibernate中的集合映射范例程序”中,我们将深入探讨如何在Hibernate中进行集合映射,以及不同集合类型的应用场景。 首先,集合映射是Hibernate中处理一对多、多对多关系的核心机制。它允许我们将一个实体...

    Hibernate映射配置实例大全(详细总结)

    综上所述,"Hibernate映射配置实例大全"涵盖的内容广泛,包括基本的配置文件设置、实体类的XML和注解映射、集合映射、加载策略、事务管理和缓存配置等。通过深入学习和实践这些实例,开发者可以熟练地运用Hibernate...

    Hibernate关系映射 收藏

    在映射文件中,`One`端通常定义一个集合属性,如`Set`或`List`,并使用`bag`、`list`、`set`或`map`元素表示。例如,`Teacher`类可能有一个`courses`属性,包含所有教授的课程: ```xml &lt;bag name="courses" ...

    Hibernate教程20_关系映射案例三

    9. **集合映射**:在一对多关系中,Hibernate通常使用集合(List, Set, Bag等)来表示多个关联对象。集合类型的选择会影响到数据的唯一性和排序。 10. **外键约束**:在数据库中,关系映射往往涉及到外键约束,...

    在 Hibernate 中实现复杂的数据映射

    这种关系在映射配置中通常通过 `&lt;set&gt;` 或 `&lt;bag&gt;` 标签来定义。 3. **多对多关系**:Student 类与 Course 类之间是多对多的关系,通过 Student_Course_Link 中间表实现。在 Student 类中,有一个类型为 Set 的 ...

    Hibernate 关联映射

    **标题:“Hibernate 关联映射”** 在Java的持久化框架中,Hibernate是一个非常重要的工具,它简化了数据库操作,提供了对象关系映射(ORM)的功能。关联映射是Hibernate中的核心概念,允许我们将数据库表之间的...

    Hibernate 映射文件 结构

    11. **&lt;bag&gt;**、****、****、****:集合类型的映射,对应Java中的List、Set和Map,用于处理一对多关系。 12. ****:缓存配置,可以设置二级缓存,提高数据读取效率。 13. ****:乐观锁,用于版本控制,防止并发...

    Hibernate映射

    综上所述,Hibernate映射是其核心功能之一,它简化了数据库操作,提高了开发效率。通过理解并熟练应用上述知识点,开发者可以更好地利用Hibernate在实际项目中构建高效、稳定的持久层。在实际操作中,结合`hibernate...

    Hibernate 对集合属性的操作.zip_hibernate

    2. **集合映射配置**:在Hibernate的映射文件(.hbm.xml)中,我们需要为集合属性配置对应的标签。例如,对于List,我们可以使用`&lt;list&gt;`标签,对于Set使用`&lt;set&gt;`,对于Map使用`&lt;map&gt;`,并指定对应的键(key)和值...

Global site tag (gtag.js) - Google Analytics