Ho una classe astratta e due sottoclassi che la estendono. Ho il seguente nella primavera del file di configurazionespring @ annotazione transazionale
<bean id="importConfigFile" class="xxx.ImportConfigFiles" parent="parentImportFile"></bean>
<bean id="importFile" class="xxx.ImportUMTSKPIFiles" parent="parentImportFile"></bean>
<bean id="parentImportFile" name="parentImportFile" class="xxx.ImportUMTSFiles" abstract="true"></bean>
<tx:annotation-driven transaction-manager="transactionManager" />
Nella mia classe astratta Ho i seguenti metodi
public void importDataToDB(){
//all the good stuff goes in here
}
@Transactional
public void executeInsertUpdateQuery(){
//all the good stuff goes in here
}
Il mio codice Java
ImportConfigFiles importConfigFiles = (ImportConfigFiles)context.getBean("importConfigFile");
importConfigFiles.setFileLocation(destPath);
importConfigFiles.importDataToDB();
questo non funziona. executeInsertUpdateQuery() esegue solo una query sql nativa. Se metto @Transactional su imortDataToDB() funziona, ma poi rende enorme la mia transazione dal momento che all'interno di quel metodo faccio un ciclo di tutte le righe in un file e inserisco i record in db.
Grazie per la risposta rapida. – user373201