Hvordan tilsluttes database i Java?

Mens du skriver en IT-applikation ved hjælp af ethvert programmeringssprog, tjener strømmen af ​​data fra og til applikationen kernefunktionaliteten. Hvis dataflowet på en eller anden måde påvirkes, kan det have en negativ indflydelse på applikationsfunktionaliteten og kan forårsage et stort tab for virksomheden.

Der findes forskellige metoder i dag til at forbinde dit program til en database for at give brugerne de oplysninger, de anmoder om, indsamle oplysninger fra brugere, slette de oplysninger, som brugeren kræver, og også for at opdatere data til databasen dagligt.

Vi vil undersøge en sådan tilgang ved at bruge Java som vores programmeringssprog, JDBC som databaseforbindelsesmetode og følge den objektorienterede tilgang.

Hvad er JDBC?

JDBC står for Java Database Connectivity og det hjælper et Java-program til at udføre forskellige slags operationer over databasen, f.eks. Oprette, læse, opdatere og slette. JDBC er også et Java API.

Ved at bruge JDBC skal en programmerer være i stand til:

  • Opret en forbindelse med databasen
  • Kør SQL-kommandoer ved at sende det til databasen
  • Fortolker de resultater, der kommer fra databasen

Oprettelse af en database til at forbinde database i Java

Før du arbejder med JDBC, er det påkrævet at have en database for at oprette forbindelse til den. Vi bruger Oracle-databasen for vores illustrations skyld. Download venligst oracle 11g ekspressudgave fra nedenstående link.

https://www.oracle.com/technetwork/products/express-edition/overview/index-100989.html

Jeg har allerede Oracle 10g installatør klar med mig, som du kan se nedenfor:

Kilde : Fra mit skrivebord

  • Dobbeltklik på installationsprogrammet, nedenunder skærmen vises. Klik på næste.

Kilde : Fra mit skrivebord

  • Accepter licensaftalen og klik på næste.

Kilde : Fra mit skrivebord

  • Gem standardindstillingerne som de, og klik på næste.

Kilde : Fra mit skrivebord

  • Det vil bede om et kodeord, der kræves, når du logger ind i Oracle 11g-forekomsten. Angiv adgangskoden, og klik på næste.

Kilde : Fra mit skrivebord

  • Når du har angivet en adgangskode, begynder installationsprocessen. Når installationen er færdig, skal der oprettes et genvejsikon på din skrivebordsskærm. Hvis du ikke kan finde det, skal du gå til windows start og søge efter Oracle, skal du hente det. Klik på det, så åbner det en tynd klient for dig via en browser. Log ind på forekomsten. Bemærk, at brugernavnet vil være det samme for Oracle DB dvs. system. Adgangskoden er den, du har leveret, mens du konfigurerede databasen.

Kilde: Fra mit skrivebord

  • Når du først logger ind, ser den allerførste skærm ud, som du ser nedenfor:

Kilde: Fra mit skrivebord

  • Lad os nu oprette en tabel. Klik på SQL-modulet fra ovenstående skærm og kør nedenstående forespørgsel.

Kilde: Fra mit skrivebord

  • Som du kan se, har vi med succes oprettet en tabel med navnet Educba.

Forbind databasen i Java

Der er få grænseflader og klasser, der bruges til at oprette forbindelse til en database og udføre operationer ved hjælp af JDBC API.

Vi vil forklare en efter en, men lad mig først præsentere dig det følgende program:



Kilde: Fra mit skrivebord

Nedenfor er de grænseflader, som vi vil bruge til at oprette forbindelse til databasen og udføre operationer over den:

  1. Driver Manager
  2. Forbindelse
  3. Udmelding
  4. Resultatsæt
  5. Udarbejdet erklæring

Lad os se på de operationer, vi kan udføre som en del af JDBC-operationen.

  1. Gem data fra en enhed i en database, dvs. oprettelsesoperationen
  2. Hent dataene til enheden eller en bønne fra en database
  3. Opdater dataene for enheden eller bønnerne i databasen
  4. Slet eller fjern dataene om enheden eller en bønne fra databasen.

