Nemám ponětí, jak je implementováno JVM uvnitř Oracle DB, ale protože (alespoň v některých běžných konfiguracích) každé databázové připojení dostane svůj vlastní serverový proces , pak pokud je do každého z nich vložen samostatný JVM, synchronizovaný blok vám moc nepomůže. Budete muset použít zámky databáze.