Kā izveidot savienojumu ar MySQL datu bāzi, izmantojot Java

Kā izveidot savienojumu ar MySQL datu bāzi, izmantojot Java

Java nodrošina JDBC (Java datu bāzes savienojums) kā daļa no Java SDK (programmatūras izstrādes komplekta). Izmantojot šo UGUNS , ir ļoti viegli izveidot savienojumu ar relāciju datu bāzi un veikt parastās darbības, piemēram, vaicāt, ievietot, atjaunināt un dzēst ierakstus.





Kamēr JDBC galvenā API ir iekļauta java, lai izveidotu savienojumu ar noteiktu datu bāzi, piemēram, MySQL vai SQL Server, ir nepieciešams papildu komponents, kas pazīstams kā datu bāzes draiveris. Šis datu bāzes draiveris ir programmatūras komponents, kas pārtulko JDBC galvenos izsaukumus šai datu bāzei saprotamā formātā.





pārvietot programmas no viena diska uz otru

Šajā rakstā apskatīsim detalizētu informāciju par savienojumu ar MySQL datu bāzi un to, kā ar to veikt dažus vaicājumus.





MySQL datu bāzes draiveris

Kā paskaidrots iepriekš, lai varētu izveidot savienojumu ar MySQL datu bāzi, jums ir nepieciešams MyDQL JDBC draiveris. To sauc par savienotāja/J draiveri, un to var lejupielādēt no MySQL vietne šeit.

Kad esat lejupielādējis ZIP (vai TAR.GZ) failu, izvelciet arhīvu un nokopējiet JAR failu mysql-savienotājs-java-bin.jar uz piemērotu vietu. Šis fails ir nepieciešams, lai palaistu jebkuru kodu, kas izmanto MySQL JDBC draiveri.



Parauga datu bāzes izveide

Pieņemot, ka esat lejupielādējis MySQL datu bāzi un iestatiet to pareizi Ja jums ir piekļuve tai, ļaujiet mums izveidot datu bāzes paraugu, lai mēs varētu to izmantot vaicājumu savienošanai un veikšanai.

Izveidojiet savienojumu ar datu bāzi, izmantojot izvēlēto klientu, un palaidiet šādus paziņojumus, lai izveidotu datu bāzes paraugu.





create database sample;

Mums ir nepieciešams arī lietotājvārds un parole, lai varētu izveidot savienojumu ar datu bāzi (ja vien nevēlaties izveidot savienojumu kā administrators, kas parasti ir slikta ideja).

Tālāk tiek izveidots lietotājs ar nosaukumu testētājs kurš izveidos savienojumu ar MySQL datu bāzi no tās pašas mašīnas, kurā tā darbojas (norādīts ar vietējais saimnieks ), izmantojot paroli securepwd .





create user 'testuser'@'localhost' identified by 'securepwd';

Ja veidojat savienojumu ar datu bāzi, kas darbojas citā mašīnā (ar nosaukumu tālvadības ), jums jāizmanto šādi ( tālvadības var būt saimniekdatora nosaukums vai ip adrese):

create user 'testuser'@'remotemc' identified by 'securepwd';

Tagad, kad lietotājvārds un parole ir izveidota, mums ir jāpiešķir piekļuve iepriekš izveidotajai datu bāzes paraugam.

grant all on sample.* to 'testuser'@'localhost';

Vai arī, ja datu bāze ir attāla:

grant all on sample.* to 'testuser'@'remotemc';

Tagad jums jāpārbauda, ​​vai varat izveidot savienojumu ar datu bāzi kā lietotājs, kuru tikko izveidojāt ar to pašu paroli. Pēc savienojuma izveides varat arī palaist šādas komandas, lai pārliecinātos, ka visas atļaujas ir pareizas.

create table joe(id int primary key auto_increment, name varchar(25));
drop table joe;

Iestatiet Java klases ceļu

Ļaujiet mums tagad sīkāk izpētīt, kā izveidot savienojumu ar MySQL no Java. Pirmais solis ir ielādēt datu bāzes draiveri. Tas tiek darīts, piemērotā vietā piesaucot sekojošo.

kāpēc mans ābolu pulkstenis mirst tik ātri?
Class.forName('com.mysql.jdbc.Driver');

Kods var radīt izņēmumu, lai jūs varētu to noķert, ja plānojat ar to rīkoties (piemēram, formatēt kļūdas ziņojumu GUI).

try {
Class.forName('com.mysql.jdbc.Driver');
} catch(ClassNotFoundException ex) {
// use the exception here
}

Klasē ir ļoti bieži izsaukt šo kodu statiskā blokā, tāpēc programma nekavējoties neizdodas, ja draiveri nevar ielādēt.

