الانتقال إلى المحتوى
View in the app

A better way to browse. Learn more.

مجموعة مستخدمي أوراكل العربية

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

عرض البيانات باستخدام JSP

Featured Replies

بتاريخ:

هذه المشاركة تعتبر الف باء التعامل مع اوركل عن طريق JSP وهو عبارة عن صفحة واحدة غرضها
استعداء جميع سجلات الجدول DEPT للمستخدم SCOTT وسأحاول شرح البرنامج
وتحتوي هذه الصفحة على لغتين اساسيتين هي لغة HTML التي يفهمها المتصفح
ولغة JSP التي تتحول الى Servlet عن طريق Tomcat ومن ثم يحولها الى HTML .

<%@ page contentType="text/html; charset=windows-1256" language="java" import="java.sql.*" errorPage="" %>
<!-- 
 يجب ان يكون هذا السطر هو السطر الاول دائماً ويحوي المعلومات الرئيسية للصفحة
 وهي كالاتي
 contentType="text/html; charset=windows-1256" هذه الجملة المسؤوله عن عرض الحروف العربية بالشكل الصحيح
 language="java" تفنيد اللغة
 import="java.sql.*" مثل برنامج الجافا العادي هنا تستدعى المكتبات ويمكن الفصل بينهم باستخدام الفاصلة المنقوطه
 errorPage="" الصفحة التي تحتوي معالج الاخطاء
-->
<%
Driver Driverrs = (Driver)Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
//  تعريف نوع الدرايفر وعمل نسخه في الذاكرة تمهيدا للتعامل معها
Connection Connrs = DriverManager.getConnection("jdbc:oracle:thin:@127.0.0.1:1521:orcl","scott","tiger");
// تعريف نوع الربط وعنوان خادم قاعدة البيانات واسم المستخدم وكلمة المرور
PreparedStatement Statementrs = Connrs.prepareStatement("SELECT * FROM DEPT");
/*
يقوم هذا السطر بتهيئة جملة سيكول وتخزينها في متغير كائن من نوع 
PreparedStatment 
كذلك يوجد نوع اخر من الكائنات يمكن تخزين مجموعة سجلات فيها وهو 
Statmenet 
وهنا فرق بين الاثنين يظهر جلياً في عمليات تحديث البيانات او اضافتها 
سنتطرق لها في حينها ان شاء الله
*/
ResultSet rs = Statementrs.executeQuery();
// تنفيذ جملة السيكول وتخزين النتيجة في نسخه من كلاس من نوع 
// ResultSet
%>
<html>
<head>ٍ
<title>Show Dept. Table</title>
<!-- لتسمية الصفحة في الاعلى -->
<meta http-equiv="Content-Type" content="text/html; charset=windows-1256">
<!--
هذا السطر لتعريب البيانات بعد اخذها معربه من قاعدة البيانات ولا يكتفي به
ولا بما سبق الاشاره اليه في الاعلى فلكل واحد منهما غرضه
الاول يعمل على تعريب البيانات بين المتصفح وقاعدة البيانات
اما هذا فيعمل على تعريبها في المتصفح فقط 
-->
</head>

<body>
<!--
انشاء جدول من سطرين بكل سطر ثلاث خانات
-->
<table width="600" border="0" align="center" cellpadding="0" cellspacing="5">
 <tr bgcolor="#000000"> 
   <td><font color="#FFFFFF" size="2" face="Tahoma">Dep. No.</font></td>
   <td><font color="#FFFFFF" size="2" face="Tahoma">Dep. Name </font></td>
   <td><font color="#FFFFFF" size="2" face="Tahoma">Loc.</font></td>
 </tr>
 <%
 while (rs.next())
 // عمل تكرار لما بين القوسين مادام ان النتيجة المنطقية نعم
 // وهي تعني هنا مادام انه يوجد سجل جديد كرر مابين القوسين
 {
 %>

 <tr bgcolor="efefef"> 
   <td><font size="2" face="Tahoma"><%=rs.getInt("DEPTNO")%></font></td>
   <td><font size="2" face="Tahoma"><%=rs.getString("DNAME")%></font></td>
   <td><font size="2" face="Tahoma"><%=rs.getString("LOC")%></font></td>
 </tr>
 <%
 } // نهاية التكرار
 %>
</table>
</body>
</html>
<%
rs.close();
// اغلاق مجموعة السجلات
Statementrs.close();
// اغلاق الجملة التحضيرية
Connrs.close();
// اغلاق الاتصال بقاعدة البيانات بشكل كامل
%>




يمكنكم نسخ هذا الكود و حفظه في ملف ومن ثم تشغيله وقد جربته وهو يعمل بشكل صحيح
في حالة وجود اخطاء الرجاء التنبيه لها .

قُدماً ...
احمد الجابري

بتاريخ:

اخي العزيز ,
مشاركة رائعة جدا , نحن بانتظار المزيد من الامثلة كون الموضوع جديد الفكرة جميلة ,
اذا كان بمقدورك اعطاء دروس في هذا المجال فسنكون من الشاكرين.

بارك الله فيك اخي :)

بتاريخ:
  • كاتب الموضوع

شكرا اخي الكريم على تعقيبك ..
وبالنسبة للدروس اخاف ماالتزم .
بحاول تكون مواضيعي على هيئة دروس وهي افضل طريقة بحيث يكون كل موضوع مستقل بذاته
للاسف لغة Jsp لوحدها ماتصفق .. تحتاج معرفه بـHTML واحيانا تحتاج JavaScript
وكلها مقدور عليها بإذن الله وحبة حبة باذن الله ندخل في العمق وبنتطرق لمواضيع ينفرد بها هذا المنتدى .
وهي مواضيع ليست مترجمة وليست حق للغير .

شكراً على تجاوبكم

قُدماً ...
احمد الجابري

بتاريخ:

مشكور على الدرس

  • بعد 2 شهور...
بتاريخ:

ايضا يمكنك نسخ هذا الكود ...
وبدء صفحة جديدة في Jdeveloper
JSP وسيعمل بشكل طبيعي
فقط يعرضلك الموجود بالجدول

  • بعد 2 سنة...
بتاريخ:

مشكور أخي أحمد

انضم إلى المناقشة

يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.

زائر
أضف رد على هذا الموضوع...

برجاء الإنتباه

بإستخدامك للموقع فأنت تتعهد بالموافقة على هذه البنود: سياسة الخصوصية

Account

Navigation

البحث

إعداد إشعارات المتصفح الفورية

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.