Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky

Domáce Hardware Siete Programovanie Softvér Otázka Systémy

MySQL JDBC Návody

Java Database Connectivity ( JDBC alebo ) API je sada štandardných tried, ktorých cieľom je zabezpečiť jednotný jednotné rozhranie pre pripojenie všetkých hlavných databázových riešení . Podporované databázy pre JDBC patrí MySQL , Oracle , PostgreSQL , DB2 a Microsoft SQL Server . Tento článok sa bude používať open source databázového softvéru , MySQL , pre ilustráciu princípov JDBC . Stiahnite si a Odkaz na MySQL JDBC ovládače

JDBC vyžaduje ovládač pre každý typ databázy bude pripojiť , a výroba a údržba tohto ovládača je zodpovednosťou vývojárov databázového softvéru . V prípade MySQL , oficiálny JDBC ovládač sa nazýva MySQL :: Connector /J , a možno získať voľne z MySQL webové stránky . Vodič bude mať súbor JAR , a tento súbor musí byť v Java classpath . Väčšina Java IDE zvládne to automaticky za vás , ak pridáte súbor ovládača ako externý knižnicu .

Všetky príkazy potrebné pre interakciu s JDBC by mali byť k dispozícii prostredníctvom importu java.sql . * V hornej časti vašej triede súbor .
Zaregistrujte ovládače

To vás nevyžaduje odoslať registračný formulár na Slnku . To je povedať , Java , ktoré databázový ovládač , ktorý sa bude používať s JDBC pre nasledujúce otázky . Môžete registrovať ovládač pomocou nasledujúceho príkazu : .

Driver d = ( Driver ) Class.forName ( " com.mysql.jdbc.Driver " ) newInstance ( ) ;

Obsah meno vodiča ( com.mysql.jdbc.Driver ) sa vzťahuje iba na MySQL . Presný reťazec potrebná pre iné databázové ovládače ( napr. PostgresSQL ) sa bude líšiť .

Ak obdržíte Java.Lang.ClassNotFoundException , to s najväčšou pravdepodobnosťou znamená , že vodič nie je na ceste triedy .

nadviazať spojenie

pripojenia sú stanovené pomocou nasledujúceho príkazu :

Connection conn = DriverManager.getConnection ( url , užívateľské meno , heslo ) ,

Ak je databáza na rovnakom počítači ako klient Java , ktorý pristupuje to , potom " localhost " bude pracovať ako adresu vo väčšine prípadov . Ak číslo portu pre databázu nie je predvolená pre daný balík databázy , potom to môže byť pripojená k URL pomocou dvojbodky .

Jedným dôležitým doplnkom je identifikátor URL . To sa zmení pre rôzne databázové servery . Avšak , pre MySQL , nasledujúce by byť platné : String url = " jdbc : mysql ://localhost : 8080 " ;

Ak pripojenie zlyhá z akéhokoľvek dôvodu , bude SQLException byť hodená , a bude obsahovať chybové hlásenie s ďalšími informáciami , ktoré si môžete vytlačiť na System.err pre ladenie .
databázy časových limitov

Je dôležité si uvedomiť , že , ako vytvoriť spojenie , aktívne spojenie existuje medzi klientom a serverom . Avšak , mnoho databáz majú veľmi prísne požiadavky na time - out . Je dôležité , aby spojenie nemožno nadviazať , kým otázky sú pripravené . Skôr než nadviazanie pripojenia a potom čakať na vstup od užívateľa vedieť , aké otázky spustiť , je lepšie vytvoriť testovacie pripojenie , odpojiť a znovu pripojiť , akonáhle otázky sú k dispozícii .
Spustiť dotaz a Fetch výsledky

vydať dotaz , musíte vytvoriť vyhlásenie pomocou aktívne pripojenie k databáze

vyhlásenie s = conn.createStatement ( ) ; . s.executeQuery ( " SELECT * FROM " + tableName ) ;

Ak chcete získať výsledky , môžete ihneď spustiť : Spojené

výsledný rs = s.getResultSet ( ) ;
Resultsets

dôležité vedieť o Resultsets je , že vytiahnuť dáta zo servera jeden riadok naraz . Vyššie uvedený príkaz inicializuje iba ResultSet objektu a dostane nejakú metadáta o tento objekt ( hlavne názvy stĺpcov a typy ) . To nie je v skutočnosti načítať žiadne dáta . Údaje musia byť vytiahnutý z ResultSet a uložená v nejakom inom mieste , ako je uzatvorená spojenie , všeobecne sa slučka hľadá niečo ako :

dát LinkedList = nový LinkedList ( ) , zatiaľ čo ( rs.next ( ) ) { data.add ( rs.getString ( 1 ) ) ; //načítanie všetkých dát z prvého stĺpca }
Zavrieť Pripojenie

Väčšinu času , vodič bude spracovávať záverečnej pripojenia sám . Avšak , to môže pomôcť predísť problémom neskôr , ak budete vždy explicitne zatvorte ResultSet , vyhlásení a pripojenie , keď ste hotoví s nimi

rs.Close ( ) ; . S.close ( ) ; Conn.Close ( ) ;

Najnovšie články

Copyright © počítačové znalosti Všetky práva vyhradené