public class Sample
{
static {
try {
Class.forName('com.mysql.jdbc.Driver');
} catch(ClassNotFoundException ex) {
System.err.println('Unable to load MySQL Driver');
}
}
}

Protams, lai varētu atrast draiveri, programma ir jāizsauc ar draiveri JAR (lejupielādēts un izvilkts iepriekš), kas iekļauts klases ceļā šādi.

java -cp mysql-savienotājs-java-bin.jar: ...

Savienojuma izveide ar MySQL no Java

Tagad, kad esam saīsinājuši informāciju par MySQL draivera ielādi no java, ļaujiet mums izveidot savienojumu ar datu bāzi. Viens veids, kā izveidot savienojumu ar datu bāzi, ir izmantot DriverManager .

String jdbcUrl = ...;
Connection con = DriverManager.getConnection(jdbcUrl);

Un kas ir jdbcUrl ? Tas norāda informāciju par savienojumu, ieskaitot serveri, kurā atrodas datu bāze, lietotājvārdu un tā tālāk. Šeit ir mūsu piemēra URL paraugs.

String jdbcUrl = 'jdbc:mysql://localhost/sample?user=testuser&password=secrepwd';

Ņemiet vērā, ka esam iekļāvuši visus savienojumam nepieciešamos parametrus, ieskaitot saimniekdatora nosaukumu ( vietējais saimnieks ), lietotājvārdu un paroli. (Šādas paroles iekļaušana NAV laba prakse, alternatīvas skatiet tālāk.)

Izmantojot šo jdbcUrl , šeit ir pilnīga programma savienojuma pārbaudei.

public class Sample
{
static {
try {
Class.forName('com.mysql.jdbc.Driver');
} catch(ClassNotFoundException ex) {
System.err.println('Unable to load MySQL Driver');
}
}
static public void main(String[] args) throws Exception
{
String jdbcUrl = 'jdbc:mysql://localhost/sample?user=testuser&password=securepwd';
Connection con = DriverManager.getConnection(jdbcUrl);
System.out.println('Connected!');
con.close();
}
}

Ņemiet vērā, ka datu bāzes savienojums ir vērtīgs programmas resurss, un tas ir pareizi jāaizver, kā norādīts iepriekš. Iepriekš minētais kods tomēr neslēdz savienojumu izņēmuma gadījumā. Lai pārtrauktu savienojumu parastā vai neparastā izejā, izmantojiet šādu modeli:

try(Connection con = DriverManager.getConnection(jdbcUrl)) {
System.out.println('Connected!');
}

Kā minēts iepriekš, nav laba ideja iegult paroli JDBC URL. Lai tieši norādītu lietotājvārdu un paroli, tā vietā varat izmantot šādu savienojuma iespēju.

kā bloķēt zvanus un īsziņas operētājsistēmā Android
String jdbcUrl = 'jdbc:mysql://localhost/sample';
try(Connection con = DriverManager.getConnection(jdbcUrl, 'testuser', 'securepwd')) {
}

Datu bāzes vaicāšana no Java

Tagad, kad ir izveidots savienojums ar datu bāzi, apskatīsim, kā veikt vaicājumu, piemēram, vaicāt datu bāzes versiju:

select version();

Vaicājums Java tiek izpildīts šādi. A Paziņojums, apgalvojums tiek izveidots objekts un tiek izpildīts vaicājums, izmantojot executeQuery () metode, kas atgriež a Rezultātu kopa .

String queryString = 'select version()';
Statement stmt = con.createStatement();
ResultSet rset = stmt.executeQuery(queryString);

Izdrukājiet versiju no Rezultātu kopa sekojoši. 1 attiecas uz kolonnas rādītāju rezultātos, sākot no 1.

while ( rset.next()) {
System.out.println('Version: ' + rset.getString(1));
}

Pēc rezultātu apstrādes objekti ir jāaizver.

rset.close();
stmt.close();

Un tas aptver visu, kas nepieciešams, lai izveidotu savienojumu ar MySQL no java un veiktu vienkāršu vaicājumu.

Pārbaudiet arī mūsu SQL komandas apkrāpj lapu .

Kopīgot Kopīgot Čivināt E -pasts Vai ir labi instalēt Windows 11 nesaderīgā datorā?

Tagad jūs varat instalēt Windows 11 vecākos datoros, izmantojot oficiālo ISO failu ... bet vai tā ir laba ideja?

Lasīt Tālāk
Saistītās tēmas
  • Programmēšana
  • Java
  • SQL
Par autoru Džejs Šridhars(Publicēti 17 raksti) Vairāk no Jay Sridhar

Abonējiet mūsu biļetenu

Pievienojieties mūsu informatīvajam izdevumam, lai iegūtu tehniskus padomus, pārskatus, bezmaksas e -grāmatas un ekskluzīvus piedāvājumus!

Noklikšķiniet šeit, lai abonētu