PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Atomikos:data tidak disimpan saat menggunakan PostgreSQL

Solusi

Oke, misteri terpecahkan! Ternyata saya perlu memanggil secara eksplisit siram () pada sesi objek.

Jawaban berikut memberi saya petunjuk:
Hibernasi tidak menyimpan Objek di Database?

Contoh

Berikut adalah contoh kerja (perhatikan session.flush() yang harus dipanggil sebelum menutup sesi ):

@Service
public class TableOneDaoImpl extends HibernateDaoSupport implements TableOneDao  {

    @Override
    public void save(TableOne tableOne) throws Exception {
        Session session = null;
        try {
            session = getSessionFactory().openSession();

            session.save(tableOne);
            session.flush();
        } catch (Exception e) {
            throw new Exception("Could not save tableOne!", e);
        } finally {
            if (session != null) {
                session.close();
            }
        }
    }

}


Dan sekali lagi, saat menggunakan MySQL berfungsi dengan baik tanpa pembilasan eksplisit.

Pengamatan menarik

Aplikasi web uji yang disebutkan di atas menggunakan Hibernate murni konfigurasi dan Hibernate SessionFactory (yaitu tanpa persistence.xml dan JPA entityManager ). Tetapi saya juga memiliki aplikasi pengujian yang sama yang dikonfigurasi untuk menggunakan JPA . Dan dalam aplikasi itu semuanya juga berfungsi tanpa pembilasan eksplisit baik dengan MySQL dan PostgreSQL.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PostgreSQL:Bagaimana cara mengembalikan baris dinamis dari tabel tanpa menggunakan daftar definisi kolom?

  2. bagaimana saya bisa membuat file XML baru dari database yang ada di database PostgreSQL menggunakan java

  3. Cara yang tepat untuk membubuhi keterangan bidang peringkat untuk kumpulan kueri

  4. Cara memesan tupel berbeda dalam kueri PostgreSQL

  5. Koneksi Postgres lambat dari PHP