`
luguangjie
  • 浏览: 4048 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

hibernate中list的映射

阅读更多

今天在看hibernate的帮助文档时,发现一对多,多对多,多对一关系映射中,原来list集合也是可以用的,以前只是在用set,必须要list的时候还进行转化。

 

hibernate list集合使用 User-Address

 

User类:

 

public class User {

 private String id;
 
 private String name;
 
 private String password;
 
 private List addressSet;

 

 ......

 

}

 

Address类:

 

public class Address {

 private String id;
 
 private String address;
 
 private String city;

 

 .....

 

 

 

User.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">

<hibernate-mapping>
    <class name="com.test.bean.User" table="t_user">

        <id name="id" type="java.lang.String">
         <column name="id" length="128" />
            <generator class="uuid"></generator>
        </id>
  
  <property name="name" type="java.lang.String">
   <column name="tname"></column>
  </property>

  <property name="password" type="java.lang.String">
   <column name="tpassword"></column>
  </property>
  <!--  order-by="city"
  <set name="addressSet" table="t_add" cascade="all" lazy="false" inverse="false">
   <key column="userid"></key>
   <one-to-many class="com.test.bean.Address" />
  </set>
  -->
  
  <list name="addressSet" table="t_add" cascade="all" lazy="false" inverse="false">
   <key column="userid"></key>
   <list-index column="addindex" />
   <one-to-many class="com.test.bean.Address" />
  </list>
  
    </class>

</hibernate-mapping>

 

Address.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">

<hibernate-mapping>
    <class name="com.test.bean.Address" table="t_add">
        <id name="id" type="java.lang.String">
         <column name="id" length="128" />
            <generator class="uuid"></generator>
        </id>
  
  <property name="address" type="java.lang.String">
   <column name="address"></column>
  </property>

  <property name="city" type="java.lang.String">
   <column name="city"></column>
  </property>

    </class>

</hibernate-mapping>

 

 

 这样就可以正常使用了呢...但是不知道这样做有什么弊端不..?

 

 

0
0
分享到:
评论

相关推荐

    hibernate list集合映射

    **标题:“Hibernate List集合映射”** 在Java的持久化框架Hibernate中,集合映射是将数据库中的表与Java对象的集合属性关联的过程。...理解和熟练掌握List映射的配置和操作,对于进行高效、稳定的ORM编程至关重要。

    JAVA数据类型与Hibernate的类型映射

    此外,自定义对象的映射是Hibernate映射中的一个重要部分。通过在实体类上使用@Entity注解,并使用@Id注解指定主键字段,可以将一个Java类映射到数据库的一张表。字段则通过@Column注解来指定列名和属性,如长度、...

    hibernate中容器映射技术

    在Java持久化框架Hibernate中,容器映射技术是将Java集合类(如Set、Map、List等)与数据库中的关联关系进行映射的一种方法。这种技术使得对象之间的复杂关系能够被有效地存储和检索,增强了数据操作的灵活性。下面...

    hibernate集合的映射

    本文将深入探讨Hibernate中的四种主要集合映射类型:Set、List、Array和Map,以及它们在实际开发中的应用场景和配置。 一、Set集合映射 Set集合映射是最常见的映射类型,它不允许重复元素。在Hibernate中,Set通常...

    Hibernate中List信息的配置

    例如,在一个“用户-文章”关系中,如果我们要记录用户发表文章的时间顺序,那么使用List映射就显得尤为重要。List映射通常通过`&lt;list&gt;`标签来实现,其中可以包含`&lt;key&gt;`、`&lt;index&gt;`和`&lt;one-to-many&gt;`等子标签,分别...

    hibernate map 集合映射

    在Hibernate的映射文件(.hbm.xml)中,我们通常使用`&lt;set&gt;`, `&lt;list&gt;`, `&lt;map&gt;`等标签来定义集合映射。每个标签都有对应的属性,例如: - `name`: 对象属性名。 - `table`: 所映射的数据库表名。 - `inverse`: ...

    hibernate array 数组映射

    在Java的持久化框架Hibernate中,数组映射是一种常见的数据模型转换方式,它允许我们将数据库中的数据以数组的形式存储在Java对象中。本篇将详细探讨`hibernate array 数组映射`的相关知识点,包括其原理、配置、...

    Hibernate映射集合属性List

    这里的"List"是Java集合框架中的一个接口,用于存储一组有序的元素,而在Hibernate中,它常用来映射数据库中的数组、列表或集合类型的数据。本文将详细探讨如何使用Hibernate映射集合属性List,以及如何让Hibernate...

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

    在 Hibernate 中,集合映射是指将 Java 集合类型与数据库表之间的映射关系。常见的集合映射类型有 Set、List、Array、Map 和 Bag 等,每种类型都有其特点和应用场景。 Set 集合映射 Set 集合是 Hibernate 中基础的...

    hibernate set 集合映射

    在Java的持久化框架Hibernate中,集合映射是将数据库中的表关系映射到对象模型中的集合类,如List、Set、Map等。这允许我们在Java代码中操作对象集合,而Hibernate负责处理底层的SQL查询和数据存储。本文将深入探讨`...

    hibernate的多种映射关系

    在 Hibernate 中,映射关系是将数据库表与 Java 类之间的关联方式,使得对象模型可以与关系模型无缝对接。本篇文章将详细探讨 Hibernate 中的多种映射关系。 1. **一对一映射 (One-to-One)** 一对一映射表示两个...

    hibernate多对多关联映射

    在Java的持久化框架Hibernate中,多对多关联映射是一种常见的关系数据库模型映射方式,用于处理两个实体之间存在多个实例互相关联的情况。本文将深入探讨Hibernate如何实现多对多关联映射,并通过实际例子解析相关...

    Hibernate_容器映射技术笔记

    在Java的持久化框架Hibernate中,容器映射技术是一种用于管理对象关系的机制,它使得对象之间的关联可以方便地在数据库中表示。本篇笔记主要探讨了如何使用Hibernate进行容器映射,特别是针对集合类型的映射,如List...

    hibernate bag 集合映射

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

    hibernate关联映射实例

    在Java企业级开发中,Hibernate是一个非常重要的对象关系映射(ORM)框架,它极大地简化了数据库操作。本文将深入探讨“hibernate关联映射实例”中的关键知识点,包括一对多、多对多和继承映射,这些都是Hibernate中...

    hibernate映射和查询

    在给定的文件中,`Hibernate 第二次课.docx` 可能包含了关于 Hibernate 映射和查询的详细讲解,涵盖了如何配置项目、创建实体类、编写映射文件和执行查询等步骤。`第二章mysql.sql` 文件可能是用于配合 Hibernate ...

    Hibernate容器映射技术(Set、List、Map)

    Hibernate容器映射技术(Set、List、Map)

    [原]Hibernate集合映射

    Hibernate允许我们在集合映射中定义排序规则,使用`@OrderBy`注解指定排序字段和顺序。同时,通过Query对象的`setFirstResult`和`setMaxResults`方法可以实现分页查询。 10. **集合缓存** 为了提高性能,...

    Hibernate集合映射与关联关系

    在Hibernate中,我们可以使用集合类(如List、Set、Map等)来映射这些关系。例如,一个学生可以有多次成绩记录,这就构成了一个学生到成绩的映射关系,通常我们使用Map来表示这种关系,因为Map能确保每个学生都有...

Global site tag (gtag.js) - Google Analytics