تعتبر عملية قاعدة البيانات واحدة من أجزاء التطوير التي لا غنى عنها لتطوير النظام الحالي ، وخاصة في عصر البيانات الضخمة الحالية ، تعد قواعد البيانات مهمة بشكل خاص. ولكن هل تفهم حقًا كيف يتم توصيل جافا وقاعدة البيانات؟
اسمحوا لي أولاً أن أعطيك مثالًا بسيطًا على اتصال قاعدة البيانات:
حزمة com.java.dbtest ؛ استيراد java.sql.connection ؛ استيراد java.sql.drivermanager ؛ استيراد java.sql.preparedStatement ؛ استيراد java.sql.resultset ؛ استيراد java.sql.sqlexception ؛ الفئة العامة TestConnection تنفذ DBTEST {public void selectuser () {// قم بتعيين برنامج تشغيل قاعدة البيانات ، عنوان اتصال قاعدة البيانات ، المنفذ ، الاسم ، اسم المستخدم ، كلمة المرور ، سلسلة drivername = "oracle.jdbc.driver.oracledriver" ؛ url url = "jdbc: oracle: thin:@localhost: 1521: bjpowernode" ؛ // الاختبار هو اسم قاعدة البيانات ، 1521 هو المنفذ الافتراضي للاتصال مع سلسلة قاعدة البيانات user = "system" ؛ // aa هو اسم المستخدم اسم المستخدم = "bjpowerNode" ؛ // 123 هو كلمة المرور المعدة pstmt = null ؛ resultset rs = null ؛ // اتصال كائن اتصال قاعدة البيانات conn = null ؛ حاول {// عكس Oracle Database Driver Class.forname (drivername) ؛ // الحصول على اتصال قاعدة البيانات conn = drivermanager.getConnection (url ، المستخدم ، كلمة المرور) ؛ // الإخراج Database Connection System.out.println (conn) ؛ // تخصيص سلسلة الأوامر sql sql = "حدد * من t_user حيث user_id =؟" ؛ // إنشاء كائن reparedStatement ضمن هذا الاتصال pstmt = conn.preparestatement (SQL) ؛ // تمرير جذر قيمة المعلمة الأول ، بدلاً من علامة الاستفهام الأولى pstmt.setstring (1 ، "الجذر") ؛ . // انقل المؤشر إلى السطر التالي لتحديد ما إذا كانت هناك بيانات في Rs إذا (Rs.Next ()) {// الإخراج ، System.out.println ("Query اسمه [" + rs.getString ("user_id") + "】 ، كلمة مرورها هي:" + rs.getString ("كلمة المرور") ؛ } آخر {// الإخراج result result system.out.println ("لا توجد معلومات باستخدام اسم المستخدم [" + rs.getString ("user_id") + "] لم يتم العثور عليها") ؛ }} catch (classnotfoundException e) {e.printStackTrace () ؛ } catch (sqlexception e) {E.PrintStackTrace () ؛ } أخيرًا {try {if (rs! = null) {rs.close () ؛ } if (pstmt! = null) {pstmt.close () ؛ } if (conn! = null) {conn.close () ؛ }} catch (sqlexception e) {E.PrintStackTrace () ؛ }}} public static void main (string [] args) {new testConnection (). selectUser () ؛ }}}في الوظيفة الرئيسية ، انقر بزر الماوس الأيمن واختر "Run as" => "Application Java" ، وسيتم تشغيل كتلة البرنامج. في وحدة التحكم ، يمكنك رؤية نتيجة التشغيل. إذا أعطيت سلسلة مشابهة لـ "Oracle.jdbc.driver.t4cconnection@7c242f04" ، فهذا يعني أنك قد قمت بتوصيلها بنجاح. تظهر نتائج التشغيل في الشكل:
دعنا نتشريح هذا الإجراء بإيجاز.
هذا البرنامج هو مثال على اتصال Java بقاعدة بيانات Oracle. يستخدم JDBC لإكمال تشغيل الاتصال بقاعدة البيانات ، لذلك من الضروري تقديم OJDBC14.JAR. قبل العملية ، يجب أولاً الحصول على كائن فئة برنامج تشغيل قاعدة البيانات والحصول على كائن اتصال قاعدة البيانات من خلال كائن برنامج التشغيل.
يتم استخدام class.forname (الاسم الحاجز) لتحميل السائق عن طريق تطبيق آلية انعكاس الفصل. فئة DriverManager هي طبقة إدارة JDBC ، بالتصرف بين المستخدمين والسائقين. يتتبع برامج التشغيل المتاحة ويؤسس اتصالًا بين قاعدة البيانات والسائق المقابل.
بشكل عام ، تحتاج فقط إلى استخدام Method DriverManager.getConnection مباشرة في الفصل لإنشاء اتصال مع قاعدة البيانات.
ترث واجهة الجهة المعدلة بيان ويرث فئة تستخدم لأداء عمليات قاعدة البيانات. يعد الإعداد أكثر كفاءة من البيان عند استدعاء عدة مرات ، حيث يدافع الكثير من الناس عن استخدام المعدة بدلاً من البيان.
في منشور المدونة التالي ، سأقدم هذه النقطة بالتفصيل "الفهم المتعمق للبيان و reparedstatement". يمكن اعتبار إعداد الجهة المعدلة فئة أوامر في .NET.
ظهرت واجهة ResultSet في العديد من اللغات ، وتخزن بشكل أساسي بيانات الاستعلام. بعد كل استعلام ، يتم استخدام طريقة NEXT () عادة في لغة Java لقراءة البيانات.