master-master Java yang saya sayangi dan cintai, saya membuat aplikasi kecil-kecilan pakek ibatis, nah disitu saya membuat suatu form header-detail, kayak aplikasi penjualan gitu,
header : nomer kwitansi detail : kode barang, dll. untuk menyimpan semuanya, supaya aman, saya pakai transaction yang di Ibatis. berikut ini code saya : try { mydao.getLocalSqlMap().startTransaction(); for (int i = 0; i < listBarang.length; i++) { idelete = mydao.insert(listBarang[i]} mydao.getLocalSqlMap().commitTransaction(); mydao.getLocalSqlMap().endTransaction(); } catch (SQLException e) { e.printStackTrace(); } pertanyaan saya adalah sebagai berikut : ketika aplikasi saya gagal melakukan eksekusi query didalam transaction, maka aplikasi akan stuck dan tidak bisa melakukan query lainnya walaupun di form yang lain, dengan alasan "ada transaksi yang sedang berjalan". bagaimanakah untuk mencegah hal ini terjadi? apakah saya harus pakai perintah rollback di dalam catch? lalu jika aplikasi saya online, dan diakses oleh orang banyak, apakah si transaction bisa berjalan dengan baik? dan jika banyak orang melakukan transaction bersama-sama apakah akan ganti-gantian atau banyak transaction dalam 1 satuan waktu? terima kasih sebelumnya.