how can I create a bar chart by retrieving data from database using eclipse in java ? I have to retrieve data from (mySql) DB Browser and should connect to the graph . So here is the code below .Graph should shows lecture room and the Laboratory incrementation , Statistics is the package name and the class name is StatisticsGraph
package Locations;
import java.awt.Color;
import java.awt.EventQueue;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import javax.swing.DefaultComboBoxModel;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextField;
import javax.swing.SwingConstants;
import Connection.DBConnection;
import Lecturers_Management.AddingLecturers;
import java.awt.EventQueue;
public class AddLocations {
    private JFrame frame;
    PreparedStatement pstd=null;
    PreparedStatement pst = null;
    PreparedStatement ptsID=null;
    ResultSet rs = null;
    Connection conn;
    
    private JTextField BuildingName;
    private JTextField RoomName;
    private JTextField Capacity;
    /**
     * Launch the application.
     */
    public static void main(String[] args) {
        EventQueue.invokeLater(new Runnable() {
            public void run() {
                try {
                    AddLocations window = new AddLocations();
                    window.frame.setVisible(true);
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
        });
    }
    /**
     * Create the application.
     */
    public AddLocations() {
        initialize();
    }
    /**
     * Initialize the contents of the frame.
     */
    private void initialize() {
        frame = new JFrame();
        frame.setBounds(100, 100, 1254, 739);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.getContentPane().setLayout(null);
        
        JPanel panel_1 = new JPanel();
        panel_1.setLayout(null);
        panel_1.setBackground(Color.LIGHT_GRAY);
        panel_1.setBounds(10, 88, 233, 615);
        frame.getContentPane().add(panel_1);
        
        JButton btnNewButton = new JButton("Home");
        btnNewButton.setForeground(Color.BLACK);
        btnNewButton.setFont(new Font("Times New Roman", Font.BOLD, 20));
        btnNewButton.setBackground(Color.CYAN);
        btnNewButton.setBounds(10, 10, 213, 38);
        panel_1.add(btnNewButton);
        
        JButton btnNewButton_1= new JButton("Lecturers");
        btnNewButton_1.setFont(new Font("Times New Roman", Font.BOLD, 20));
        btnNewButton_1.setBackground(Color.CYAN);
        btnNewButton_1.setBounds(10, 65, 213, 38);
        panel_1.add(btnNewButton_1); 
        
        JButton btnNewButton_2 = new JButton("Students");
        btnNewButton_2.setFont(new Font("Times New Roman", Font.BOLD, 20));
        btnNewButton_2.setBackground(Color.CYAN);
        btnNewButton_2.setBounds(10, 124, 213, 38);
        panel_1.add(btnNewButton_2);
        
        JButton btnNewButton_3= new JButton("Subjects");
        btnNewButton_3.setFont(new Font("Times New Roman", Font.BOLD, 20));
        btnNewButton_3.setBackground(Color.CYAN);
        btnNewButton_3.setBounds(10, 181, 213, 38);
        panel_1.add(btnNewButton_3);
        
        JButton btnNewButton_4 = new JButton("Working days/Hours");
        btnNewButton_4.setFont(new Font("Times New Roman", Font.BOLD, 20));
        btnNewButton_4.setBackground(Color.CYAN);
        btnNewButton_4.setBounds(10, 235, 213, 38);
        panel_1.add(btnNewButton_4);
        
        JButton btnNewButton_5 = new JButton("Sessions");
        btnNewButton_5.setFont(new Font("Times New Roman", Font.BOLD, 20));
        btnNewButton_5.setBackground(Color.CYAN);
        btnNewButton_5.setBounds(10, 289, 213, 38);
        panel_1.add(btnNewButton_5);
        
        JButton btnNewButton_6 = new JButton("Locations");
        btnNewButton_1.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                AddLocations addlocations=new AddLocations();
                addlocations.main(null);
                frame.setVisible(false);
            }
        });
        btnNewButton_6.setFont(new Font("Times New Roman", Font.BOLD, 20));
        btnNewButton_6.setBackground(Color.CYAN);
        btnNewButton_6.setBounds(10, 344, 213, 38);
        panel_1.add(btnNewButton_6);
        
        JButton btnNewButton_7 = new JButton("Tags");
        btnNewButton_7.setFont(new Font("Times New Roman", Font.BOLD, 20));
        btnNewButton_7.setBackground(Color.CYAN);
        btnNewButton_7.setBounds(10, 400, 213, 38);
        panel_1.add(btnNewButton_7);
        
