我使用JPA和Hibernate作为提供程序因此,考虑下面的代码我使用本机sql插入10000记录,我构造了一个要插入的值的字符串。所以我的问题是:
这是一个很好的实施方式吗?
我会得到一些内存异常吗?
我可以直接从选择中插入值吗?因为循环哪个 构造我的值字符串需要一些时间。
有最好的选择吗?
我的approche:
@Transactional
public void update_notification(...){
List<AppelOffre> aos_new = find_ao_with_alerte(choixalerte , contact);
String values ="";
int size = aos_new.size() , i = 1;
for(AppelOffre ao : aos_new){
values += "(" + ao.getIdAppelOffre() + " , " + contact.getIdConatct() + ")" ;
if( (i++) != size )
values += " , " ;
}
entityManager.createNativeQuery(" insert into ao_notif (ID_APPEL_OFFRE,ID_CONATCT)
values " + values )
.executeUpdate();