JDBC står for Java-databaseforbindelse. JDBC er en Java API at forbinde og udføre forespørgslen med databasen. Det er en specifikation fra Sun Microsystems, der giver en standardabstraktion (API eller protokol) til Java-applikationer til at kommunikere med forskellige databaser. Det giver sproget standarder for Java-databaseforbindelse. Det bruges til at skrive programmer, der kræves for at få adgang til databaser. JDBC kan sammen med databasedriveren få adgang til databaser og regneark. Virksomhedsdataene, der er gemt i en relationel database (RDB), kan tilgås ved hjælp af JDBC API'er.
Definition af JDBC (Java Database Connectivity)
JDBC er en API (Application Programming Interface), der bruges i Java-programmering til at interagere med databaser. Det klasser og grænseflader af JDBC give lov til ansøgningen til sende anmodninger lavet af brugere til den angivne database. Den aktuelle version af JDBC er JDBC 4.3, udgivet den 21. september 2017.
Formål med JDBC
Virksomhedsapplikationer, der er oprettet ved hjælp af JAVA EE-teknologien, skal interagere med databaser for at gemme applikationsspecifik information. Så at interagere med en database kræver effektiv databaseforbindelse, som kan opnås ved at bruge ODBC (Åben databaseforbindelse) driver. Denne driver bruges sammen med JDBC til at interagere eller kommunikere med forskellige slags databaser såsom Oracle, MS Access, Mysql og SQL serverdatabase.
Komponenter af JDBC
Der er generelt fire hovedkomponenter i JDBC, hvorigennem det kan interagere med en database. De er som nævnt nedenfor:
reactjs kort
1. JDBC API: Det giver forskellige metoder og grænseflader til nem kommunikation med databasen. Det giver to pakker som følger, som indeholder java SE- og Java EE-platformene for at udvise WORA-funktioner (skrive én gang kørt hvor som helst). Det java.sql pakken indeholder grænseflader og klasser af JDBC API.
java.sql: This package provides APIs for data access and data process in a relational database, included in Java Standard Edition (java SE) javax.sql: This package extends the functionality of java package by providing datasource interface for establishing connection pooling, statement pooling with a data source, included in Java Enterprise Edition (java EE)>
Det giver også en standard til at forbinde en database med en klientapplikation.
2. JDBC driver manager : Den indlæser en databasespecifik driver i et program for at etablere en forbindelse med en database. Det bruges til at foretage et databasespecifikt kald til databasen for at behandle brugeranmodningen.
bfs vs dfs
3. JDBC-testpakke: Det bruges til at teste operationen (såsom indsættelse, sletning, opdatering), der udføres af JDBC-drivere.
4. JDBC-ODBC Bridge-drivere : Den forbinder databasedrivere til databasen. Denne bro oversætter JDBC-metodekaldet til ODBC-funktionskaldet. Den gør brug af sun.jdbc.odbc pakke, som inkluderer et indbygget bibliotek for at få adgang til ODBC-egenskaber.
Arkitektur af JDBC

