close

Konektivita databáze Java

Přejít na navigaci Přejít na hledání
JDBC
Typ Data Access API
Zapsáno v Jáva
Hardwarová platforma Java virtuální stroj
Nejnovější verze JDBC 4.3 (21. září 2017 ) ( 2017-09-21 )
webová stránka Java SE 8
 Mediální soubory na Wikimedia Commons

JDBC ( anglicky  Java DataBase Connectivity  - connection with Java databases ) je průmyslový standard nezávislý na platformě pro interakci Java aplikací s různými DBMS , implementovaný jako balíček java.sqlzahrnutý v Java SE .

JDBC je založeno na konceptu tzv. ovladačů, které umožňují získat připojení k databázi na speciálně popsané URL . Ovladače lze načítat dynamicky (za běhu programu). Po načtení se ovladač sám zaregistruje a je volán automaticky, když program vyžaduje URL obsahující protokol, za který je ovladač zodpovědný.

Historie

Sun Microsystems vydal JDBC jako součást JDK 1.1 19. února 1997 [1] . Od té doby je součástí J2SE . Třídy JDBC jsou v balíčcích java.sql a javax.sql. Od verze 3.1 je JDBC vyvíjen v rámci Java Community Process (JCP), který zahrnuje standardizované specifikace pro vývojáře Java.

Rozhraní

JDBC API obsahuje dva hlavní typy rozhraní: první je pro vývojáře aplikací a druhé (nižší úroveň) je pro vývojáře ovladačů.

Databázové připojení je popsáno třídou, která implementuje java.sql.Connection. Po připojení k databázi můžete vytvářet objekty typu Statement, které se používají k provádění databázových dotazů v jazyce SQL .

Existují následující typy typů výpisů, které se liší účelem:

  • java.sql.Statement - prohlášení o obecném účelu;
  • java.sql.PreparedStatement - Příkaz, používaný k provádění požadavků obsahujících substituované parametry (označený symbolem '?' v těle požadavku);
  • java.sql.CallableStatement - Příkaz určený k volání uložených procedur .

Rozhraní java.sql.ResultSetusnadňuje zpracování výsledků dotazů.

Výhody

Výhody JDBC jsou:

  • Snadný vývoj: vývojář nemusí znát specifika databáze, se kterou pracuje
  • Kód se téměř nemění, pokud se společnost přesune do jiné databáze (množství změn závisí pouze na rozdílech mezi dialekty SQL)
  • Není třeba instalovat těžkopádný klientský program
  • Libovolnou databázi lze připojit přes snadno popsanou URL

Příklady

Příklad kódu

JDBC pro MySQL
Tento příklad používá bezplatný ovladač MySQL JDBC , který se snadno instaluje na většinu distribucí Linuxu prostřednictvím standardních repozitářů .
packagejavaapplication1  ; _ import java.sql.* ;
 

public  class  Hlavní  {

    public  static  void  main ( String []  args )  vyvolá výjimku  SQL  { 
        /** 
         * tento řádek načte ovladač DB. 
         * zrušte komentář, pokud ovladač píšete ručně 
         */ 
        //Class.forName("com.mysql.jdbc.Driver"); 
        Connection  conn  =  null ; 
        zkuste  { 
            conn  =  Driver Manager . getConnection ( 
            "jdbc:mysql://localhost:3306/db_name" , 
            "user" ,  "password" );

            if  ( conn  ==  null )  { 
                System . ven . println ( "Nelze se připojit k databázi!" ); 
                Systém . výstup ( 0 ); 
            }
            
            Příkaz  stmt  =  conn . createStatement (); 
            ResultSet  rs  =  stmt . executeQuery ( "SELECT * FROM users" );
    
            while  ( rs . next ())  { 
                System . ven . println ( rs . getRow ()  +  ". "  +  rs . getString ( "jméno" ) 
                        +  "\t"  +  rs . getString ( "příjmení" )); 
            }
    
            /** 
             * stmt.close(); 
             * Zavřením příkazu se automaticky zavře 
             * všechny otevřené objekty ResultSet s ním spojené 
             */ 
            stmt . zavřít (); 
        } 
        catch  ( SQLException  e )  { 
            e . printStackTrace (); 
        }  nakonec { 
            if  ( conn  !=  null ){ 
                conn . zavřít (); 
            } 
        } 
    } 
}

Poznámky

  1. Specifikace JDBC 3.0 (downlink) . www.sun.com . Sun Microsystems . Archivováno z originálu 24. června 2012.  

Odkazy