JTable与数据库查询

import javax.swing.*;
import javax.swing.event.*;
import java.awt.event.*;
import java.awt.Point;
import java.awt.Dimension;
import java.awt.GridLayout;
import java.awt.BorderLayout;
import javax.swing.table.DefaultTableModel;
import java.util.Vector;
import java.sql.*;
public class AllInfo extends JFrame. implements ActionListener
{
    public AllInfo(){
        setTitle("排课情况信息查询");
        setSize(200,200);
        gl=new GridLayout(1,3,20,20);
        gl2=new GridLayout(1,1,20,20);
        JPanel panel=new JPanel();
        JPanel panel2=new JPanel();
        panel.setLayout(gl);
        panel2.setLayout(gl2);
        datelbl=new JLabel("日期");
        datetex=new JTextField("");
        classtimelbl=new JLabel("节次");
        classtimetex=new JTextField("");
        selectbtn=new ***utton("查询");
        model=new DefaultTableModel();
        messagetab=new JTable(model);
        model.addColumn("日期");
        model.addColumn("节次");
        model.addColumn("课程名称");
        model.addColumn("任课教师");
       
        sp=new JScrollPane(messagetab);
        panel.add(datelbl);
        panel.add(datetex);
        panel.add(classtimelbl);
        panel.add(classtimetex);
        panel.add(selectbtn);
        panel2.add(sp);
        selectbtn.addActionListener(this);
        getContentPane().add(panel,BorderLayout.CENTER);
        getContentPane().add(panel2,BorderLayout.SOUTH);
        sql=("select * from paike");
        //清除以前记录
        for(int n=model.getRowCount()-1;n>=0;n--)
        {
            model.removeRow(n);
        }
        try
        {
            rs=db.getResult(sql);
            rs.beforeFirst();
            while(rs.next()){   
                Vector tempvector=new Vector(1,1);
                tempvector.add(rs.getString(1));
                tempvector.add(rs.getString(2));
                tempvector.add(rs.getString(3));
                tempvector.add(rs.getString(4));
               
                model.addRow(tempvector);
            }
        }catch(SQLException e)
        {
            System.out.println(e);
        }
    }
    public void actionPerformed(ActionEvent e)
    {
        boolean isFirst=true;
        sql="select * from paike";
        for(int n=model.getRowCount()-1;n>=0;n--)
        {
            model.removeRow(n);
        }
        //book 表示书ID
        //author表示USERID
        String date=datetex.getText().trim();
        String classtime=classtimetex.getText().trim();
        if(date.equals("")&classtime.equals(""))
        {
            JOptionPane.showMessageDialog(null,"最少输入一个查找项目");
            return;
        }
        if(!date.equals(""))
        {
           
            sql=sql+" where date1="+date;
            isFirst=false;
        }
        if(!classtime.equals(""))
        {
           
            if(isFirst)
            {
               
                sql=sql+" where classtime="+classtime;
            }
            else
            {
                sql=sql+" and classtime="+classtime;
            }
        }
            rs=db.getResult(sql);
            boolean isexist=false;
                try
                {
                    //把游标指向结果集的第一行,如果没有数据则返回false
                    isexist=rs.first();       
                }
                catch(SQLException w)
                {
                    System.out.println(w);
                }
                //判断结果是否正确
                if(!isexist)
                {
                    JOptionPane.showMessageDialog(null,"没有相关资料");
                    datetex.setText("");
                    classtimetex.setText("");
                    return;
                }
                try
                {
                    rs.beforeFirst();
                    while(rs.next()){   
                    Vector tempvector=new Vector(1,1);
                    tempvector.add(rs.getString(1));
                    tempvector.add(rs.getString(2));
                    tempvector.add(rs.getString(3));
                    tempvector.add(rs.getString(4));
                   
                    model.addRow(tempvector);
                    }
                }
                catch(SQLException e2)
                {
                    System.out.println(e2);
                }}
    private JLabel datelbl;
    private JLabel classtimelbl;
    private JTextField datetex;
    private JTextField classtimetex;
    private ***utton selectbtn;
    private JTable messagetab;
    private JScrollPane sp;
    private GridLayout gl;
    private GridLayout gl2;
    private DBManager db=new DBManager();
    private ResultSet rs;
    private String sql;
    private DefaultTableModel model;
   

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值