我有一个有四列的表,比如说
P_Key(int), Ref_Key(int), Key(String), Value(Integer).
我想通过将地图和Ref_key
一起保存到此数据库中来避免多个create语句。 Map包含键和相应的值。它将使用map中的条目为该Ref_key创建多行。我正在使用hibernate。
假设,我想坚持以下地图:
"Me" -> 0
"You" -> 10
"They" -> 12
和Ref_Key是123
。
然后它应该在表中创建3行。
P_Key Ref_Key Key Value
1 123 "Me" 0
2 123 "You" 10
3 123 "They" 12
假设密钥以1开头并自动递增。
我应该遵循什么方法?
答案 0 :(得分:1)
如果您的意思是“插入语句”而不是“创建语句”;我不确定你是否可以:数据库必须接收3个INSERT才能在数据库中添加3行。但是Hibernate应该合并它们并且只发送1个网络请求(批量请求)。
我建议的方法:
@Entity
。flush
)。有关批处理的详细信息,请参阅http://docs.jboss.org/hibernate/orm/3.3/reference/en/html/batch.html。注意:不幸的是,Hibernate禁用了自动递增主键的批处理!