PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Hibernuj powoli, aby uzyskać połączenie Postgres

Naprawiłem to =) Naprawdę musiałem zakorzenić się, aby znaleźć odpowiedź na to. Zasadniczo sprowadza się do załadowania metadanych i sterownika JDBC. Ładuje WSZYSTKIE META DANE, w tym komentarze obok kolumn sql i innych różnych konstrukcji, które nie są potrzebne do działania. Nie wiem, dlaczego jest to domyślnie włączone, ale zdecydowanie powinieneś wyłączyć tę funkcję, chyba że wyraźnie jej potrzebujesz:

config.setProperty("hibernate.temp.use_jdbc_metadata_defaults","false");

Natychmiastowe połączenie teraz!

Jedyne informacje, jakie udało mi się znaleźć na ten temat, są w kodzie:

107     // 'hibernate.temp.use_jdbc_metadata_defaults' is a temporary magic value.
108     // The need for it is intended to be alleviated with future development, thus it is
109     // not defined as an Environment constant...
110     //
111     // it is used to control whether we should consult the JDBC metadata to determine
112     // certain Settings default values; it is useful to *not* do this when the database
113     // may not be available (mainly in tools usage).
114     boolean useJdbcMetadata = ConfigurationHelper.getBoolean( "hibernate.temp.use_jdbc_metadata_defaults", configValues, true );

http://grepcode.com/file/repo1.maven.org/maven2/org.hibernate/hibernate-core/4.1.1.Final/org/hibernate/engine/jdbc/internal/JdbcServicesImpl.java#JdbcServicesImpl



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak znaleźć rozmiar dysku tabeli Postgres / PostgreSQL i jej indeksy?

  2. Refaktoryzuj klucz obcy do pól

  3. Wyświetlanie i przełączanie baz danych w PostgreSQL

  4. Migracja z Oracle do PostgreSQL — co powinieneś wiedzieć

  5. PostgreSQL + Hibernate + Spring automatyczne tworzenie bazy danych