يتيح JDBC API للمستخدمين الوصول إلى أي شكل من أشكال بيانات الجدول ، وخاصة البيانات المخزنة في قاعدة بيانات العلاقة.
عملية التنفيذ:
• قم بتوصيل مصدر البيانات ، مثل: قاعدة البيانات.
• استفسارات تمرير قاعدة البيانات وتعليمات التحديث.
• نتائج استجابة قاعدة البيانات والعودة.
العمارة JDBC
مقسمة إلى بنية مزدوجة الطبقات والهندسة المعمارية ثلاثية.
مزدوج الطبقة
الوظيفة: في هذه البنية ، جافا Applet أو التطبيق الوصول مباشرة إلى مصدر البيانات.
الشرط: مطلوب برنامج التشغيل للتفاعل مع قاعدة البيانات التي يمكن الوصول إليها.
الآلية: يتم تمرير أمر المستخدم إلى قاعدة البيانات أو مصادر البيانات الأخرى ، ويتم إرجاع النتيجة.
النشر: يمكن توصيل مصدر البيانات عبر الشبكة على جهاز آخر ، يسمى تكوين C/S (يمكن أن يكون شبكة داخلية أو الإنترنت).
ثلاثة -طبقة
الميزة الخاصة للهندسة المعمارية الجانبية هي أن الخدمة الوسيطة يتم تقديمها.
العملية: سوف تمر الأوامر والهياكل عبر هذه الطبقة.
الجاذبية: يمكن أن تزيد من التحكم في الوصول إلى بيانات الشركات وتحديث الأنواع المختلفة ؛
الاتجاه التاريخي: في الماضي ، بسبب مشاكل الأداء ، تمت كتابة الطبقة الوسطى في C أو C ++. بدأ استخدام Java في الوسط لتطوير الطبقة أيضًا بمزايا تسليط الضوء على Java.
خطوات برمجة JDBC
تحميل السائق:
class.forname (driverClass) // تحميل mysql driver class.forname ("com.mysql.jdbc.
احصل على اتصال قاعدة البيانات:
نسخ رمز رمز على النحو التالي:
drivermanager.getConnection ("jdbc: mysql: //127.0.0.1: 3306/imooc" ، "root" ، "root") ؛
قم بإنشاء كائن البيان/الجدي:
نسخ رمز رمز على النحو التالي:
conn.createstatement () ؛
const.preparestatement (SQL) ؛
مثيل كامل
استيراد java.sql.connection "؛ public static final string user =" liulx "؛ provort static string password =" 123456 "؛ public static void main (string [] args) يرمي الاستثناء { / / / 1. تحميل class.forname (" com .mysql .jdbc.driver ") ؛ // 2. = conn.createstatement () ؛ .println (rs.getString ("user_name")+"العمر:"+rs.getint ("Age") ؛}}}
الإضافة والحذف والتغيير
الفئة العامة dbutil {url static static url = "jdbc: // localhost: 3306 Driver Class.forname ("com.mysql.jdbc.driver") .printstacktrace () {user user order_name. التاريخ الخاص Create_date ؛ جوهر جوهر } // --------- dao 层 --------------- package liulx.dao ؛ import liulx.db.dbutil ؛ import liulx.model.goddess ؛ import java. sql.connection addgoddess (إلهة G) يلقي sqlexception {// connect connect conn = dbutil.getConnection () ؛ القيم " +" (" +"؟ ،؟ ،؟ ،؟ ،؟ ،؟ ،؟ ،؟ ، current_date () ،؟ ، current_date () ،؟) ؛ تقليل تنفيذ SQL // تمرير PTMT.SetString (1 ، G.Getuser_Name ()) ؛ ؛ )) ؛ = dbutil.getConnection () ؛ +"update_user =؟ ، update_date = current_date () ، isDel =؟"+"أين المعرف =؟" .getuser_name () ؛ (8 ، g.getisdel ()) ؛ ) ؛ القائمة العامة <FiLdess> Query () {connection conn = dbutil.getConnection () ؛ = New A Raylist <آلهة (العمر ") ؛ لتقليل تنفيذ SQL PredStatement PTMT = conn.preparestatement (SQL) ؛ = new Goddess () ؛ getint ("الجنس") ؛ Rs.GetDate ("create_date") ؛ ") ؛} إرجاع g ؛}}