I am using Eclipse & Swing to create this project. I am trying to populate a JTable. I've fetched the values from database in the method Display_UserInfo_in_JTable(). 
But I do not know how to use this method to populate my JTable. I think the method should have a return type for this, but I do not know how can I do it?
package view;
import controller.*;
import java.awt.EventQueue;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;
public class TableView {
    private JFrame frame;
    private JTable table;
    /**
     * Launch the application.
     */
    public static void main(String[] args) {
        EventQueue.invokeLater(new Runnable() {
            public void run() {
                try {
                    TableView window = new TableView();
                    window.frame.setVisible(true);
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
        });
    }
    private ArrayList<UserInfo> UserInfoList()
    {
        try
        {
            UserInfo userinfo;
            ArrayList<UserInfo> UserInfoList = new ArrayList<UserInfo>();
            Connection sqlCon = DB_con.getSQLConnection();
            PreparedStatement ps = sqlCon.prepareStatement("select id,name,username,contact,gender from temp");
            ResultSet rs = ps.executeQuery();
            while(rs.next())
            {
                userinfo = new UserInfo(
                                        rs.getInt("id"),
                                        rs.getString("name"),
                                        rs.getString("username"),
                                        rs.getString("contact"),
                                        rs.getString("gender")
                                        );
                UserInfoList.add(userinfo);
            }
            return UserInfoList;
        }
        catch(Exception ex)
        {
            System.out.println(ex.toString());
            return null;
        }       
    }
    public void Display_UserInfo_in_JTable()
    {
        try
        {
            ArrayList<UserInfo> list = UserInfoList();
            DefaultTableModel dtm = new DefaultTableModel();
            Object row[] = new Object[5];
            for(int i = 0 ; i < list.size(); i++)
            {
                row[0] = list.get(i).getId();
                row[1] = list.get(i).getName();
                row[2] = list.get(i).getUsername();
                row[3] = list.get(i).getContact();
                row[4] = list.get(i).getGender();
                dtm.addRow(row);
            }
            table.setModel(dtm);
        }
        catch(Exception ex)
        {
            System.out.println(ex.toString());
        }
    }
    /**
     * Create the application.
     */
    public TableView() {
        initialize();
        Display_UserInfo_in_JTable();
    }
    /**
     * Initialize the contents of the frame.
     */
    private void initialize() {
        frame = new JFrame();
        frame.setBounds(100, 100, 598, 402);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.getContentPane().setLayout(null);
        JPanel panel = new JPanel();
        panel.setBounds(10, 11, 562, 341);
        frame.getContentPane().add(panel);
        panel.setLayout(null);
        table = new JTable();
        //table.setBounds(49, 163, 92, -97);
        JScrollPane jsp = new JScrollPane(table);
        panel.add(table);
    }
}
I've added table.setModel(dtm); in the method Display_UserInfo_in_JTable(), still can not get the result.
 
    