Saturday, August 22, 2015

jdbc program for generating reports from database


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

public class Reports1 extends JFrame implements ActionListener
{
    DefaultTableModel  dtm;
    JTable table;
    JLabel report;
    JButton getit;
    String cols[]={"sno","sname","avg"};
    Object d[][]=new Object[2][3];
    Container c=getContentPane();
    Connection con=null;
    ResultSet rs=null;
    Statement st=null;
    ResultSetMetaData rsmd=null;
    Dimension dim=getToolkit().getScreenSize();
    public Reports1()
    {
        super("SQL Server Database Connectivity");
        try
        {
            UIManager.setLookAndFeel("javax.swing.plaf.metal.MetalLookAndFeel");
            SwingUtilities.updateComponentTreeUI(this);
            setSize(dim.width,dim.height);
            c = getContentPane();
            c.setBackground(new Color(214,214,173));
            c.setLayout(null);
            dtm = new DefaultTableModel();
            dtm.setDataVector(d,cols);
            table = new JTable(dtm);
            table.setFont( new Font("Arial",Font.BOLD,15));
            table.setRowSelectionAllowed(false);
            dtm.setNumRows(0);
            report=new JLabel("Reports Based on :" ,JLabel.RIGHT);
            getit=new JButton("Get Reports");
            getit.setMnemonic('G');
            getit.addActionListener(this);
            report.setBounds(170,100,120,25);
            getit.setBounds(460,100,150,25);
            c.add(report);
            c.add(getit);
            JScrollPane scrollPane = new JScrollPane(table);
            scrollPane.setBounds(150,200,500,200);
            c.add(scrollPane);
            connect();
        }
        catch(Exception e)
        {
            System.out.println(e);
            e.printStackTrace();
        }
    } // End of Constructor
    public void connect()
    {
        try
        {
            Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
//            con=DriverManager.getConnection("jdbc:odbc:Driver={SQL Server};Server=localhost;Database=sathya","","");
            con=DriverManager.getConnection("jdbc:odbc:sqldsn","sa","");


            st=con.createStatement();
        }
        catch(Exception e)
        {
            e.printStackTrace();
        }
    }//connect
    public void actionPerformed(ActionEvent ae)
    {
        try
        {
            dtm.setNumRows(0);
            if(con==null)
            {
                System.out.println("Connection Not Established");
                return;
            }
            if(con!=null)
            {
                rs=st.executeQuery("select * from student");
                rsmd=rs.getMetaData();
                System.out.println("Query Executed");
                int cnt=rsmd.getColumnCount();
                Object    data1[]=new Object[cnt];
                while(rs.next())
                {
                    for(int i=0;i<cnt;++i)
                    data1[i]=rs.getString(i+1);
                    dtm.addRow(data1);
                }
            }
        }
        catch(Exception e)
        {
        e.printStackTrace();
        }
    }
    public  static void main(String [] args)
    {
        Reports3 rpt=new Reports3();
        rpt.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        rpt.show();
    }
}

No comments:

Post a Comment