关于hibernate中set、list、map标签的用法与配置含义

 
关于hibernate中set、list、map标签的用法与配置含义 

  首先这三个标签我的感觉是应该都是运用到一对多的地方。三者之间的区别就是,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>

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值