zoukankan      html  css  js  c++  java
  • Hibernate映射Map属性2

    Hibernate在映射Map属性时生成映射文件。需要注意的一些地方。下面是我的一个例子。

    Java类如下

    public class NameAndNumber
    {
        private Integer id;
        
        private String category;
        
        /*
         * 以 球队名称为键,球队编号为值。
         */
        private Map<String, String> NameNumber = new HashMap<>();
    
        //部分代码省略

    生成的映射文件如下:

    需要修改成如下的样子:包括生成主键的方式、表名称、键值对应的列(注意:<map-key 中的列名称还不能取名为key,否则发生错误。)

    <?xml version="1.0"?>
    <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
    "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
    <!-- Generated 2017-9-17 12:59:20 by Hibernate Tools 3.5.0.Final -->
    <hibernate-mapping>
        <class name="com.zcd.exercise.map.NameAndNumber" table="NAME_AND_NUMBER">
            <id name="id" type="java.lang.Integer">
                <column name="ID" />
                <generator class="identity" />
            </id>
            
            <property name="category" type="java.lang.String">
                <column name="CATEGORY" />
            </property>
            
            <map name="NameNumber" table="NAME_NUMBER" lazy="true">
                <key>
                    <column name="ID" />
                </key>
                <map-key type="java.lang.String">
                    <column name="NAME"></column>
                </map-key>
                <element type="java.lang.String">
                    <column name="NUMBER" />
                </element>
            </map>
            
        </class>
    </hibernate-mapping>
  • 相关阅读:
    luogu4781
    luogu 4933
    luogu p1726
    bzoj2238
    luogu 1462 通往奥格瑞玛的道路
    noip.ac 3276 矩阵
    luogu1144
    noip.ac 3248
    奶牛比赛
    小P的Civilization V
  • 原文地址:https://www.cnblogs.com/GooPolaris/p/7919863.html
Copyright © 2011-2022 走看看