        JButton btnNewButton_8 = new JButton("Session Rooms");
        btnNewButton_8.setFont(new Font("Times New Roman", Font.BOLD, 20));
        btnNewButton_8.setBackground(Color.CYAN);
        btnNewButton_8.setBounds(10, 456, 213, 38);
        panel_1.add(btnNewButton_8);
        
        JButton btnNewButton_9 = new JButton("Generate Timetables");
        btnNewButton_9.setFont(new Font("Times New Roman", Font.BOLD, 20));
        btnNewButton_9.setBackground(Color.CYAN);
        btnNewButton_9.setBounds(10, 512, 213, 38);
        panel_1.add(btnNewButton_9);
    
        
        JButton btnNewButton_10 = new JButton("Statistics");
        btnNewButton_10.setFont(new Font("Times New Roman", Font.BOLD, 20));
        btnNewButton_10.setBackground(Color.CYAN);
        btnNewButton_10.setBounds(10, 567, 213, 38);
        panel_1.add(btnNewButton_10);
        
        JPanel panel = new JPanel();
        panel.setLayout(null);
        panel.setBackground(Color.CYAN);
        panel.setBounds(10, 10, 1216, 68);
        frame.getContentPane().add(panel);
        
        JLabel lblNewLabel = new JLabel("TIMETABLE MANAGEMENT");
        lblNewLabel.setHorizontalAlignment(SwingConstants.CENTER);
        lblNewLabel.setForeground(Color.BLUE);
        lblNewLabel.setFont(new Font("Times New Roman", Font.BOLD, 22));
        lblNewLabel.setBackground(Color.BLUE);
        lblNewLabel.setBounds(430, 0, 329, 68);
        panel.add(lblNewLabel);
        
        JPanel panel_2 = new JPanel();
        panel_2.setLayout(null);
        panel_2.setBackground(Color.BLUE);
        panel_2.setBounds(253, 88, 973, 76);
        frame.getContentPane().add(panel_2);
        
