최대 절전 모드에서 jpa를 사용하고 있습니다. 100 레코드를 데이터베이스에 삽입하려고합니다. 50 번째 레코드 삽입에서 예외 JDBC 일괄 업데이트가 발생합니다. 예외 처리가 필요하며 나머지 레코드를 유지해야합니다. DB에.예외가 발생할 때 대량 삽입 방법 계속
코드 :
private List<TempCustomers> tempCustomer =new ArrayList<TempCustomers>();
public String migrateCustomers() {
TempCustomers temp = null;
for(DoTempCustomers tempCustomers:doTempCustomers){
try {
temp=new TempCustomers();
BeanUtils.copyProperties(temp, tempCustomers);
tempCustomer.add(temp);
entityManager.persist(temp);
}catch (Exception e) {
tempCustomer.add(temp);
entityManager.persist(temp);
log.info("Exception ..."+e);
return "null";
}
}
return "null";
}
응답 해 주셔서 감사합니다. List에서 100 레코드를 읽은 다음 entityManager.persist (temp)를 사용하여 계속 사용합니다. 목록에서 하나의 레코드가 적절하지 않으므로 JDBC 배치 예외를 통해 최대 절전 모드로 전환됩니다. 나는 데이터베이스를 저장하고 싶습니다. 어떻게 할 수 있습니까? – nag
예 .. 라스, 예외를 찾아 내고 지속적으로 리밍해야합니다. 어떻게 할 수 있습니까? – nag
'log.info ("Exception ..."+ e);'... 스택 추적을 삼킨다. 대신 log.info ("Exception ...", e);를 매개 변수로 사용하여 예외 – artbristol