Beskrivelse:
- Ansøgning: Det er en java-applet eller en servlet, der kommunikerer med en datakilde.
- JDBC API: JDBC API tillader Java-programmer at udføre SQL-sætninger og hente resultater. Nogle af de vigtige grænseflader, der er defineret i JDBC API er som følger: Drivergrænseflade , ResultSet Interface , RowSet Interface , PreparedStatement interface, Forbindelsesgrænseflade og cClass defineret i JDBC API er som følger: DriverManager klasse, Types klasse, Blob klasse, clob klasse.
- DriverManager: Det spiller en vigtig rolle i JDBC-arkitekturen. Den bruger nogle databasespecifikke drivere til effektivt at forbinde virksomhedsapplikationer med databaser.
- JDBC-drivere: For at kommunikere med en datakilde gennem JDBC skal du bruge en JDBC-driver, der intelligent kommunikerer med den respektive datakilde.
Typer af JDBC-arkitektur (2-lags og 3-tier)
JDBC-arkitekturen består af to-lags og tre-lags behandlingsmodeller at få adgang til en database. De er som beskrevet nedenfor:
- To-lags model: En java-applikation kommunikerer direkte til datakilden. JDBC-driveren muliggør kommunikationen mellem applikationen og datakilden. Når en bruger sender en forespørgsel til datakilden, sendes svarene på disse forespørgsler tilbage til brugeren i form af resultater.
Datakilden kan være placeret på en anden maskine på et netværk, som en bruger er tilsluttet. Dette er kendt som en klient/server konfiguration , hvor brugerens maskine fungerer som en klient, og maskinen har datakilden kørende fungerer som serveren.
- Tre-lags model: I denne sendes brugerens forespørgsler til mellemliggende tjenester, hvorfra kommandoerne igen sendes til datakilden. Resultaterne sendes tilbage til det midterste niveau, og derfra til brugeren.
Denne type model er fundet meget nyttig af ledelsesinformationssystemdirektører.
Hvad er API?
Før du hopper ind i JDBC-drivere, så lad os vide mere om API.
task manager linux
API står for Applikationsprogrammeringsgrænseflade . Det er i bund og grund et sæt regler og protokoller, som overfører data mellem forskellige softwareapplikationer og tillader forskellige softwareapplikationer at kommunikere med hinanden. Gennem en API kan en applikation anmode om information eller udføre en funktion fra en anden applikation uden at have direkte adgang til dens underliggende kode eller applikationsdataene.
JDBC API bruger JDBC-drivere til at oprette forbindelse til databasen.
JDBC-drivere
JDBC-drivere er adaptere på klientsiden (installeret på klientmaskinen, ikke på serveren), der konverterer anmodninger fra Java-programmer til en protokol, som DBMS kan forstå. Der er 4 typer JDBC-drivere:
- Type-1-driver eller JDBC-ODBC-brodriver
- Type-2-driver eller Native-API-driver (delvis java-driver)
- Type-3 driver eller Network Protocol driver (fuldt java driver)
- Type-4 driver eller tynd driver (fuldt java driver)
Grænseflader af JDBC API
En liste over populære grænseflader af JDBC API er angivet nedenfor:
- Driver interface
- Forbindelsesgrænseflade
- Statement interface
- PreparedStatement-grænseflade
- CallableStatement-grænseflade
- ResultSet-grænseflade
- ResultSetMetaData-grænseflade
- DatabaseMetaData interface
- RowSet interface
Klasser af JDBC API
En liste over populære klasser af JDBC API er angivet nedenfor:
- DriverManager klasse
- Blob klasse
- Klob klasse
- Typer klasse
Arbejder hos JDBC
Java-applikation, der skal kommunikere med databasen, skal programmeres ved hjælp af JDBC API. JDBC Driver, der understøtter datakilder såsom Oracle og SQL-server, skal tilføjes i java-applikationen til JDBC-understøttelse, som kan udføres dynamisk under kørsel. Denne JDBC-driver kommunikerer intelligent den respektive datakilde.
Oprettelse af en simpel JDBC-applikation:
smukkeste smilJava
//Java program to implement a simple JDBC application package com.vinayak.jdbc; import java.sql.*; public class JDBCDemo { public static void main(String args[]) throws SQLException, ClassNotFoundException { String driverClassName = 'sun.jdbc.odbc.JdbcOdbcDriver'; String url = 'jdbc:odbc:XE'; String username = 'scott'; String password = 'tiger'; String query = 'insert into students values(109, 'bhatt')'; // Load driver class Class.forName(driverClassName); // Obtain a connection Connection con = DriverManager.getConnection( url, username, password); // Obtain a statement Statement st = con.createStatement(); // Execute the query int count = st.executeUpdate(query); System.out.println( 'number of rows affected by this query= ' + count); // Closing the connection as per the // requirement with connection is completed con.close(); } } // class>
Ovenstående eksempel viser de grundlæggende trin for at få adgang til en database ved hjælp af JDBC. Applikationen bruger JDBC-ODBC-brodriveren til at oprette forbindelse til databasen. Du skal importere java.sql pakke for at give grundlæggende SQL-funktionalitet og bruge pakkens klasser.
Hvad er behovet for JDBC?
JDBC er en Java-database API, der bruges til at oprette forbindelse mellem java-applikationer med forskellige databaser. Grundlæggende bruges JDBC til at etablere stabil databaseforbindelse med applikations-API'en. For at udføre og behandle relationelle databaseforespørgsler (SQL eller Oracle-forespørgsler), kan flere applikationer oprette forbindelse til forskellige typer databaser, som understøtter både standard (SE) og enterprise (EE) udgave af java.