ซึ่งเป็นหนึ่งในภาษาโปรแกรมที่โดดเด่นที่สุดให้การสนับสนุนฐานข้อมูลอย่างกว้างขวาง ช่วยให้เราสามารถเชื่อมต่อกับฐานข้อมูลต่างๆผ่าน (การเชื่อมต่อฐานข้อมูล Java) ในบทความนี้ฉันจะบอกวิธีเชื่อมต่อกับฐานข้อมูลและดำเนินการสืบค้นโดยใช้ JDBC
หัวข้อด้านล่างนี้กล่าวถึงในบทความนี้:
- รู้เบื้องต้นเกี่ยวกับ JDBC
- คอมโพเนนต์ JDBC ทั่วไป
- ขั้นตอนในการสร้าง JDBC Application
- การเชื่อมต่อ JDBC
รู้เบื้องต้นเกี่ยวกับ JDBC
JDBC เป็นหนึ่งใน Java API มาตรฐานสำหรับการเชื่อมต่อที่ไม่ขึ้นกับฐานข้อมูลระหว่างไฟล์ และฐานข้อมูลที่หลากหลายAPI นี้ช่วยให้คุณเข้ารหัสข้อความร้องขอการเข้าถึงในรูปแบบ ภาษาแบบสอบถามที่มีโครงสร้าง (SQL). นี้ส่วนใหญ่เกี่ยวข้องกับการเปิดการเชื่อมต่อการสร้างฐานข้อมูล SQL ดำเนินการสืบค้น SQL จากนั้นมาถึงเอาต์พุต
JDBC API สามารถใช้เพื่อเข้าถึงข้อมูลแบบตารางที่จัดเก็บในฐานข้อมูลเชิงสัมพันธ์ใด ๆ ด้วยวิธีนี้คุณสามารถอัปเดตบันทึกดึงข้อมูลและลบข้อมูลจากฐานข้อมูล คล้ายกับ Open Database Connectivity (ODBC) ที่จัดทำโดย Microsoft
เพื่อความเข้าใจที่ดีขึ้นเกี่ยวกับการทำงานของ JDBC มาเจาะลึกในหัวข้อนี้และทำความเข้าใจสถาปัตยกรรมที่อยู่เบื้องหลังการเชื่อมต่อฐานข้อมูล Java
คอมโพเนนต์ JDBC ทั่วไป
JDBC API จัดเตรียมอินเทอร์เฟซและคลาส & ลบดังต่อไปนี้
DriverManager: ส่วนใหญ่จะใช้ในการจัดการรายการไดรเวอร์ฐานข้อมูล โปรแกรมควบคุมที่รู้จักโปรโตคอลย่อยบางอย่างจะถูกใช้เพื่อสร้างการเชื่อมต่อฐานข้อมูล
คนขับ เป็นอินเทอร์เฟซที่จัดการการสื่อสารกับเซิร์ฟเวอร์ฐานข้อมูล นอกจากนี้ยังสรุปรายละเอียดที่เกี่ยวข้องขณะทำงานกับวัตถุไดรเวอร์
การเชื่อมต่อ เป็นอินเทอร์เฟซที่ประกอบด้วยวิธีการทั้งหมดที่จำเป็นในการเชื่อมต่อกับฐานข้อมูล วัตถุเชื่อมต่อเกี่ยวข้องกับฟังก์ชันการสื่อสารของฐานข้อมูล บริบท.
tostring ทำงานอย่างไรใน java
ตอนนี้เรามาดูหัวข้อถัดไปและดูขั้นตอนที่จำเป็นในการสร้างแอปพลิเคชัน JDBC
ขั้นตอนในการสร้าง JDBC Application
ในการสร้างแอปพลิเคชัน JDBC คุณต้องทำตามขั้นตอนเล็กน้อย มาดูกันว่ามีอะไรบ้าง
นำเข้าแพ็คเกจ: คุณต้องรวมแพ็คเกจทั้งหมดที่มีคลาส JDBC ที่จำเป็นสำหรับ การเขียนโปรแกรมฐานข้อมูล . บ่อยที่สุดโดยใช้ นำเข้า java.sql. * จะพอเพียง
ลงทะเบียนไดรเวอร์ JDBC: ที่นี่คุณต้องเริ่มต้นไดรเวอร์เพื่อให้คุณสามารถเปิดช่องทางการสื่อสารกับฐานข้อมูลได้
เปิดการเชื่อมต่อ: ที่นี่คุณสามารถใช้ไฟล์ getConnection () วิธีการสร้างวัตถุการเชื่อมต่อซึ่งแสดงถึงการเชื่อมต่อทางกายภาพกับฐานข้อมูล
ดำเนินการค้นหา: สิ่งนี้จำเป็นต้องใช้วัตถุประเภท Statement เพื่อสร้างและส่งคำสั่ง SQL ไปยังฐานข้อมูล
ดึงข้อมูลจากชุดผลลัพธ์: ขอแนะนำให้คุณใช้ที่เหมาะสม getXXX () วิธีการดึงข้อมูลจากชุดผลลัพธ์
ทำความสะอาดสิ่งแวดล้อม: ที่นี่จำเป็นอย่างยิ่งที่จะต้องปิดทรัพยากรฐานข้อมูลทั้งหมดอย่างชัดเจนเมื่อเทียบกับการรวบรวมขยะของ JVM
เมื่อคุณได้เห็นขั้นตอนต่างๆที่เกี่ยวข้องในการสร้างแอปพลิเคชัน JDBC แล้วเรามาดูโค้ดตัวอย่างในการสร้างฐานข้อมูลและสร้างการเชื่อมต่อ
package Edureka import java.sql. * import java.sql.DriverManager คลาสสาธารณะตัวอย่าง {// ชื่อไดรเวอร์ JDBC และ URL ฐานข้อมูลสแตติกสุดท้ายสตริง JDBC_DRIVER = 'com.mysql.jdbc.Driver' สตริงสุดท้ายคง DB_URL = 'jdbc: mysql: // localhost / emp '// ข้อมูลประจำตัวฐานข้อมูล static final String USER =' root 'static final String PASS =' 'public static void main (String [] args) {Connection conn = null Statement stmt = null try {// STEP 2 : ลงทะเบียนไดรเวอร์ JDBC Class.forName ('com.mysql.cj.jdbc.Driver') // ขั้นตอนที่ 3: เปิดการเชื่อมต่อ System.out.println ('กำลังเชื่อมต่อกับฐานข้อมูล ... ') conn = DriverManager.getConnection (DB_URL , 'root', '') // ขั้นตอนที่ 4: ดำเนินการสืบค้น System.out.println ('กำลังสร้างคำสั่ง ... ') stmt = conn.createStatement () String sql sql = 'SELECT id, first, last, age จาก ResultSet ของพนักงาน rs = stmt.executeQuery (sql) // ขั้นตอนที่ 5: ดึงข้อมูลจากชุดผลลัพธ์ในขณะที่ (rs.next ()) {// ดึงข้อมูลตามชื่อคอลัมน์ int id = rs.getInt ('id') int age = rs.getInt ('age') String first = rs.getString ('first') สตริง last = rs.getString ('last') // แสดงค่า System.out.print ('ID:' + id) System.out.print (', Age:' + age) System.out.print (', First : '+ first) System.out.println (', Last: '+ last)} // ขั้นตอนที่ 6: สภาพแวดล้อมการล้าง rs.close () stmt.close () conn.close ()} จับ (SQLException se) {// จัดการข้อผิดพลาดสำหรับ JDBC se.printStackTrace ()} catch (Exception e) {// จัดการข้อผิดพลาดสำหรับ Class.forName e.printStackTrace ()} ในที่สุด {// บล็อกที่ใช้เพื่อปิดทรัพยากรในที่สุดลอง {if (stmt! = null) stmt.close ()} catch (SQLException se2) {} // ไม่สามารถทำได้ลอง {if (conn! = null) conn.close ()} catch (SQLException se) {se.printStackTrace ()} // สุดท้ายลอง} // end try System.out.println ('Goodbye!')} // end main} // end ตัวอย่าง
โค้ดด้านบนสร้างตารางในฐานข้อมูล localhost ของคุณ ในการแทรกค่าในฐานข้อมูลที่สร้างขึ้นคุณสามารถอ้างถึงรหัสด้านล่าง ฉันจะเขียนโค้ดเฉพาะสำหรับขั้นตอนที่ 4 ส่วนที่เหลือของโค้ดยังคงเหมือนเดิม
// ขั้นตอนที่ 4: ดำเนินการสืบค้น System.out.println ('การสร้างตารางในฐานข้อมูลที่กำหนด ... ') stmt = conn.createStatement () String sql = 'CREATE TABLE EMPLOYEES' + '(id INTEGER ไม่ใช่ NULL,' + 'VARCHAR แรก (255),' + 'VARCHAR สุดท้าย (255),' + 'อายุ INTEGER,' + 'PRIMARY KEY (id))' stmt.executeUpdate (sql) System.out.println ('สร้างตารางในฐานข้อมูลที่กำหนด ... ') System.out.println (' การแทรกระเบียนลงในตาราง ... ') stmt = conn.createStatement () String sql =' INSERT INTO Employee VALUES (100, 'Kriss', 'Kurian', 18) 'stmt.executeUpdate (sql) sql =' INSERT INTO Employee VALUES (101, 'Enrique', 'John', 25) 'stmt.executeUpdate (sql) sql =' INSERT INTO พนักงาน (102, 'Taylor', 'Swift' , 30) 'stmt.executeUpdate (sql) sql =' INSERT INTO Employee VALUES (103, 'Linkin', 'Park', 28) 'stmt.executeUpdate (sql) System.out.println (' แทรกระเบียนลงในตาราง .. ')
นี่คือวิธีที่คุณสามารถสร้างการเชื่อมต่อกับฐานข้อมูลและแทรกค่าในตาราง ตอนนี้เรามาทำความเข้าใจกับไดรเวอร์ JDBC ประเภทต่างๆกันดีกว่า
ประเภทไดรเวอร์ JDBC
ไดรเวอร์ JDBC ใช้เพื่อใช้อินเทอร์เฟซที่กำหนดไว้ใน JDBC API สำหรับการโต้ตอบกับเซิร์ฟเวอร์ฐานข้อมูลโดยพื้นฐานแล้วก ไดรเวอร์ JDBC ทำสามสิ่งและมีดังนี้:
1. สร้างการเชื่อมต่อกับแหล่งข้อมูล
2. จะส่งแบบสอบถามและปรับปรุงคำสั่งไปยังแหล่งข้อมูล
3. สุดท้ายก็ประมวลผล
ตัวอย่างเช่นไดรเวอร์ JDBC ช่วยให้คุณเปิดการเชื่อมต่อฐานข้อมูลเพื่อโต้ตอบด้วยการส่ง . หากคุณต้องการทราบข้อมูลเพิ่มเติมเกี่ยวกับประเภทของไดรเวอร์ JDBC คุณสามารถอ้างอิงบทความนี้ได้ที่ .
ตอนนี้เรามาทำความเข้าใจกับ JDBC Connections กันดีกว่า
การเชื่อมต่อ JDBC
นำเข้าแพ็คเกจ JDBC: เพิ่ม นำเข้า งบถึงคุณ เพื่ออิมพอร์ตคลาสที่ต้องการในโค้ด Java ของคุณ
ลงทะเบียนไดรเวอร์ JDBC: ใน t ก้าวของเขา เพื่อโหลดการใช้งานไดรเวอร์ที่ต้องการลงในหน่วยความจำเพื่อให้สามารถตอบสนองคำขอ JDBC ได้ มี 2 วิธีในการลงทะเบียนไดรเวอร์
แนวทางที่เหมาะสมที่สุดในการลงทะเบียนไดรเวอร์คือการใช้ Java’s forName () วิธีการโหลดไฟล์คลาสของไดรเวอร์ลงในหน่วยความจำแบบไดนามิก ซึ่งจะลงทะเบียนโดยอัตโนมัติ วิธีนี้เหมาะเพราะช่วยให้คุณสามารถกำหนดค่าการลงทะเบียนไดรเวอร์และพกพาได้ ดูรหัสด้านล่าง:
ลองใช้ {Class.forName ('oracle.jdbc.driver.OracleDriver')} catch (ClassNotFoundException ex) System.out.println ('Error: cannot load driver class!') System.exit (1)}
แนวทางที่สองที่คุณสามารถใช้ในการลงทะเบียนไดรเวอร์คือการใช้แบบคงที่ registerDriver () วิธี.
ลองใช้ {Driver myDriver = new oracle.jdbc.driver.OracleDriver () DriverManager.registerDriver (myDriver)} จับ (ClassNotFoundException ex) {System.out.println ('ข้อผิดพลาด: ไม่สามารถโหลดคลาสไดรเวอร์!') System.exit (1 )}
คุณควรใช้ไฟล์ registerDriver () วิธีการหากคุณใช้ JVM ที่ไม่สอดคล้องกับ JDK เช่นที่ Microsoft จัดเตรียมไว้ให้ แต่ละแบบฟอร์มต้องใช้ฐานข้อมูล URL .
การกำหนด URL ฐานข้อมูล: การจัดรูปแบบ URL เป็นสิ่งจำเป็นในการสร้างที่อยู่ที่มีรูปแบบถูกต้องซึ่งชี้ไปยังฐานข้อมูลที่คุณต้องการเชื่อมต่อ เมื่อคุณโหลดไดรเวอร์แล้วคุณสามารถสร้างการเชื่อมต่อโดยใช้ไฟล์ DriverManager.getConnection () วิธี. DriverManager.getConnection () วิธีการคือ & ลบ
java system.exit (1)
getConnection (สตริง url)
getConnection (String url, Properties prop)
getConnection (สตริง url, ผู้ใช้สตริง, รหัสผ่านสตริง)
- สร้างวัตถุการเชื่อมต่อ
คุณสามารถสร้างการเชื่อมต่อโดยใช้ URL ฐานข้อมูลชื่อผู้ใช้และรหัสผ่านและใช้ออบเจ็กต์คุณสมบัติ
- ปิด
สุดท้ายเพื่อสิ้นสุดเซสชันฐานข้อมูลคุณต้องปิดการเชื่อมต่อฐานข้อมูลทั้งหมด อย่างไรก็ตามหากคุณลืมตัวเก็บขยะของ Java จะปิดการเชื่อมต่อเมื่อทำความสะอาดวัตถุเก่า
conn.close () // ใช้เพื่อปิดการเชื่อมต่อ
นั่นคือทั้งหมดที่เกี่ยวกับ Java Database Connectivity หากคุณต้องการทราบข้อมูลเพิ่มเติมเกี่ยวกับ JDBC คุณสามารถอ้างอิงบทความนี้ได้ที่ . เรามาถึงตอนท้ายของบทความเกี่ยวกับ 'วิธีเชื่อมต่อกับฐานข้อมูล' ฉันหวังว่าฉันจะช่วยให้ความรู้ของคุณเกี่ยวกับ JDBC
ตรวจสอบไฟล์ โดย Edureka บริษัท การเรียนรู้ออนไลน์ที่เชื่อถือได้ซึ่งมีเครือข่ายผู้เรียนที่พึงพอใจมากกว่า 250,000 คนกระจายอยู่ทั่วโลก เราพร้อมที่จะช่วยเหลือคุณในทุกขั้นตอนในการเดินทางของคุณสำหรับการเป็นนอกเหนือจากคำถามสัมภาษณ์ java นี้เรามาพร้อมกับหลักสูตรที่ออกแบบมาสำหรับนักเรียนและมืออาชีพที่ต้องการเป็น Java Developer
มีคำถามสำหรับเรา? โปรดระบุไว้ในส่วนความคิดเห็นของบทความ 'วิธีเชื่อมต่อกับฐานข้อมูล' และเราจะติดต่อกลับโดยเร็วที่สุด