Я погружаю свой палец в Spring и использую SimpleJdbcTemplate, чтобы помочь уменьшить объем кода, который мне нужно написать, но теперь у меня возникла проблема, связанная с исключением: "брошен. Я вытаскивал категории из eBay, используя их веб-сервисы, и вставлял каждую категорию (я думаю, около 10 000 записей) с помощью вызова jdbTemplate.update (см. Код ниже)
CategoryService:
// If the category already exist (i.e. an error is throuwn as the version must be unique) than do now bother sotring the categories
for(CategoryType ct : categories)
{
try
{
// TODO: Determine why a child ategory can be tied to multiple parents, for now just use the first category in the array
categoryDao.SaveCategory(ct.getCategoryID(), ct.getCategoryName(), ct.getCategoryParentID()[0]);
}
catch(DuplicateKeyException e)
{
// No problem here, the version description is the same... just continue as if nothing happened
}
}
CategoryDaoImpl: (реализация интерфейса CategoryDao)
@Override
public int SaveCategory(String ebayCategoryId, String ebayCategoryName, String ebayParentCategoryId)
{
// Firstly grab the next value in the categoru sequence
int internalCategoryId = jdbcTemplate.queryForInt(categorySequenceStatement);
// Insert the new category
jdbcTemplate.update(insertCategoryStatement, new Object[] {internalCategoryId, ebayCategoryId, ebayCategoryName, ebayParentCategoryId});
return internalCategoryId;
}
Окружающая среда:
- Spring Framework 3.0.2
- Oracle Database XE (я думаю, 11g!) (С использованием ojdbc6.jar)
- JDK (jdk1.6.0_26)
Я хотя и использовал метод batchUpdate в SimpleJdbcTemplate, но я не уверен, есть ли здесь основная проблема.
Буду признателен за любую помощь!