关于hibernate中set、list、map标签的用法与配置含义。
2009-01-01 21:44
405 查看
首先这三个标签我的感觉是应该都是运用到一对多的地方。三者之间的区别就是,Set是无序的,所以表的结构中,不用为其建立一个区别与其他列的标签,而List是有序的,需要建立一个一个区别与其他列的标识,而Map的特点我们一定可以从这里判断出来而且特别清楚了,Map是向里面传值的时候是键值对应的,键对应一个字段,值对应一个字段,而键这个字段就和List中那个区别于其他列的标识一样,用于区分。
下面我们看下配置中的例子。
首先我们看看Set的:
<!--其中这个name中的就是你要映射的类的名字,table是你映射到哪个表,如果不写的话,就是默认成和name中名字相同的表,如果要是这个名字是sql中的关键字,那么我们就要写个table设置成不是关键字的名字。-->
<set name=" " table=" ">
<!--key中配置的是既是主键又是外键,就是凭借的这里的配置和另一个表中的id进行关联的,column就是对应的表中的字段名。-->
<key>
<column name=" "/>
</key>
<!--element是元素的意思,他设置的是类中其他属性对应的表中的字段名。-->
<element column=" "/>
</set>
其次我们看看List的:
<!--其中这个name中的就是你要映射的类的名字,table是你映射到哪个表,如果不写的话,就是默认成和name中名字相同的表,如果要是这个名字是sql中的关键字,那么我们就要写个table设置成不是关键字的名字。-->
<list name=" " table=" ">
<!--key中配置的是既是主键又是外键,就是凭借的这里的配置和另一个表中的id进行关联的,column就是对应的表中的字段名。-->
<key>
<column name=" "/>
</key>
<!-- index在sql我们知道是索引,在这里换个方式理解,他是一个进行顺序标识的东西,因为list是有序的,所以我们就是通过这个来区分顺序的。-->
<index column= " "/>
<!--element是元素的意思,他设置的是类中其他属性对应的表中的字段名。-->
<element column=" "/>
</list>
其次我们看看Map的:
<!--其中这个name中的就是你要映射的类的名字,table是你映射到哪个表,如果不写的话,就是默认成和name中名字相同的表,如果要是这个名字是sql中的关键字,那么我们就要写个table设置成不是关键字的名字。-->
<map name=" " table=" ">
<!--key中配置的是既是主键又是外键,就是凭借的这里的配置和另一个表中的id进行关联的,column就是对应的表中的字段名。-->
<key>
<column name=" "/>
</key>
<!-- 这里的index设置和list中的含义是大同小异的。list中的是顺序标识,在map中我们知道是通过键值对应,这里的index中的就相当于键。而后面element中的配置就相当于他的值。-->
<index column= " "/>
<!--element是元素的意思,他设置的是类中其他属性对应的表中的字段名。-->
<element column=" "/>
</map>
下面我们看下配置中的例子。
首先我们看看Set的:
<!--其中这个name中的就是你要映射的类的名字,table是你映射到哪个表,如果不写的话,就是默认成和name中名字相同的表,如果要是这个名字是sql中的关键字,那么我们就要写个table设置成不是关键字的名字。-->
<set name=" " table=" ">
<!--key中配置的是既是主键又是外键,就是凭借的这里的配置和另一个表中的id进行关联的,column就是对应的表中的字段名。-->
<key>
<column name=" "/>
</key>
<!--element是元素的意思,他设置的是类中其他属性对应的表中的字段名。-->
<element column=" "/>
</set>
其次我们看看List的:
<!--其中这个name中的就是你要映射的类的名字,table是你映射到哪个表,如果不写的话,就是默认成和name中名字相同的表,如果要是这个名字是sql中的关键字,那么我们就要写个table设置成不是关键字的名字。-->
<list name=" " table=" ">
<!--key中配置的是既是主键又是外键,就是凭借的这里的配置和另一个表中的id进行关联的,column就是对应的表中的字段名。-->
<key>
<column name=" "/>
</key>
<!-- index在sql我们知道是索引,在这里换个方式理解,他是一个进行顺序标识的东西,因为list是有序的,所以我们就是通过这个来区分顺序的。-->
<index column= " "/>
<!--element是元素的意思,他设置的是类中其他属性对应的表中的字段名。-->
<element column=" "/>
</list>
其次我们看看Map的:
<!--其中这个name中的就是你要映射的类的名字,table是你映射到哪个表,如果不写的话,就是默认成和name中名字相同的表,如果要是这个名字是sql中的关键字,那么我们就要写个table设置成不是关键字的名字。-->
<map name=" " table=" ">
<!--key中配置的是既是主键又是外键,就是凭借的这里的配置和另一个表中的id进行关联的,column就是对应的表中的字段名。-->
<key>
<column name=" "/>
</key>
<!-- 这里的index设置和list中的含义是大同小异的。list中的是顺序标识,在map中我们知道是通过键值对应,这里的index中的就相当于键。而后面element中的配置就相当于他的值。-->
<index column= " "/>
<!--element是元素的意思,他设置的是类中其他属性对应的表中的字段名。-->
<element column=" "/>
</map>
相关文章推荐
- 关于hibernate中set、list、map标签的用法与配置含义
- Hibernate学习---第六节:数组&list&map&set的映射配置
- Hibernate学习---第七节:数组&list&map&set的映射配置
- Hibernate在一对多映射下集合Set,List,Map的配置
- 关于spring http invoker中一个常见错误,dubbo 调用 hibernate的set map list
- 关于容器的用法(vector,deque,list,set,map etc.)
- hibernate List,Set,Map集合的配置实例
- spring 3配置文件中如何注入map list set等类型
- spring 配置文件 list map set
- List Set Map 实现类用法总结
- Collection List Set和Map用法与区别 (转载)
- Spring中使用Map、Set、List、数组、属性集合的注入方法配置文件
- hibernate 集合(set, list, array,bag, map)
- 【转】spring中props,list,set,map元素的用法
- 【java】java集合list与set、map集合的区别、用法详解
- List,Set,Map用法以及区别
- c++ list, vector, map, set 区别与用法比较(2)
- Map、List、Set用法及区别
- Spring中集合(List,Set,Map)的配置和简单使用(一)
- List,Set,Map用法以及区别