اذهب إلى المحتوى

السؤال

نشر

السلام عليكم ..

انا يمكننى ملئ الجدول بالبيانات من الداتا بيز  ..   لاكنى لا يمكننى ان املئ ال Text Area او JList  من الداتا بيز .. 

أود عمل مشروع للمنتجات وكل منتج بجواره المواصفات الخاصة به فى مربع ال Text Area الخاص به ..

 

أرجو المساعدة

Recommended Posts

  • 0
نشر

ربما يساعدك هذا المثال

import java.sql.*;
import java.awt.*;
import javax.swing.*;

import java.awt.event.*;
public class  DisplayDatabaseDataToJTextArea implements ActionListener{
	JTextArea textarea=new JTextArea(5,20);
	JButton b=new JButton("Get Data");
	public void createUI()
	{
		JFrame f=new JFrame();
        f.setLayout(null);
        JLabel label=new JLabel("Database data : ");        
        b.addActionListener(this);
        
        label.setBounds(10,40,100,20);
        textarea.setBounds(120,40,150,60);
        b.setBounds(120,110,100,20);
        
        f.add(label);        
        f.add(textarea);
        f.add(b);
        f.setVisible(true);
        f.setSize(350,200);
	}
    public static void main(String[] args){
    	DisplayDatabaseDataToJTextArea dd = new DisplayDatabaseDataToJTextArea();
    	dd.createUI();
    }

	@Override
	public void actionPerformed(ActionEvent e) {
		b = (JButton)e.getSource();		
		getOperation();
	}
	public void getOperation()
	{		
		try
		{
			Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
			Connection con = DriverManager.getConnection("jdbc:odbc:swing");
			String sql = "select textAreaData from data";
			PreparedStatement ps = con.prepareStatement(sql);
            ResultSet rs = ps.executeQuery();			
			while(rs.next())
            {           	   
				textarea.setText(rs.getString(1));           	
            }
			
			JOptionPane.showMessageDialog(null, "Retrieved data succesfully.","Record Retrieved",
					JOptionPane.INFORMATION_MESSAGE);
		}
		catch(Exception ex)
		{
			JOptionPane.showMessageDialog(null, ex.getMessage(),"Error",
					JOptionPane.ERROR_MESSAGE);
		}			
	}    
}

لنفرض أن قاعدةالبيانات كما يلي

عندما يعمل البرنامج سيظهر مربع كما في الصورة الثانية.

عنما تضغط على زر get Data ستظهر البيانات في ال   text area

 

Annotation 2020-07-16 091933.jpg

Annotation 2020-07-16 092218 (2).jpg

Annotation 2020-07-16 092218 (2).jpg

في حالة ال JList 

package JavaDB_001;
import java.awt.Color;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import javax.swing.*;
import java.sql.Statement;
import java.awt.List;

public class Work extends JFrame{
  List list;
     public Work(){
         list = new List();
         list.setBounds(20,20,440,420);
         
         BindList();
         
         add(list);
         setLayout(null);
         setSize(500, 500);
        getContentPane().setBackground(Color.decode("#bdb76b"));
         setLocationRelativeTo(null);
         setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
         setVisible(true);
     }
     


     //create A function To Bind The List With MySql Database
     public void BindList(){
         Connection con;
         Statement st;
         ResultSet rs;
         try{
             con = DriverManager.getConnection("jdbc:mysql://localhost/test_db","root","");
             st = con.createStatement();
             rs = st.executeQuery("select * from users");
             while(rs.next()){
                 list.add(rs.getString(2));
             }
         }catch(Exception ex){
             ex.printStackTrace();
         }
     }
   
     public static void main(String[] args){
         new Work();
     }
    }

 

  • 0
نشر
بتاريخ 1 ساعة قال Ahmed Sawy:

انا استخدم لغة الجافا على نت بينز .. 

السلام عليكم ,لا أعلم إن كنت تستخدم Api أو قاعدة بيانات محلية  ,لكن لنفرض إنها Sqlite (قاعدة بيانات محلية) لجلب  البيانات من قاعدة البيانات ووضعها  في Textedit فيو نقوم بالتالي 

DBManager dbManager = new DBManager(getActivity());
dbManager.open();

Cursor cursor = dbManager.fetch();
cursor.moveToFirst();
final TextView pdata = (TextView) getActivity().findViewById(R.id.productname);
pdata.settext(cursor.getString(0));

 

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

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

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...