الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

عرض البيانات من قاعدة البيانات في الـ JSF

بدأه vector_ever في 24 أبريل 2014 · 9 رد · 992 مشاهدة · في JavaEE
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

 

لدي سؤال وهو عن كيفية عرض بيانات مخزنة في قاعدة البيانات في صفحة ويب JSF

لدى البحث وجدت عدة امثلة وكلها بنفس النمط تقريبا كما في هذا الموقع http://www.devmanuals.com/tutorials/java/jsf/database/viewdata.html

 

ليس لدي مشكلة نهائيا في استعادة وعرض البيانات من قاعدة البيانات كما في المثال الموجود في اللينك السابق

لكنه يعرض البيانات على هيئة Table جدول فيه حقل واحد فقط واريد عرض هذا الحقل كنص text عدي جدا وليس كجدول ولا اعرف كيف اقوم بذلك

 

فهل من مساعدة

إذا نظــرتَ نيـوب اللـّيـثِ بـارزةً         فـلا تظــنَنَ أَنَّ اللـّيـــثَ يبْتسـِـــمُ


 


 


رسم المخططات البيانية بواسطة الجافا


 


كتاب تحليل وتصميم نظم المعلومات


#2

غير واضح ما تقصده

 

يعني هل تقصد أنك تريد أن تكون الحقول كما هي غير أن خطوط الجدول غير موجودة؟

هكذا ؟

       nam       job         date

ahmed    dev        12/25/52

تم تعديل هذه المشاركة بواسطة أحمد أبو عبد البر في 24 أبريل 2014 في 16:52

vVIfFr.gif

مدونتي



إذا رأيتموني غبت فأطلت الغياب فربما أكون قد انتقلت عن الدنيا إلى الآخرة

فما أحوجني إلى دعوة صالحة من أخ لي كريم

 

http://www.tvquran.com/

 

LoGeCom

أول برنامج عربي للمحاسبة والتجارة وإدراة المخازن يعمل على اللينكس والماك والويندوز 

#3

شكرا لك أخي لردك السريع ومحاولتك المساعدة

بالنسبة لطلبي فهو كالتالي: ان محتويات قاخدة البيانات هي عبارة عن نص خطي مكونة من حروف وارقام يعني نص مكون من سطور مخزنة في خانة واحدة في قاعدة البيانات.

مثلا قاعدة البيانات لدي فيها خانة (عامود واحد وصف واحد) ومحتوباتها النص التالي:

اقتباس

 

 

Java is a computer programming language that is concurrent, class-based, object-oriented, and specifically designed to have as few implementation dependencies as possible. It is intended to let application developers "write once, run anywhere" (WORA), meaning that code that runs on one platform does not need to be recompiled to run on another. Java applications are typically compiled tobytecode (class file) that can run on any Java virtual machine (JVM) regardless of computer architecture. Java is, as of 2014, one of the most popular programming languages in use, particularly for client-server web applications, with a reported 9 million developers.[10][11] Java was originally developed by James Gosling at Sun Microsystems (which has since merged into Oracle Corporation) and released in 1995 as a core component of Sun Microsystems' Java platform. The language derives much of itssyntax from C and C++, but it has fewer low-level facilities than either of them.

 

الآن اريد استعادة هذا النص كما هو من قاعدة البيانات وعرضه في صفحة ويب عن طريق كود JSF

 

فكيف أقوم بذلك؟

تم تعديل هذه المشاركة بواسطة vector_ever في 24 أبريل 2014 في 22:40

إذا نظــرتَ نيـوب اللـّيـثِ بـارزةً         فـلا تظــنَنَ أَنَّ اللـّيـــثَ يبْتسـِـــمُ


 


 


رسم المخططات البيانية بواسطة الجافا


 


كتاب تحليل وتصميم نظم المعلومات


#4

استعمل <h:inputTextarea>

 

مثال

<h:inputTextarea id=”UserAddress” value=”#{userBean.textVar}” cols=”15″ rows=”5″ />

حيث textVar هو حقل من نوع string في  userBean

1

vVIfFr.gif

مدونتي



إذا رأيتموني غبت فأطلت الغياب فربما أكون قد انتقلت عن الدنيا إلى الآخرة

فما أحوجني إلى دعوة صالحة من أخ لي كريم

 

http://www.tvquran.com/

 

LoGeCom

أول برنامج عربي للمحاسبة والتجارة وإدراة المخازن يعمل على اللينكس والماك والويندوز 

#5

حسنا أخي كي اكون قد فهمت المسالة منك بشكل صحيح

لدي الدالة التالية في الجافا كلاس المسؤولة عن استرجاع البانات من قاعدة البيانات

public List<Wirote> getWordsList() {

        ArrayList wortList = new ArrayList<Wirote>();

        con = null;

        ps = null;

        result = null;

        try {

            Class.forName("com.mysql.jdbc.Driver");

            //get database connection

            con = DriverManager.getConnection(url, "root", "root");

          //if(con==null){throw new SQLException("Can't get database connection");}

            ps = con.prepareStatement("select Words from dbase.dictionary");

            //get customer data from database

            result = ps.executeQuery();

            while (result.next()) {

                Wirote wrt = new Wirote();

                wrt.setWord(result.getString("Words"));

                //store all data into a List

                wortList.add(wrt);

            }

        } catch (Exception e) {

            e.printStackTrace();

        } finally {

            try {

                con.close();

                ps.close();

            } catch (Exception e) {

                e.printStackTrace();

            }

        }

        return wortList;

    }

