📄 querytea.java
字号:
package scoremis;
import java.awt.*;
import javax.swing.*;
import javax.swing.table.DefaultTableModel; //
import java.until.Vector; //
import java.sql.ResultSet;
import java.awt.event,*;
public class QueryTea extends JPanel
{
BorderLayout borderLayout1=new BorderLayout();//设置各种组件的初始值
JLabel l1=new JLabel("值");
JLabel jLabel1=new JLabel("查询条件");
JComboBox tiaojian=new JCombobox();
JTextField tname=new JTextField(10);
JButton query=new JButton("查询");
JButton scan=new JButton("浏览");
JButton del=new JButton("删除");
JButton edit=new JButton("修改")
JTextField show=new JTextField(10);
Vector tempvector=new Vector(1,1);
DefaultTableModel model=new DefaultTableModel();//定义表格用于显示数据
JTable dbtable=new JTable(model);
JScrollPane sp=new JScrollPane(dbtable);//定义滑块并将滑块添加到表格当中
ResultSet rs=null; //定义数据集并分别定义字符串变量bh,zc,xb,xm用来存放"编号","职称","性别","姓名"
String bh="";
String zc="";
String xb="";
String xm="";
public Querytea()
{
try
{
jbInit();
}
catch(Exception exception)
{exception.printStackTrace();}
}
private void jbInit() throws Exception //添加各种组件
{
add(jLabel1);
add(tiaojian);
tiaojian.addItem(""); //在条件组合框中添加各个选项
tiaojian.addItem("编号");
tiaojian.addItem("姓名");
tiaojian.addItem("性别");
tiaojian.addItem("职称");
add(l1);
add(tname);
add(query);
add(scan);
add(edit);
add(del);
add(sp,"Center");
add(show,"North");
query.addActionListener(new EventHandel());//分别为按钮"查询","浏览","删除","修改"按钮添加监视器
scan.addActionListener(new EventHandel());
edit.addActionListener(new EventHandel());
del.addActionListener(new EventHandel());
edit.setEnabled(false); //设修改删除按钮的初始值为不可使用状态
del.setEnabled(false);
model.addColumn("编号"); //设表格的各列的名称分别为:"编号","姓名","性别","职称"
model.addColumn("姓名");
model.addColumn("性别");
model.addColumn("职称");
dbtable.addMouseListener(new MouseAdapter()) //监视表格
public void mouseClicked(MouseEvent e)
{ //给表格添加监视器,当鼠标点击某条记录时,进行修改和删除
int j=dbtable.getSelectedrow(); //利用整型变量j记录表格中的行数
bh=(String) model.getValueAt(j,0);//用字符串变量bh,xm,xb,zc分别记录下第j行第i列的值
xm=(String) model.getValueAt(j,1);
xb=(String) model.getValueAt(j,2);
zc=(String) model.getVauleAt(j,3);
edit.setEnabled(true);
del.setEnabled(true);
}
}
}
class EventHadel implements ActionListener //事件处理类
{
public void actionPerformed(ActionEvent e)
{
dbconn db=new dbconn();
String sql="";
if(e.getSource()==scan || e.getSource==query)//用于处理"浏览","查询"的事件
{
int j=model.getRowCount();
if(j>0)
{
for(int i=0;i<j;i++)
model.removeRow(0);
}
if(e.getSource()==query) //如果查询按钮获得焦点的事件处理
{
String tj=(String)tiaojian.getSelectedItem();
String mingcheng="";
if(tj.equals("编号"))
mingcheng="ID";
if(tj.equals("姓名"))
mingcheng="name";
if(tj.equals("性别"))
mingcheng="sex";
else
mingcheng="title";
sql="select * from teacher where " + mingcheng + "='" tname.getText() "'";
}
else if(e.getSource()==scan) //浏览按钮获得焦点的事件处理
sql="select * from teacher";
try
{
rs=db.Query(sql); //执行查询操作
int i=0;
while(rs.next())
{
i++;
String tbh=rs.getString(1);
if(!tbh.startsWith("admin"))
{
tempvector=new Vector(1.1);
tempvector.add(tbh);
tempvector.add(rs.getString(2));
tempvector.add(rs.getString(4));
tempvector.add(rs.getString(5));
model.addRow(tempvector); //将查询结果添加到表格中
}
}
if(i==0)
JOptionPane.showMessageDialog(null,"数据库中尚未录入教师");
dbtable.setRowSelectionAllowed(true);
int rs=dbtable.getSelectedRow();
}
catch(Exception e2)
{
System.out.println(e2.toString());
}
}
else if(e.getSource()==edit) //修改按钮获得焦点的事件处理
{
Toolkit tk=Toolkit.getDefaultToolkit();
Dimension sSize=tk.getScreenSize(); //
int sh=sSize.height;
int sw=sSize.width;
editTea er=new editTea(bh,xm,xb,zc); //调用类editTea的构造函数
JFrame editframe=new JFrame();
editframe.add(er);
editframe.setSize(sh/2,sh/2);
editframe.setLocation(sh/4,sh/4);
editframe.setVisible(true);
}
else if(e.getSource()==del) //删除按钮获得焦点的事件处理
{
try
{
dbtable.setVisible(false);
int e1=JOptionPane.showConfirmDialog(null,"确定要删除吗","确认",JOption Pane.OK_CANCEL_OPTION);
if(e1==0)
{
String sql2="";
String sql3="";
if(!tname.getText().equals(""))
{
sql="select ID from teacher where name='"+ tname.getText() +"'";
Resultset rs=db.Query(sql);
if(rs.next())
bh=rs.getString(1);
}
sql="delete * from teacher where ID='"+ bh +"'"; //从teacher表中删除相应的记录
sql2="select * from T_C where tID='"+ bh +"'"; //从tc:教师任课表中查询符合条件的记录并删除
sql3="delete * from T_C where tID='"+ bh +"'";
int i=db.Update(sql); //执行删除操作
if(i>0) // 根据执行sql语句的结果弹出相应的信息提示框
{
ResultSet rs=db.Query(sql2);
boolean hava=false;
if(rs.next())
have=true ;
if(have==true)
{
int j=db.Update(sql3);
if(j>0)
JOptionPane.showMessageDialog(null,"删除成功");
}
else
{
JOptionPane.showMessageDialog(null,"删除成功");
}
}
}
}catch(Exception er){}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -