logo

Introducció a JDBC (Java Database Connectivity)

JDBC significa Connectivitat de bases de dades Java. JDBC és un API de Java per connectar i executar la consulta amb la base de dades. És una especificació de Sun Microsystems que proporciona una abstracció estàndard (API o protocol) perquè les aplicacions Java es comuniquin amb diverses bases de dades. Proporciona el llenguatge amb estàndards de connectivitat de bases de dades Java. S'utilitza per escriure els programes necessaris per accedir a les bases de dades. JDBC, juntament amb el controlador de base de dades, pot accedir a bases de dades i fulls de càlcul. Es pot accedir a les dades empresarials emmagatzemades en una base de dades relacional (RDB) amb l'ajuda de les API JDBC.

Definició de JDBC (connectivitat de base de dades Java)

JDBC és una API (interfície de programació d'aplicacions) que s'utilitza en programació Java per interactuar amb bases de dades. El classes i interfícies de JDBC permetre la aplicació a enviar peticions fets pels usuaris a la base de dades especificada. La versió actual de JDBC és JDBC 4.3, llançat el 21 de setembre de 2017.

Propòsit de JDBC

Les aplicacions empresarials creades amb la tecnologia JAVA EE necessiten interactuar amb bases de dades per emmagatzemar informació específica de l'aplicació. Per tant, interactuar amb una base de dades requereix una connectivitat eficient de la base de dades, que es pot aconseguir mitjançant l'ús de ODBC Controlador (connectivitat de base de dades oberta). Aquest controlador s'utilitza amb JDBC per interactuar o comunicar-se amb diversos tipus de bases de dades com ara Oracle, MS Access, Mysql i bases de dades del servidor SQL.



Components de JDBC

En general, hi ha quatre components principals de JDBC mitjançant els quals pot interactuar amb una base de dades. Són els que s'esmenten a continuació:

1. API JDBC: Proporciona diversos mètodes i interfícies per facilitar la comunicació amb la base de dades. Proporciona dos paquets de la següent manera, que contenen les plataformes java SE i Java EE per mostrar les capacitats WORA (escriptura una vegada executada en qualsevol lloc). El java.sql El paquet conté interfícies i classes de l'API JDBC.

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)>

També proporciona un estàndard per connectar una base de dades a una aplicació client.

2. Gestor de controladors JDBC : Carrega un controlador específic de la base de dades en una aplicació per establir una connexió amb una base de dades. S'utilitza per fer una trucada específica de la base de dades a la base de dades per processar la sol·licitud de l'usuari.

ipconfig per a ubuntu

