sql >> Databáze >  >> RDS >> Mysql

Lepší porozumění - Class.forName(com.mysql.jdbc.Driver).newInstance ();

Tento kód nutí třídu představující ovladač MySQL načíst a inicializovat. V Javě se třída nenačte, pokud to není nezbytné že se třída načte. Protože kód JDBC obvykle nikdy přímo neodkazuje na ovladač, bez Class.forName by se nenačetl (nebo nějaké jiné ekvivalentní alternativy).

Všimněte si, že je nutné obě načíst a inicializovat třídy, což jsou 2 různé věci.

Všimněte si také, že není nutné volat .newInstance() -- statický inicializátor ovladače se již registruje jako ovladač JDBC.

Nakonec si všimněte, že pomocí Service Loader API obvykle není nutné volat Class.forName() k načtení ovladače:lze jej načíst automaticky.



  1. Jak určit nadřazené pole dotazu z poddotazu v MySQL?

  2. Co znamená vybrat počet(1) z název_tabulky na libovolné databázové tabulce?

  3. Závažná chyba:Volání nedefinované funkce sqlsrv_connect()

  4. Po odstranění záznamů na SQL Serveru resetujte seed identity