, בהיותה אחת משפות התכנות הבולטות ביותר, מספק תמיכה נרחבת למאגרי מידע. זה עוזר לנו להתחבר למסדי נתונים שונים באמצעות (קישוריות מסד נתונים של Java). במאמר זה, אני אגיד לך כיצד להתחבר למסד נתונים ולבצע שאילתות באמצעות JDBC.
הנושאים הבאים מכוסים במאמר זה:
מבוא ל- JDBC
JDBC הוא אחד מ- API API הסטנדרטי של קישוריות עצמאית למסד נתונים בין ה- ומגוון רחב של מאגרי מידע.ממשק API זה מאפשר לך לקודד את הצהרות בקשת הגישה ב- שפת שאילתות מובנית (SQL). זֶהכולל בעיקר פתיחת חיבור, יצירת מסד נתונים של SQL, ביצוע שאילתות SQL ואז הגעה לפלט.
ניתן להשתמש ב- JDBC API כדי לגשת לנתונים טבלאיים המאוחסנים בכל בסיס נתונים התייחסותי. בעזרת זה תוכלו לעדכן, לשמור, לאחזר ולמחוק את הנתונים ממאגרי המידע. זה דומה לקישוריות מסדי נתונים פתוחים (ODBC) שמספקת מיקרוסופט.
להבנה טובה יותר של העבודה של JDBC, בואו ונצלול עמוק יותר לנושא ולהבין את הארכיטקטורה שעומדת מאחורי קישוריות מסדי הנתונים של Java.
רכיבי JDBC נפוצים
ממשק ה- API של JDBC מספק את הממשקים והמחלקות והמינוס הבאים
DriverManager: זה משמש בעיקר לניהול רשימת מנהלי התקנים של מסדי נתונים. מנהל ההתקן שמזהה פרוטוקול משנה מסוים ישמש להקמת חיבור מסד נתונים.
הנהג הוא ממשק המטפל בתקשורת עם שרת מסד הנתונים. זה גם ממצה את הפרטיםהמשויכים תוך כדי עבודה עם אובייקטים של מנהל התקן.
קשר הוא ממשק שמורכב מכל השיטות הנדרשות להתחברות למסד נתונים. אובייקט החיבור עוסק בפונקציות התקשורת של מסד הנתונים. הֶקשֵׁר.
עכשיו בואו נעבור לנושא הבא ונראה את הצעדים הנדרשים ליצירת יישום JDBC.
שלבים ליצירת יישום JDBC
על מנת ליצור יישום JDBC, עליך לבצע כמה צעדים. בואו נראה מה הם.
ייבא את החבילות: עליך לכלול את כל החבילות המכילות את שיעורי JDBC הדרושים תכנות מסד נתונים . לרוב, באמצעות ייבא java.sql. * יספיק.
מהי שיטת tostring בג'אווה
רשום את מנהל ההתקן JDBC: כאן עליך לאתחל מנהל התקן כדי שתוכל לפתוח ערוץ תקשורת עם מסד הנתונים.
פתח חיבור: כאן תוכלו להשתמש ב- getConnection () שיטה ליצירת אובייקט Connection, המייצג חיבור פיזי עם מסד הנתונים.
בצע שאילתה: זה למעשה מחייב להשתמש באובייקט מסוג Statement לבנייה ולהגשת הצהרת SQL למסד הנתונים.
חלץ נתונים ממערכת התוצאות: מומלץ להשתמש במתאים המתאימים getXXX () שיטה לאחזור הנתונים ממערכת התוצאות.
נקה את הסביבה: כאן, זה חיוני ללסגור במפורש את כל משאבי מסדי הנתונים לעומת הסתמכות על אוסף האשפה של JVM.
כעת כפי שראיתם שלבים שונים המעורבים ביצירת יישום JDBC, בואו נראה קוד לדוגמה ליצירת מסד נתונים וליצור חיבור.
חבילה Edureka ייבוא java.sql. * ייבא java.sql.DriverManager מחלקה ציבורית דוגמה {// שם מנהל התקן JDBC וכתובת אתר מסד נתונים סטטי סופי מחרוזת JDBC_DRIVER = 'com.mysql.jdbc.Driver' סופי סטטי מחרוזת DB_URL = 'jdbc: mysql: // localhost / emp '// אישורי מסד נתונים סופי סטטי מחרוזת USER =' שורש 'סטטי סופי מחרוזת PASS =' 'סטטי ציבורי ריק ריק (String [] args) {חיבור conn = null הצהרה stmt = null נסה {// שלב 2 : רשום מנהל התקן JDBC Class.forName ('com.mysql.cj.jdbc.Driver') // שלב 3: פתח חיבור System.out.println ('מתחבר למסד נתונים ...') conn = DriverManager.getConnection (DB_URL , 'שורש', '') // שלב 4: ביצוע שאילתה System.out.println ('יוצר הצהרה ...') stmt = conn.createStatement () מחרוזת sql sql = 'בחר מזהה, ראשון, אחרון, גיל מ- ResultSet של העובדים rs = stmt.executeQuery (sql) // שלב 5: חילץ נתונים מהקבוצת התוצאות בזמן (rs.next ()) {// אחזר לפי שם העמודה int id = rs.getInt ('id') גיל int = rs.getInt ('גיל') מחרוזת ראשונה = rs.getString ('ראשון') מחרוזת last = rs.getString ('last') // תצוגת ערכים System.out.print ('ID:' + id) System.out.print (', גיל:' + age) System.out.print (', First : '+ ראשון) System.out.println (', אחרון: '+ אחרון)} // שלב 6: סביבת ניקוי rs.close () stmt.close () connect.close ()} לתפוס (SQLException se) {// לטפל בשגיאות עבור JDBC se.printStackTrace ()} לתפוס (חריג e) {// לטפל בשגיאות עבור Class.forName e.printStackTrace ()} לבסוף {// סוף סוף לחסום המשמש לסגירת משאבים נסה {if (stmt! = null) stmt.close ()} לתפוס (SQLException se2) {} // שום דבר לא יכול להיעשות נסה {אם (conn! = null) conn.close ()} לתפוס (SQLException se) {se.printStackTrace ()} // סוף סוף נסה} // סוף נסה System.out.println ('להתראות!')} // סוף ראשי} // סוף דוגמה
הקוד שלמעלה יוצר טבלה במסד הנתונים המקומי שלך. כדי להכניס את הערכים למסד הנתונים שנוצר, תוכלו להתייחס לקוד שלהלן. אני אכתוב את הקוד רק בשלב 4. שאר הקוד נשאר זהה לעיל.
/ / שלב 4: ביצוע שאילתה System.out.println ('יצירת טבלה במסד נתונים נתון ...') stmt = conn.createStatement () מחרוזת sql = 'צור עובדים עובדים' + '(id INTEGER לא NULL,' + 'VARCHAR ראשון (255),' + 'VARCHAR אחרון (255),' + 'גיל INTEGER,' + 'מפתח ראשוני (id))' stmt.executeUpdate (sql) System.out.println ('נוצר טבלה במסד הנתונים הנתון ... ') System.out.println (' הכנסת רשומות לטבלה ... ') stmt = conn.createStatement () מחרוזת sql =' הכנס לעובדים ערכים (100, 'Kriss', 'Kurian', 18) 'stmt.executeUpdate (sql) sql =' הכנס לעובדים ערכים (101, 'Enrique', 'John', 25) 'stmt.executeUpdate (sql) sql =' INSERT INTO עובדים (102, 'טיילור', 'סוויפט' , 30) 'stmt.executeUpdate (sql) sql =' INSERT INTO עובדים VALUES (103, 'Linkin', 'Park', 28) 'stmt.executeUpdate (sql) System.out.println (' הוכנס רשומות לטבלה. .. ')
אז ככה תוכלו ליצור חיבור למסד הנתונים ולהכניס ערכים לטבלאות. עכשיו נתקדם הלאה ונבין סוגים שונים של מנהלי התקנים של JDBC
סוגי נהגי JDBC
מנהלי התקנים של JDBC משמשים ליישום הממשקים המוגדרים ב- JDBC API, לצורך אינטראקציה עם שרת מסד הנתונים.בעיקרו של דבר, א נהג JDBC עושה שלושה דברים והם כדלקמן:
1. יוצר חיבור עם מקור נתונים.
2. היא תשלח שאילתות ותעדכן הצהרות למקור הנתונים.
3. לבסוף, הוא מעבד את התוצאות.
לדוגמה, מנהלי התקנים של JDBC עוזרים לך לפתוח חיבור מסד נתונים כדי לקיים אינטראקציה איתו באמצעות שליחה . אם ברצונך לדעת יותר על סוגי מנהל התקן JDBC, תוכל לעיין במאמר זה ב .
עכשיו נתקדם הלאה ונבין את חיבורי JDBC.
חיבורי JDBC
ייבא חבילות JDBC: לְהוֹסִיף יְבוּא הצהרות שלך כדי לייבא שיעורים נדרשים בקוד ה- Java שלך.
רשום מנהל התקן JDBC: לא הצעד שלו, לטעון את יישום הנהג הרצוי בזיכרון כדי שיוכל למלא את בקשות ה- JDBC. ישנן שתי גישות לרישום נהג.
הגישה המתאימה ביותר לרישום מנהל התקן היא שימוש ב- Java forName () שיטה לטעינה דינמית של קובץ המחלקה של הנהג בזיכרון , שרושמת אותו אוטומטית. שיטה זו מתאימה מכיוון שהיא מאפשרת להפוך את רישום הנהג להגדרה וניידת. התבונן בקוד שלמטה:
נסה לתפוס את {Class.forName ('oracle.jdbc.driver.OracleDriver')} (ClassNotFoundException ex) System.out.println ('שגיאה: אין אפשרות לטעון מחלקת נהגים!') System.exit (1)}
הגישה השנייה בה אתה יכול להשתמש כדי לרשום נהג היא להשתמש בסטטי registerDriver () שיטה.
נסה את {Driver myDriver = new oracle.jdbc.driver.OracleDriver () DriverManager.registerDriver (myDriver)} לתפוס (ClassNotFoundException למשל) {System.out.println ('שגיאה: אין אפשרות לטעון מחלקת נהג!') System.exit (1 )}
כדאי להשתמש ב- registerDriver () אם אתה משתמש ב- JVM שאינו תואם JDK, כמו זה שמספקת Microsoft. כאן כל טופס דורש מסד נתונים כתובת אתר .
ניסוח כתובת אתר של מסד נתונים: ניסוח כתובות אתרים נחוץ ליצירת כתובת מעוצבת כהלכה המפנה למסד הנתונים שאליו ברצונך להתחבר. לאחר שטענת את מנהל ההתקן, תוכל ליצור חיבור באמצעות ה- DriverManager.getConnection () שיטה. שיטות DriverManager.getConnection () הן מינוס
כיצד לעבור ערך בג'אווה - -
getConnection (כתובת URL למחרוזת)
getConnection (כתובת URL למחרוזת, נכס מאפיינים)
getConnection (כתובת URL למחרוזת, משתמש מחרוזת, סיסמת מחרוזת)
- צור אובייקט חיבור
באפשרותך ליצור חיבור באמצעות כתובת ה- URL, שם המשתמש והסיסמה של בסיס הנתונים וגם באמצעות אובייקט מאפיינים.
- סגור
לבסוף, כדי לסיים את מושב מסד הנתונים, עליך לסגור את כל חיבורי מסד הנתונים. עם זאת, אם תשכח, אספן האשפה של ג'אווה יסגור את החיבור כאשר הוא מנקה חפצים מעופשים.
conn.close () // משמש לסגירת החיבור
זה היה הכל על קישוריות מסדי נתונים של Java. אם ברצונך לדעת יותר על JDBC, תוכל לעיין במאמר זה ב . זה מביא אותנו לסוף המאמר בנושא 'כיצד להתחבר למסד נתונים'. אני מקווה שזרקתי קצת אור לידע שלך ב- JDBC.
בדוק את מאת אדוריקה, חברת למידה מקוונת מהימנה עם רשת של יותר מ -250,000 לומדים מרוצים הפזורים ברחבי העולם. אנו כאן כדי לעזור לך בכל שלב בדרכך, ולהיות מלבד שאלות ראיונות אלה ב- Java, אנו מגישים תוכנית לימודים המיועדת לסטודנטים ואנשי מקצוע המעוניינים להיות מפתח Java.
יש לך שאלה עבורנו? אנא הזכיר זאת במדור ההערות במאמר זה 'כיצד להתחבר למסד נתונים' ונחזור אליך בהקדם האפשרי.