अपाचे कॉमन्स DBUtils - पहला आवेदन

यह अध्याय DBUtils लाइब्रेरी का उपयोग करके सरल JDBC एप्लिकेशन बनाने का एक उदाहरण प्रदान करता है। यह आपको दिखाएगा कि, डेटाबेस कनेक्शन कैसे खोलें, SQL क्वेरी निष्पादित करें और परिणाम प्रदर्शित करें।

इस टेम्पलेट उदाहरण में वर्णित सभी चरणों को इस ट्यूटोरियल के बाद के अध्यायों में समझाया जाएगा।

JDBC एप्लीकेशन बनाना

JDBC एप्लिकेशन के निर्माण में शामिल छह चरण निम्नलिखित हैं -

  • Import the packages- इसके लिए आवश्यक है कि आप JDBC कक्षाओं वाले पैकेजों को शामिल करें, जो डेटाबेस प्रोग्रामिंग के लिए आवश्यक हैं। सबसे अधिक बार, उपयोग करते हुएimport java.sql.* पर्याप्त होगा।

  • Register the JDBC driver - इसके लिए आवश्यक है कि आप एक ड्राइवर को इनिशियलाइज़ करें, ताकि आप डेटाबेस के साथ एक संचार चैनल खोल सकें।

  • Open a connection - का उपयोग करने की आवश्यकता है DriverManager.getConnection() कनेक्शन ऑब्जेक्ट बनाने की विधि, जो डेटाबेस के साथ एक भौतिक कनेक्शन का प्रतिनिधित्व करती है।

  • Execute a query - डेटाबेस के लिए एसक्यूएल स्टेटमेंट बनाने और सबमिट करने के लिए टाइप स्टेटमेंट के ऑब्जेक्ट का उपयोग करना आवश्यक है।

  • Extract data from result set - आवश्यकता है कि आप उपयुक्त का उपयोग करें ResultSet.getXXX() परिणाम सेट से डेटा को पुनः प्राप्त करने की विधि।

  • Clean up the environment - स्पष्ट रूप से JVM के कचरा संग्रह पर निर्भर होने वाले सभी डेटाबेस संसाधनों को बंद करने की आवश्यकता है।

नमूना कोड

यह नमूना उदाहरण एक टेम्पलेट के रूप में काम कर सकता है, जब आपको भविष्य में अपना जेडीबीसी आवेदन बनाने की आवश्यकता होती है।

यह नमूना कोड पिछले अध्याय में किए गए पर्यावरण और डेटाबेस सेटअप के आधार पर लिखा गया है।

निम्न उदाहरण को MainApp.java में कॉपी और पेस्ट करें, निम्नानुसार संकलित करें और चलाएं -

MainApp.java

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

import org.apache.commons.dbutils.DbUtils;
import org.apache.commons.dbutils.QueryRunner;
import org.apache.commons.dbutils.ResultSetHandler;
import org.apache.commons.dbutils.handlers.BeanHandler;

public class MainApp {
   // JDBC driver name and database URL
   static final String JDBC_DRIVER = "com.mysql.jdbc.Driver";
   static final String DB_URL = "jdbc:mysql://localhost:3306/emp";
   
   // Database credentials
   static final String USER = "root";
   static final String PASS = "admin";
   
   public static void main(String[] args) throws SQLException {
      Connection conn = null;
      QueryRunner queryRunner = new QueryRunner();
      
      //Step 1: Register JDBC driver
      DbUtils.loadDriver(JDBC_DRIVER);

      //Step 2: Open a connection
      System.out.println("Connecting to database...");
      conn = DriverManager.getConnection(DB_URL, USER, PASS);
      
      //Step 3: Create a ResultSet Handler to handle Employee Beans
      ResultSetHandler<Employee> resultHandler = new BeanHandler<Employee>(Employee.class);
      
      try {
         Employee emp = queryRunner.query(conn,
            "SELECT * FROM employees WHERE first=?", resultHandler, "Sumit");
         //Display values
         System.out.print("ID: " + emp.getId());
         System.out.print(", Age: " + emp.getAge());
         System.out.print(", First: " + emp.getFirst());
         System.out.println(", Last: " + emp.getLast());
      } finally {
         DbUtils.close(conn);
      }
   }
}

Employee.java

कार्यक्रम नीचे दिया गया है -

public class Employee {
   private int id;
   private int age;
   private String first;
   private String last;
   public int getId() {
      return id;
   }
   public void setId(int id) {
      this.id = id;
   }
   public int getAge() {
      return age;
   }
   public void setAge(int age) {
      this.age = age;
   }
   public String getFirst() {
      return first;
   }
   public void setFirst(String first) {
      this.first = first;
   }
   public String getLast() {
      return last;
   }
   public void setLast(String last) {
      this.last = last;
   }
}

अब हम उपरोक्त उदाहरण को संकलित करते हैं -

C:\>javac MainApp.java Employee.java
C:\>

जब तुम दौड़ते हो MainApp, यह निम्नलिखित परिणाम उत्पन्न करता है -

C:\>java MainApp
Connecting to database...
ID: 103, Age: 28, First: Sumit, Last: Mittal
C:\>