📄 bookinfof.java
字号:
//图书信息查询
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.table.*;
import java.util.*;
import java.sql.*;
import javax.swing.table.AbstractTableModel;
public class BookInfoF extends JFrame implements ActionListener
{ private JFrame frame;
private Statement stmt;
private Connection con;
private JButton btn,btn1;
private JRadioButton rbtn1,rbtn2;
private JComboBox jcb1,jcb2;
private JLabel lb1,lb2;
private JTextField jtfd1,jtfd2;
private BookInfomationF bookI;
public BookInfoF(BookInfomationF bookI)
{
frame=new JFrame("图书信息查询");
ImageIcon icon=new ImageIcon("images/home.gif");
frame.setIconImage(icon.getImage());
frame.setResizable(false);
Font font1=new Font("宋体",Font.PLAIN,13);
Container content=frame.getContentPane();
this.bookI=bookI;
//--创建各个组件--
btn=new JButton("执行查询",new ImageIcon("images/findddd.gif"));
btn1=new JButton("执行查询1",new ImageIcon("images/findddd.gif"));
lb1=new JLabel("关键词语:");
lb2=new JLabel("关键词语:");
String[] s1={"图书编号","图书条形码","图书名称","图书作者","图书类型","图书价格","图书页码","出版社名称","书架名称","出版日期","入库日期","借阅次数","图书状态","操作员"};
jcb1=new JComboBox(s1);
jcb2=new JComboBox(s1);
jtfd1=new JTextField();
jtfd2=new JTextField();
JPanel pl=new JPanel();
rbtn1=new JRadioButton("模糊查询方式:");
rbtn2=new JRadioButton("精确查询方式:");
//--设置各个组件的事件--
jcb1.addActionListener(this);
jcb2.addActionListener(this);
rbtn1.addActionListener(this);
rbtn2.addActionListener(this);
btn.addActionListener(this);
btn1.addActionListener(this);
//--设置单选按钮组--
ButtonGroup group=new ButtonGroup();
group.add(rbtn1);
group.add(rbtn2);
//--设置各个组件的大小和位置--
rbtn1.setBounds(30,20,120,25);
jcb1.setBounds(160,20,150,25);
lb1.setBounds(60,50,80,25);
jtfd1.setBounds(160,50,150,25);
rbtn2.setBounds(30,80,120,25);
jcb2.setBounds(160,80,150,25);
lb2.setBounds(60,110,80,25);
jtfd2.setBounds(160,110,150,25);
btn.setBounds(100,145,150,40);
btn1.setBounds(100,145,150,40);
//--设置各个组件的字体--
lb1.setFont(font1);
lb2.setFont(font1);
jcb1.setFont(font1);
jcb2.setFont(font1);
rbtn1.setFont(font1);
rbtn2.setFont(font1);
jtfd1.setFont(font1);
jtfd2.setFont(font1);
btn.setFont(font1);
btn1.setFont(font1);
//设置各个组件初始化时不可用
rbtn1.setSelected(true);
jcb2.setEnabled(false);
jtfd2.setEnabled(false);
btn.setVisible(true);
btn1.setVisible(false);
//--添加各个组件--
pl.setLayout(null);
pl.add(rbtn1);
pl.add(jcb1);
pl.add(lb1);
pl.add(jtfd1);
pl.add(rbtn2);
pl.add(jcb2);
pl.add(lb2);
pl.add(jtfd2);
pl.add(btn);
pl.add(btn1);
pl.setBorder(BorderFactory.createLoweredBevelBorder());
pl.setBounds(30,30,300,120);
content.add(pl);
frame.pack();
frame.setBounds(300,200,350,230);
frame.setVisible(true);
}
public void actionPerformed(ActionEvent e)
{Object obj=e.getSource();
if(obj==btn)//执行查询按钮
{ try{ bookI.setnull();}
catch(SQLException ed){}
try{ Query();}
catch(SQLException ed){}
}
if(obj==btn1)//执行查询按钮
{ try{ bookI.setnull();}
catch(SQLException ed){}
try{ Query1();}
catch(SQLException ed){}
}
if(rbtn1.isSelected())//按模糊方式查询
{jcb1.setEnabled(true);
jtfd1.setEnabled(true);
jcb2.setEnabled(false);
jtfd2.setEnabled(false);
btn.setVisible(true);
btn1.setVisible(false);
}
if(rbtn2.isSelected())//按精确方式查询
{jcb1.setEnabled(false);
jtfd1.setEnabled(false);
jcb2.setEnabled(true);
jtfd2.setEnabled(true);
btn.setVisible(false);
btn1.setVisible(true);
}
}
//模糊查询图书资料代码///////////////////////////////////////////////////////////////////////
public void Query() throws SQLException
{ int i=0;
String rs1="";
String like=jtfd1.getText().trim();
String tsmc,bh,txm,flf,zz,lx,jg,cbs,ym,sjmc,cbrq,rkrq,tszt,kcl,jycs,czy,zy;
String strurl =
"jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=DataBase/Library.mdb";
try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");}
catch (ClassNotFoundException e) {}
con= DriverManager.getConnection(strurl);
Statement stmt = con.createStatement();
if(jcb1.getSelectedIndex()==0)//按图书编号模糊查询
{ rs1="select * from 图书资料 where 编号 LIKE '%"+like+"%' ORDER BY 编号";}
if(jcb1.getSelectedIndex()==1)//按图书条形码模糊查询
{ rs1="select * from 图书资料 where 条形码 LIKE '%"+like+"%' ORDER BY 编号";}
if(jcb1.getSelectedIndex()==2)//按图书名称模糊查询
{ rs1="select * from 图书资料 where 图书名称 LIKE '%"+like+"%' ORDER BY 编号";}
if(jcb1.getSelectedIndex()==3)//按图书作者模糊查询
{ rs1="select * from 图书资料 where 作者 LIKE '%"+like+"%' ORDER BY 编号";}
if(jcb1.getSelectedIndex()==4)//按图书类型模糊查询
{ rs1="select * from 图书资料 where 类型 LIKE '%"+like+"%' ORDER BY 编号";}
if(jcb1.getSelectedIndex()==5)//按图书价格模糊查询
{ rs1="select * from 图书资料 where 价格 LIKE '%"+like+"%' ORDER BY 编号";}
if(jcb1.getSelectedIndex()==6)//按图书页码模糊查询
{ rs1="select * from 图书资料 where 页码 LIKE '%"+like+"%' ORDER BY 编号";}
if(jcb1.getSelectedIndex()==7)//按图书出版社模糊查询
{ rs1="select * from 图书资料 where 出版社 LIKE '%"+like+"%' ORDER BY 编号";}
if(jcb1.getSelectedIndex()==8)//按图书书架名称模糊查询
{ rs1="select * from 图书资料 where 书架名称 LIKE '%"+like+"%' ORDER BY 编号";}
if(jcb1.getSelectedIndex()==9)//按图书出版日期模糊查询
{ rs1="select * from 图书资料 where 出版日期 LIKE '%"+like+"%' ORDER BY 编号";}
if(jcb1.getSelectedIndex()==10)//按图书入库日期模糊查询
{ rs1="select * from 图书资料 where 入库日期 LIKE '%"+like+"%' ORDER BY 编号";}
if(jcb1.getSelectedIndex()==11)//按图书借阅次数模糊查询
{ rs1="select * from 图书资料 where 借阅次数 LIKE '%"+like+"%' ORDER BY 编号";}
if(jcb1.getSelectedIndex()==12)//按图书状态模糊查询
{ rs1="select * from 图书资料 where 图书状态 LIKE '%"+like+"%' ORDER BY 编号";}
if(jcb1.getSelectedIndex()==13)//按图书操作员模糊查询
{ rs1="select * from 图书资料 where 操作员 LIKE '%"+like+"%' ORDER BY 编号";}
ResultSet rs=stmt.executeQuery(rs1);
while(rs.next())
{ tsmc=rs.getString("图书名称");bh=rs.getString("编号");txm=rs.getString("条形码");
flf=rs.getString("分类法");zz=rs.getString("作者");lx=rs.getString("类型");
jg=rs.getString("价格");cbs=rs.getString("出版社");ym=rs.getString("页码");
sjmc=rs.getString("书架名称");cbrq=rs.getString("出版日期");rkrq=rs.getString("入库日期");
kcl=rs.getString("库存量");jycs=rs.getString("借阅次数");tszt=rs.getString("图书状态");czy=rs.getString("操作员");zy=rs.getString("摘要");
bookI.rowData[i][0]=tsmc;bookI.rowData[i][1]=bh;bookI.rowData[i][2]=txm;
bookI.rowData[i][3]=flf;bookI.rowData[i][4]=zz;bookI.rowData[i][5]=lx;
bookI.rowData[i][6]=jg;bookI.rowData[i][7]=cbs;bookI.rowData[i][8]=ym;
bookI.rowData[i][9]=sjmc;bookI.rowData[i][10]=cbrq;bookI.rowData[i][11]=rkrq;
bookI.rowData[i][12]=kcl;bookI.rowData[i][13]=jycs;bookI.rowData[i][14]=tszt;
bookI.rowData[i][15]=czy;bookI.rowData[i][16]=zy;i++;
}
}
//精确查询图书资料代码///////////////////////////////////////////////////////////////////////
public void Query1() throws SQLException
{ int i=0;
String rs1="";
String sure=jtfd2.getText().trim();
String tsmc,bh,txm,flf,zz,lx,jg,cbs,ym,sjmc,cbrq,rkrq,tszt,kcl,jycs,czy,zy;
String strurl =
"jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=DataBase/Library.mdb";
try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");}
catch (ClassNotFoundException e) {}
con= DriverManager.getConnection(strurl);
Statement stmt = con.createStatement();
if(jcb1.getSelectedIndex()==0)//按图书编号精确查询
{ rs1="select * from 图书资料 where 编号 ='"+sure+"' ORDER BY 编号";}
if(jcb1.getSelectedIndex()==1)//按图书条形码精确查询
{ rs1="select * from 图书资料 where 条形码 ='"+sure+"' ORDER BY 编号";}
if(jcb1.getSelectedIndex()==2)//按图书名称精确查询
{ rs1="select * from 图书资料 where 图书名称 ='"+sure+"' ORDER BY 编号";}
if(jcb1.getSelectedIndex()==3)//按图书作者精确查询
{ rs1="select * from 图书资料 where 作者='"+sure+"' ORDER BY 编号";}
if(jcb1.getSelectedIndex()==4)//按图书类型精确查询
{ rs1="select * from 图书资料 where 类型 ='"+sure+"' ORDER BY 编号";}
if(jcb1.getSelectedIndex()==5)//按图书价格精确查询
{ rs1="select * from 图书资料 where 价格 ='"+sure+"' ORDER BY 编号";}
if(jcb1.getSelectedIndex()==6)//按图书页码精确查询
{ rs1="select * from 图书资料 where 页码 ='"+sure+"' ORDER BY 编号";}
if(jcb1.getSelectedIndex()==7)//按图书出版社精确查询
{ rs1="select * from 图书资料 where 出版社 ='"+sure+"' ORDER BY 编号";}
if(jcb1.getSelectedIndex()==8)//按图书书架名称精确查询
{ rs1="select * from 图书资料 where 书架名称 ='"+sure+"' ORDER BY 编号";}
if(jcb1.getSelectedIndex()==9)//按图书出版日期精确查询
{ rs1="select * from 图书资料 where 出版日期 ='"+sure+"' ORDER BY 编号";}
if(jcb1.getSelectedIndex()==10)//按图书入库日期精确查询
{ rs1="select * from 图书资料 where 入库日期 ='"+sure+"' ORDER BY 编号";}
if(jcb1.getSelectedIndex()==11)//按图书借阅次数精确查询
{ rs1="select * from 图书资料 where 借阅次数 ='"+sure+"' ORDER BY 编号";}
if(jcb1.getSelectedIndex()==12)//按图书状态精确查询
{ rs1="select * from 图书资料 where 图书状态 ='"+sure+"' ORDER BY 编号";}
if(jcb1.getSelectedIndex()==13)//按图书操作员精确查询
{ rs1="select * from 图书资料 where 操作员 ='"+sure+"' ORDER BY 编号";}
ResultSet rs=stmt.executeQuery(rs1);
while(rs.next())
{ tsmc=rs.getString("图书名称");bh=rs.getString("编号");txm=rs.getString("条形码");
flf=rs.getString("分类法");zz=rs.getString("作者");lx=rs.getString("类型");
jg=rs.getString("价格");cbs=rs.getString("出版社");ym=rs.getString("页码");
sjmc=rs.getString("书架名称");cbrq=rs.getString("出版日期");rkrq=rs.getString("入库日期");
kcl=rs.getString("库存量");jycs=rs.getString("借阅次数");tszt=rs.getString("图书状态");czy=rs.getString("操作员");zy=rs.getString("摘要");
bookI.rowData[i][0]=tsmc;bookI.rowData[i][1]=bh;bookI.rowData[i][2]=txm;
bookI.rowData[i][3]=flf;bookI.rowData[i][4]=zz;bookI.rowData[i][5]=lx;
bookI.rowData[i][6]=jg;bookI.rowData[i][7]=cbs;bookI.rowData[i][8]=ym;
bookI.rowData[i][9]=sjmc;bookI.rowData[i][10]=cbrq;bookI.rowData[i][11]=rkrq;
bookI.rowData[i][12]=kcl;bookI.rowData[i][13]=jycs;bookI.rowData[i][14]=tszt;
bookI.rowData[i][15]=czy;bookI.rowData[i][16]=zy;i++;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -