Konektivitas Basis Data Jawa

Sampeyan ngerti dhasar SQL. Iki apik. Nanging dina iki sampeyan bakal rumangsa luwih apik. Dina iki sampeyan bakal miwiti sinau babagan nggarap database saka aplikasi Java.

Ana macem-macem DBMS, mula para pangripta Jawa mutusake kanggo nggawe standarisasi cara aplikasi Java bisa digunakake karo database. Lan padha diarani standar iki - JDBC : Java DataBase Connectivity .

JDBC nduweni 3 antarmuka utama:

  • Sambungan - tanggung jawab kanggo nyambung menyang database
  • Statement - tanggung jawab kanggo query database
  • ResultSet - tanggung jawab kanggo asil query menyang database

Ing kasunyatan, iku kabeh. Lan kita ora bakal sinau kabeh cara kabeh antarmuka. Mung conto sing bisa digunakake, sing mboko sithik bakal rumit.

JDBC meh padha karo nggarap servlet. Pencipta JDBC wis nulis sawetara antarmuka lan kanthi bangga nyebutake Java DataBase API. Lan implementasine antarmuka kasebut ditugasake kanggo ... panyipta DBMS. Kepiye carane ditindakake ing kana - ora ana sing peduli. Kerjane apik.

Ana papat versi JDBC lan kita bakal ndeleng sing paling anyar. Lan ora amarga dheweke paling keren, nanging amarga dheweke paling gampang.

Manajer Driver JDBC

Aplikasi Java lan database komunikasi karo saben liyane liwat perpustakaan disebut Driver JDBC. Iki minangka set kelas sing ngetrapake JDBC API kanggo DBMS tartamtu.

Driver JDBC sing bener dipilih nggunakake kelas sing disebut DriverManager . Interaksi kasebut bisa diwakili kaya ing ngisor iki:

Ing bab punika, sampeyan bisa nggunakake In-Memory-DB, No-SQL-DB, utawa malah database dibangun menyang app Android. Minangka pangembang Jawa, nuansa iki ora dadi masalah sampeyan. Driver Manager bakal milih driver JDBC bener kanggo sampeyan lan kabeh bakal bisa kaya clockwork.

Miturut cara, carane dheweke nindakake?

Nyambung menyang server MySQL

Elinga apa sing dibutuhake kanggo nyambung menyang server SQL lokal liwat MySQL Workbench? Yen aku lali, aku ngelingake sampeyan, sampeyan butuh telung perkara:

  • tuan rumah
  • mlebu
  • sandi

Kabeh wis jelas karo login lan sandhi, lan host, yen sampeyan ngelingi, iku jeneng komputer sing server dumunung. Yen dumunung ing komputer lokal, sampeyan kudu nemtokake localhost minangka jeneng host. Apa yen ora lokal?

Banjur sampeyan kudu nggunakake ... URL. URL singkatan saka Universal Resource Locator . Bisa digunakake kanggo nemtokake lokasi apa wae ing jaringan: situs, printer, server SQL. Nyatane, URL kasebut uga digunakake kanggo ngakses server SQL lokal. Iku katon kaya iki:

mysql://localhost:3306/db_scheme
  • mysql minangka protokol server
  • localhost - jeneng host ing jaringan
  • 3306 - port kang panjalukan digawe
  • db_scheme - jeneng skema (jeneng database)

Cathetan. Jeneng database bisa diilangi. Nanging yen server nyimpen akeh skema database, biasane pangguna beda lan hak akses beda digawe kanggo wong-wong mau. Lan yen pangguna sing sampeyan mlebu menyang server SQL ora duwe akses menyang kabeh database, mula sampeyan kudu nemtokake jeneng database tartamtu sing sampeyan akses.

Ing pungkasan url iki bisa uga ana macem-macem paramèter, jinis enkoding, zona wektu, sing dianggep minangka paramèter kanggo sambungan database anyar sing ditetepake.

Uga, protokol bisa komposit. Yen kabeh komunikasi karo server database liwat saluran sing dienkripsi nggunakake protokol SSH, banjur URL bisa ditemtokake kaya iki:

ssh:mysql://localhost:3306/db_scheme

Protokol ora kudu program eksternal. Contone, yen sampeyan nggarap server nggunakake protokol JNDI, sampeyan bisa nemtokake kaya iki:

jndi:mysql://localhost:3306/db_scheme

Lan yen sampeyan pengin nggarap protokol JDBC API, sampeyan kudu nulis kaya iki:

jdbc:mysql://localhost:3306/db_scheme

Nalika sampeyan nyoba nggawe sambungan database, JDBC Driver Manager parses SQL-db-URL lan nemtokake jeneng driver JDBC saka jeneng protokol. Punika trick sethitik kuwi.