3. Suite de proves JDBC: S'utilitza per provar l'operació (com ara la inserció, la supressió, l'actualització) que estan realitzant els controladors JDBC.

4. Controladors de pont JDBC-ODBC : connecta els controladors de la base de dades a la base de dades. Aquest pont tradueix la crida al mètode JDBC a la crida a la funció ODBC. Fa ús de la sun.jdbc.odbc paquet que inclou una biblioteca nativa per accedir a les característiques ODBC.

Arquitectura de JDBC

Arquitectura de JDBC

Descripció:

  1. Aplicació: És un applet java o un servlet que es comunica amb una font de dades.
  2. L'API JDBC: L'API JDBC permet que els programes Java executin sentències SQL i recuperin resultats. Algunes de les interfícies importants definides a l'API JDBC són les següents: interfície de controlador , interfície ResultSet , interfície RowSet , interfície PreparedStatement, interfície de connexió i cClasses definides a l'API JDBC són les següents: classe DriverManager, classe Types, classe Blob, classe clob.
  3. DriverManager: Té un paper important en l'arquitectura JDBC. Utilitza alguns controladors específics de la base de dades per connectar eficaçment les aplicacions empresarials a les bases de dades.
  4. Controladors JDBC: Per comunicar-vos amb una font de dades mitjançant JDBC, necessiteu un controlador JDBC que es comuniqui de manera intel·ligent amb la font de dades corresponent.

Tipus d'arquitectura JDBC (2 i 3 nivells)

L'arquitectura JDBC consta de models de processament de dos i tres nivells per accedir a una base de dades. Són els que es descriuen a continuació:

  1. Model de dos nivells: Una aplicació java es comunica directament amb la font de dades. El controlador JDBC permet la comunicació entre l'aplicació i la font de dades. Quan un usuari envia una consulta a la font de dades, les respostes d'aquestes consultes es tornen a enviar a l'usuari en forma de resultats.
    La font de dades es pot localitzar en una màquina diferent d'una xarxa a la qual està connectat un usuari. Això es coneix com a configuració client/servidor , on la màquina de l'usuari actua com a client i la màquina té la font de dades en execució actua com a servidor.
  2. Model de tres nivells: En això, les consultes de l'usuari s'envien als serveis de nivell mitjà, des dels quals les ordres s'envien de nou a la font de dades. Els resultats s'envien de nou al nivell mitjà i, d'aquí, a l'usuari.
    Aquest tipus de model és molt útil pels directors de sistemes d'informació de gestió.

Què és l'API?

Abans de saltar als controladors JDBC, feu-nos saber més sobre l'API.

API significa Interfície de programació d'aplicacions . Es tracta bàsicament d'un conjunt de regles i protocols que transfereixen dades entre diferents aplicacions de programari i permeten que diferents aplicacions de programari es comuniquin entre elles. Mitjançant una API, una aplicació pot sol·licitar informació o realitzar una funció des d'una altra aplicació sense tenir accés directe al seu codi subjacent o a les dades de l'aplicació.

L'API JDBC utilitza els controladors JDBC per connectar-se amb la base de dades.

Controladors JDBC

Controladors JDBC són adaptadors del costat del client (instal·lats a la màquina client, no al servidor) que converteixen les sol·licituds dels programes Java a un protocol que el SGBD pugui entendre. Hi ha 4 tipus de controladors JDBC:

prova manual
  1. Controlador de tipus 1 o controlador de pont JDBC-ODBC
  2. Controlador de tipus 2 o controlador d'API nativa (parcialment controlador de Java)
  3. Controlador de tipus 3 o controlador de protocol de xarxa (controlador completament java)
  4. Controlador tipus 4 o controlador Thin (controlador completament java)

Interfícies de l'API JDBC

Una llista de populars interfícies de l'API JDBC es mostra a continuació:

  • Interfície del controlador
  • Interfície de connexió
  • Interfície de declaració
  • Interfície PreparedStatement
  • Interfície CallableStatement
  • Interfície ResultSet
  • Interfície ResultSetMetaData
  • Base de dades interfície MetaData
  • Interfície RowSet

Classes d'API JDBC

Una llista de populars classes de l'API JDBC es mostra a continuació:

  • Classe DriverManager
  • Classe blob
  • Classe de clob
  • Classe de tipus

Funcionament de JDBC

L'aplicació Java que necessita comunicar-se amb la base de dades s'ha de programar mitjançant l'API JDBC. El controlador JDBC que admet fonts de dades com ara Oracle i el servidor SQL s'ha d'afegir a l'aplicació java per al suport JDBC, que es pot fer de manera dinàmica en temps d'execució. Aquest controlador JDBC comunica de manera intel·ligent la font de dades corresponent.

Creació d'una aplicació JDBC senzilla:

Java
//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>

L'exemple anterior mostra els passos bàsics per accedir a una base de dades mitjançant JDBC. L'aplicació utilitza el controlador de pont JDBC-ODBC per connectar-se a la base de dades. Has d'importar java.sql paquet per proporcionar funcionalitat SQL bàsica i utilitzar les classes del paquet.

Quina és la necessitat de JDBC?

JDBC és una API de base de dades Java que s'utilitza per establir connexió entre aplicacions java amb diverses bases de dades. Bàsicament, JDBC s'utilitza per establir una connexió estable a la base de dades amb l'API de l'aplicació. Per executar i processar consultes de bases de dades relacionals (consultes SQL o Oracle), diverses aplicacions es poden connectar a diferents tipus de bases de dades que admetin l'edició estàndard (SE) i l'empresa (EE) de Java.