即:value是个list或set。
m为map:
m.put("li", "123");
m.put("li", "123");
m.put("li", "124");
m.put("wang", "123");
m.put("wang", "126");保存后,数据库里我想要有如下数据:
id| name| phoneNO
1 | li  |  123
1 | li  |  124
1 | wang|  123
1 | wang|  126-----------------
但实际情况只有如下数据:
id| name| phoneNO
1 | wang|  126
1 | li  |  124

解决方案 »

  1.   

    哦,你用hibernate提供的持久化方法有两种,有个save是可以添加,也可以更改。还有其它的方法merge同样支持。这里需要搞清楚!
    ,所以你添加数据的时候,后面它自动生成的T-SQL是执行的修改,而非添加。
    这里,可以自己写添加的HQL就能解决问题!
      

  2.   

    怎么自己写添加的HQL?写原生sql吗?
      

  3.   

    map的结构本来就是一对一的。如果想一对多的话,你就应该用多张表了,多个类了,当然表之间最好少写约束,关系主要用代码来实现。
      

  4.   

    MAP就是键值对 这种情况你可以映射一对多
      

  5.   

    value 改用数组或者其他集合