الآن عندما أريد عرض المحتوى الموجود في قاعدة البيانات فهل سيكون على الشكل التالي

<h:inputTextarea id=”UserAddress” value=”#{userBean.wordsList}” cols=”15″ rows=”5″ />

حيث wordsList هي الدالة المسؤولة عن استرجاع النص المخزن سلفا في قاعدة البيانات

 

فهل هذا صحيح؟؟؟

 

سؤال آخر أخي وهو ما المقصود بالـ id=”UserAddress”

 

وشكرا

تم تعديل هذه المشاركة بواسطة vector_ever في 25 أبريل 2014 في 10:44

إذا نظــرتَ نيـوب اللـّيـثِ بـارزةً         فـلا تظــنَنَ أَنَّ اللـّيـــثَ يبْتسـِـــمُ


 


 


رسم المخططات البيانية بواسطة الجافا


 


كتاب تحليل وتصميم نظم المعلومات


#6

هذا الباليز inputTextarea يرتبط مع حقل من نوع String وليس من نوع List

 

لذلك يجب عليك إضافة دالة أخرى تحول List إلى String مثل هذه

public String getTextFromTable() 
      {
	String tmp="";
	for(String x:words)
	{
	      tmp=tmp+x+"\n";   
	}

	return tmp;
      }

ولكن يجب أن تكون List على هذا الشكل

List<String>;

وليس كما كتبت أنت Wirote

فإن هذا النوع لم أسمع به من قبل

 

ثم من صفحة JSF تربط inputTextarea بالدالة بالطريقة التالية

<h:inputTextarea id="idText" value="#{userBean.textFromTable}" rows="50" cols="15"/>

يمكنك التحكم في طول وعرض مساحة العرض بالتعديل على rows & cols

 

اقتباس

 

 

سؤال آخر أخي وهو ما المقصود بالـ id=”UserAddress”

كل كائن في JSF له ID سمه كيف شئت

تم تعديل هذه المشاركة بواسطة أحمد أبو عبد البر في 25 أبريل 2014 في 18:35

1

vVIfFr.gif

مدونتي



إذا رأيتموني غبت فأطلت الغياب فربما أكون قد انتقلت عن الدنيا إلى الآخرة

فما أحوجني إلى دعوة صالحة من أخ لي كريم

 

http://www.tvquran.com/

 

LoGeCom

أول برنامج عربي للمحاسبة والتجارة وإدراة المخازن يعمل على اللينكس والماك والويندوز 

#7

شكرا أخي على الجواب

لكن للتوضيح فان Wirote هو عبارة عن اسم الكلاس للـ java bean  فآسف على الالتباس

@ManagedBean(name = "dictionary")
@SessionScoped

public class Wirote {

    private static final long serialVersionUID = 1L;

    private Connection con;
    private PreparedStatement ps;
    private ResultSet result;
    private List<Wirote> wortList;

    private String word;
//setter and getter

public List<Wirote> getWordsList() {
//retrive Text from database

            }
        }

إذا نظــرتَ نيـوب اللـّيـثِ بـارزةً         فـلا تظــنَنَ أَنَّ اللـّيـــثَ يبْتسـِـــمُ


 


 


رسم المخططات البيانية بواسطة الجافا


 


كتاب تحليل وتصميم نظم المعلومات


#8

بعد التجريب لم أحصل على مرادي

لأن intputTextarea هو عبارة عن حقل للكتابة اي لادخال البيانات وانا اريد فقط اظهارها أي output وليس intput

إذا نظــرتَ نيـوب اللـّيـثِ بـارزةً         فـلا تظــنَنَ أَنَّ اللـّيـــثَ يبْتسـِـــمُ


 


 


رسم المخططات البيانية بواسطة الجافا


 


كتاب تحليل وتصميم نظم المعلومات


#9

إذن استعمل outputText

واجعل value يرتبط بالدالة التي أشرت إليها والتي تسترجع حقل من نوع String

تم تعديل هذه المشاركة بواسطة أحمد أبو عبد البر في 28 أبريل 2014 في 16:35

vVIfFr.gif

مدونتي



إذا رأيتموني غبت فأطلت الغياب فربما أكون قد انتقلت عن الدنيا إلى الآخرة

فما أحوجني إلى دعوة صالحة من أخ لي كريم

 

http://www.tvquran.com/

 

LoGeCom

أول برنامج عربي للمحاسبة والتجارة وإدراة المخازن يعمل على اللينكس والماك والويندوز 

#10

هذا ما قمت به فعلا واستغنيت عن الـ Arraylist  واكتفيت بالسلسة النصية String

 

شكرا لمجهودك معي

إذا نظــرتَ نيـوب اللـّيـثِ بـارزةً         فـلا تظــنَنَ أَنَّ اللـّيـــثَ يبْتسـِـــمُ


 


 


رسم المخططات البيانية بواسطة الجافا


 


كتاب تحليل وتصميم نظم المعلومات


مواضيع مشابهة