        JButton btnNewButton_11 = new JButton("Add Location");
        btnNewButton_11.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                AddLocations addlocations=new AddLocations();
                addlocations.main(null);
                frame.setVisible(false);
            }
        });
        btnNewButton_11.setForeground(Color.BLACK);
        btnNewButton_11.setFont(new Font("Times New Roman", Font.BOLD, 20));
        btnNewButton_11.setBackground(Color.LIGHT_GRAY);
        btnNewButton_11.setBounds(10, 10, 266, 56);
        panel_2.add(btnNewButton_11);
        
        JButton btnNewButton_12 = new JButton("Manage Location");
        btnNewButton_12.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                ManageLocations managelocations=new ManageLocations();
                managelocations.main(null);
                frame.setVisible(false);
            }
        });
        btnNewButton_12.setFont(new Font("Times New Roman", Font.BOLD, 20));
        btnNewButton_12.setBackground(Color.LIGHT_GRAY);
        btnNewButton_12.setBounds(697, 9, 266, 58);
        panel_2.add(btnNewButton_12);
        
        
        JPanel panel_3 = new JPanel();
        panel_3.setBounds(253, 174, 973, 529);
        frame.getContentPane().add(panel_3);
        panel_3.setLayout(null);
        
        JLabel lblNewLabel_1 = new JLabel("Building Name");
        lblNewLabel_1.setFont(new Font("Times New Roman", Font.BOLD, 19));
        lblNewLabel_1.setBackground(new Color(148, 0, 211));
        lblNewLabel_1.setBounds(10, 10, 148, 41);
        panel_3.add(lblNewLabel_1);
        
        JLabel lblNewLabel_2 = new JLabel("Room Name");
        lblNewLabel_2.setFont(new Font("Times New Roman", Font.BOLD, 19));
        lblNewLabel_2.setBackground(new Color(148, 0, 211));
        lblNewLabel_2.setBounds(10, 90, 148, 41);
        panel_3.add(lblNewLabel_2);
    
        JLabel lblNewLabel_3 = new JLabel("Room Type[![enter image description here][1]][1]");
        lblNewLabel_3.setFont(new Font("Times New Roman", Font.BOLD, 19));
        lblNewLabel_3.setBounds(10, 168, 148, 41);
        panel_3.add(lblNewLabel_3);
        
        JLabel lblNewLabel_4 = new JLabel("Capacity");
        lblNewLabel_4.setFont(new Font("Times New Roman", Font.BOLD, 19));
        lblNewLabel_4.setBounds(10, 248, 148, 41);
        panel_3.add(lblNewLabel_4);
        
        
        JTextField BuildingName = new JTextField();
        BuildingName.setBackground(Color.LIGHT_GRAY);
        BuildingName.setFont(new Font("Times New Roman", Font.BOLD, 20));
        BuildingName.setBounds(145, 12, 730, 41);
        panel_3.add(BuildingName);
        BuildingName.setColumns(10);
        
        JTextField RoomName = new JTextField();
        RoomName.setBackground(Color.LIGHT_GRAY);
        RoomName.setFont(new Font("Times New Roman", Font.BOLD, 20));
        RoomName.setBounds(145, 90, 730, 41);
        panel_3.add(RoomName);
        RoomName.setColumns(10);
    
        JComboBox RoomType = new JComboBox();
        RoomType.setModel(new DefaultComboBoxModel(new String[] {"Lecture Hall", "Laboratory"}));
        RoomType.setFont(new Font("Times New Roman", Font.BOLD, 20));
        RoomType.setBackground(Color.LIGHT_GRAY);
        RoomType.setBounds(145, 168, 730, 41);
        panel_3.add(RoomType);
        
        JTextField Capacity = new JTextField();
        Capacity.setBackground(Color.LIGHT_GRAY);
        Capacity.setFont(new Font("Times New Roman", Font.BOLD, 20));
        Capacity.setBounds(145, 248, 730, 41);
        panel_3.add(Capacity);
        Capacity.setColumns(10);
        
        
        JButton btnNewButton_14 = new JButton("Clear");
        btnNewButton_14.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                
                BuildingName.setText(null);
                RoomName.setText(null);
                RoomType.setSelectedItem(null);
                Capacity.setText(null);
                
                
            }
        });
        btnNewButton_14.setFont(new Font("Times New Roman", Font.BOLD, 20));
        btnNewButton_14.setBackground(Color.CYAN);
        btnNewButton_14.setBounds(435, 452, 157, 41);
        panel_3.add(btnNewButton_14);
        
        
        
        JButton btnNewButton_15 = new JButton("Save");
        btnNewButton_15.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                
    
                    
                    
                    
                    
                
                try {
                    
                    
                    if(BuildingName.getText().equals("") ||RoomName.getText().equals("")||RoomType.getSelectedItem().equals("")||Capacity.getText().equals("")) {
                        JOptionPane.showMessageDialog(null, "Please fill the form and then save it");
                        
                         
                            
                        
                    }else if(!(Capacity.getText().trim().matches("^[0-9]{3}"))){
                        JOptionPane.showMessageDialog(null, "Invalid capacity amount");
                    
                    }else{
                        
                        Connection connec = DBConnection.connect();
                        
            
                            
                            
                            String BName=BuildingName.getText();
                            String RName=RoomName.getText();
                            String RType=RoomType.getSelectedItem().toString();
                            String capacity=Capacity.getText();
                            
                               
                            String msg = "" + BName;
                            msg += " \n";
                            
                         
                            
                            
                            Connection con = DBConnection.connect();
                            String query = "INSERT INTO Locations values(null,'" + BName + "','" + RName + "','" + RType + "','" +
                                    capacity + "')";
                            java.sql.Statement sta = con.createStatement();
                            int xx = sta.executeUpdate(query);
                          
                            
                            
                            
                            JOptionPane.showMessageDialog(null,
                                    "Your , " + msg + "has succesfully inserted");
                            
                            con.close();
                            BuildingName.setText(null);
                              RoomName.setText(null);
                              RoomType.setSelectedItem(null);
                              Capacity.setText(null);
                            
                           
                        
                            
                            
                            
                            
                            
                            
                        
                    }
                    }
                    
                    
                catch(Exception w){
                    JOptionPane.showMessageDialog(null, w );
                    
                }
                
                finally{
                    try{
                         Connection pst = null;
                        pst.close();
                                Connection rs = null;
                                rs.close();
                    }catch(Exception r){
                        
                    }
                }
            
                    }
                  
                
                
                    
            
        });
        btnNewButton_15.setFont(new Font("Times New Roman", Font.BOLD, 20));
        btnNewButton_15.setBackground(Color.CYAN);
        btnNewButton_15.setBounds(719, 452, 157, 41);
        panel_3.add(btnNewButton_15);
    }
}


 
    