Ligegyldigt hvilken operation vi udfører, er der nogle grundlæggende trin, der vil forblive de samme:

1. Læg driveren.

Class. forName ("oracle.jdbc.driver.OracleDriver");

2. Opret en URL-streng

String url="jdbc:oracle:thin:@172:.26.132.40:1521:orclilp";

3. Brug driveradministratoren til at oprette en forbindelse

con=DriverManager.getConnection(URL, USERNAME, PASSWORD);

4. Brug forbindelsesreference til at oprette erklæring

stmt = conn.createStatement();

5. Brug en erklæring til at udføre forespørgslen

6. Behandl resultatsættet (valgfrit, afhænger)

7. Slip ressourcerne i endelig blok.

Illustration

Da vi bruger Oracle-database i vores illustration, skal vi have den krævede driver, der skal leveres af Oracle. Driverklassen er normalt i form af jarfil med navnet ojdbc14.jar. Denne driver skal importeres til dit java-program som en del af "Referenced Libraries", hvis det ikke er der.

Hvis du har installeret Oracle 11g i din C-mappe, kan det ideelt findes på nedenstående sti: (Hvis det ikke er der, kan det let downloades herfra)

C: \ oraclexe \ app \ orakel \ produkt \ 10.2.0 \ server \ JDBC \ lib

Kilde: Fra mit skrivebord

En masse jar-filer skal være tilgængelige, men ojdbc14.jar er den nyeste. Det samme kan bruges til vores formål. Denne beholder skal føjes til projektets klassespor. Tjek venligst nedenstående billede.

Kilde: Fra mit skrivebord

Lad os oprette en kunstnertabel med følgende attributter: (Du kan direkte køre SQL-kommandolinjen, der kommer som et separat modul i Oracle Express-udgaven. Men først skal du oprette forbindelse, og du kan udføre kommandoen "connect" for at oprette forbindelse til databasen.

Kilde: Fra mit skrivebord

Som en del af denne illustration ville vi oprette tre java-klasser, dvs. Artist.java, CreateTable.java og ArtistManagementDao.java for at opnå dette.

Også i java-laget er vi nødt til at oprette en klasse kaldet Artist bean. Denne klasse skal have attributter fra kunstneren med ovenstående kontekst. Det ser ud som nedenfor:

Artist.java

Lad os oprette 2 andre java-klasser med navnet ArtistManagementDao og CreateTable.java

ArtistManagementDao.java

package com;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
public class ArtistManagementDao (
private final static String DRIVERNAME="oracle.jdbc.driver.OracleDriver";
private final static String URL="jdbc:oracle:thin:@LENOVO-PC:1521:XE";
private final static String USERNAME="System";
private final static String PASSWORD="Your DB password";
private Connection con =null;
public void addArtist(Artist a)
(
try (
Class.forName(DRIVERNAME);
String sql="insert into Artist1 values (?, ?)";
con=DriverManager.getConnection(URL, USERNAME, PASSWORD);
PreparedStatement pst=con.prepareStatement(sql);
pst.setString(1, a.getArtistID());
pst.setString(2, a.getArtistName());
pst.executeUpdate();
) catch (ClassNotFoundException e) (
// TODO Auto-generated catch block
System.out.println(e);
) catch (SQLException e) (
System.out.println(e);
)
)
)

CreateTable.java

package com;
import java.sql.*;
public class CreateTable(
static final String DB_URL = "jdbc:oracle:thin:@LENOVO-PC:1521:XE";
static final String USER = "System";
static final String PASS = "Your DB Password";
public static void main(String() args) (
Connection conn = null;
Statement stmt = null;
try(
ArtistManagementDao am=new ArtistManagementDao();
Artist a=new Artist();
Class.forName("oracle.jdbc.driver.OracleDriver");
System.out.println("Connecting to a selected database…");
conn = DriverManager.getConnection(DB_URL, USER, PASS);
System.out.println("Connected to database successfully");
System.out.println("Creating table");
stmt = conn.createStatement();
//ARTIST TABLE
String sql = "CREATE TABLE Artist3 " +
"(ArtistID varchar2(5) primary key not NULL, " +
" ArtistName varchar2(25))";
stmt.executeUpdate(sql);
System.out.println("Created table in given database…");
a.setArtistId("abc");
a.setArtistName("ankit");
am.addArtist(a);
System.out.println("\nArtistID="+a.getArtistID()+"\nArtistName="+a.getArtistName());
)catch(SQLException se)(
se.printStackTrace();
)catch(Exception e)(
e.printStackTrace();
)finally(
try(
if(stmt!=null)
conn.close();
)catch(SQLException se)(
)
try(
if(conn!=null)
conn.close();
)catch(SQLException se)(
se.printStackTrace();
)
)
)
)

CreateTable.java Forklaring:

1. Vi har først oprettet DB URL, som skal have dit computernavn, såvel som DB-portnummer (ideelt 1521), efterfulgt af JDBC: oracle: thin: @. Derefter har vi oprettet brugernavn og adgangskode for at videregive disse attributter i løbet af databaseforbindelsen. Det anbefales stærkt at kryptere disse værdier i produktionsmiljøet.

2. I klassen CreateTable.java har vi oprettet et objekt “am” og “a” af henholdsvis ArtistManagementDao.java og Artist.java.

3. Derefter forsøgte vi at etablere vores forbindelse ved at følge de trin, vi har lært tidligere ved hjælp af en conn-sætning.

4. Så har vi oprettet en tabel med navnet Artist3 og opdateret databasen eller skubbet denne til databasen ved hjælp af udførelsen af ​​sætningen.

5. Hvis vi nu gerne vil tildele værdier til attributterne, bruger vi det objekt, vi har oprettet til kunstnerklasse og noterer, det er ikke denne klasse, der indsætter værdien til databasen, snarere vil det være ArtistmanagementDao klasse. Vi har allerede gemt værdier i attributter lige nu, og vi vil i dagklassen se, hvordan man skubber dette til databasen.

6. Endelig har vi brugt “am” -objekt fra ArtistManagementDao til at videregive dette objekt “a” til metoden addArtist () fra ArtistManagementDao java class.

7. Vi har også brugt til at prøve at fange blok for at fange eventuelle undtagelser og smide det samme.

ArtistManagementDao Forklaring:

1. Dao-klassen hjælper os med at isolere applikations- / forretningslaget fra persistenslaget. Dette er normalt den relationelle database.

2. Vi har først oprettet DB URL, som skal have dit computernavn, såvel som DB-portnummer (ideelt 1521), efterfulgt af JDBC: oracle: thin: @. Derefter har vi oprettet brugernavn og adgangskode for at videregive disse attributter i løbet af databaseforbindelsen. Det anbefales stærkt at kryptere disse værdier i produktionsmiljøet.

3. Inde i metoden AddArtist forsøgte vi at etablere vores forbindelse ved at følge de trin, vi har lært tidligere ved hjælp af en conn-sætning.

4. Nu har vi brugt indsætningsmetoden til at skubbe værdier fra attributter til databasen.

5. I den næste erklæring, for at teste, har vi get-sætningen til at hente værdier fra databasen.

6. Vi har også brugt til at prøve at fange blok for at fange eventuelle undtagelser og smide det samme.

Anbefalede artikler

Dette har været en guide til, hvordan du forbinder database i java. Her har vi drøftet Sådan forbindes database i java sammen med grænseflader og klasser, der bruges til at forbinde en database. Du kan også se på de følgende artikler for at lære mere -

  1. Hvad er SQL Server?
  2. Er Big Data en database?
  3. Sådan fungerer JavaScript
  4. Multithreading Interview spørgsmål i Java

Kategori: