📄 todayborrowinfo.java
字号:
//今日借阅信息
import java.awt.*;
import javax.swing.*;
import javax.swing.table.*;
import java.awt.event.*;
import javax.swing.event.*;
import java.sql.*;
import java.io.*;
import java.util.*;
import java.util.Date;
import java.text.SimpleDateFormat;
public class TodayBorrowInfo extends JFrame implements ActionListener
{ public JToolBar JTB;
public JButton btn2,btn7,btn8,btn9;
public JLabel statusLB,statusLB1,statusLB2,statusLB3;
public JPanel jp1,statusPane,statusPane1,statusPane2,statusPane3;
public JTable jta,jta1;
public int bc,rbc,bdc;
public Statement stmt,stmt1,stmt2;
public Connection con,con1,con2;
public Date nowTime;
public SimpleDateFormat matter;
public JFrame frame;
public Object rowData[][],rowData1[][];
public Toolkit tool;
public Dimension wndsize;
public TodayBorrowInfo()
{
JFrame.setDefaultLookAndFeelDecorated(true);
frame=new JFrame("今日借阅信息查询");
ImageIcon icon=new ImageIcon("images/home.gif");
frame.setIconImage(icon.getImage());
frame.setResizable(false);
Font font1=new Font("宋体",Font.PLAIN,15);
Container content=frame.getContentPane();
content.setLayout(null);
tool=frame.getToolkit();
wndsize=tool.getScreenSize();
int width=tool.getScreenSize().width;
int height=tool.getScreenSize().height;
//--初始化工具栏各个组件--
btn2=new JButton("全部信息",new ImageIcon("images/BOOKS01.gif"));
btn7=new JButton("打印预览",new ImageIcon("images/text.gif"));
btn8=new JButton("导出数据",new ImageIcon("images/save.gif"));
btn9=new JButton("退出",new ImageIcon("images/ren1.gif"));
//--设置工具栏各个组件的提示--
btn2.setToolTipText("查询今日全部借书信息");
btn7.setToolTipText("打印预览");
btn8.setToolTipText("导出数据");
btn9.setToolTipText("退出");
//--为工具栏中各个组件添加事件--
btn2.addActionListener(this);
btn7.addActionListener(this);
btn8.addActionListener(this);
btn9.addActionListener(this);
//--为工具栏中各个组件设置字体--
btn2.setFont(font1);
btn7.setFont(font1);
btn8.setFont(font1);
btn9.setFont(font1);
//--添加工具栏各个组件--
JTB=new JToolBar();
JTB.addSeparator();
JTB.addSeparator();
JTB.add(btn2);
JTB.addSeparator();
JTB.add(btn7);
JTB.add(btn8);
JTB.addSeparator();
JTB.add(btn9);
JTB.setFont(font1);
JTB.setFloatable(false);
JTB.setBorder(BorderFactory.createLoweredBevelBorder());
JTB.setBounds(0,2,width-10,45);
//--初始化基本设置各个组件--
Object columnNames[]={"读者姓名","读者编号","读者条形码","图书名称","图书编号","图书条形码","借阅数量","价格","出版社","存放位置","图书类型","借书日期","应还日期","操作员","续借","是否超期"};
rowData=new Object[100][16];
jta=new JTable(rowData,columnNames);
jta.setRowHeight(20);
jta.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
try{ view();}
catch(SQLException ed){}
jta.setPreferredScrollableViewportSize(new Dimension(500,30));
JScrollPane scrollPane=new JScrollPane(jta,
JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,
JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
Object columnNames1[]={"读者姓名","读者编号","读者条形码","图书名称","图书编号","图书条形码","续借数量","图书价格","出版社","存放位置","图书类型","上次借阅时间","本次续借时间","下次归还时间","操作员","续借次数","是否超期"};
rowData1=new Object[100][17];
jta1=new JTable(rowData1,columnNames1);
jta1.setRowHeight(20);
jta1.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
jta1.setPreferredScrollableViewportSize(new Dimension(500,30));
JScrollPane scrollPane1=new JScrollPane(jta1,
JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,
JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
//--设置各个组件的大小和位置--
scrollPane.setBounds(10,24,width-40,height-450);
scrollPane1.setBounds(10,350,width-40,height-465);
//--设置各个组件的字体--
jta.setFont(font1);
jta1.setFont(font1);
//--将各个组件添加到容器中--
jp1=new JPanel();
jp1.setLayout(null);
jp1.add(scrollPane);
jp1.add(scrollPane1);
jp1.setBorder(
BorderFactory.createCompoundBorder(
BorderFactory.createTitledBorder("查询结果"),
BorderFactory.createLoweredBevelBorder()));
jp1.setBounds(8,45,width-20,height-105);
//--创建状态栏--
statusPane=new JPanel();
statusPane1=new JPanel();
statusPane2=new JPanel();
statusPane.setLayout(null);
statusPane1.setLayout(null);
statusPane2.setLayout(null);
//--初始化状态栏中各个组件--
statusLB=new JLabel("借阅图书总量为:"+bc+"(册)",JLabel.CENTER);
statusLB1=new JLabel("续借图书总量为:"+rbc+"(册)",JLabel.CENTER);
statusLB2=new JLabel("超期图书数量为:"+bdc+"(册)",JLabel.CENTER);
//--设置状态栏中各个组件的字体--
statusLB.setFont(font1);
statusLB1.setFont(font1);
statusLB2.setFont(font1);
//--设置状态栏中各个组件的大小和位置--
statusLB.setBounds(0,0,width/3,25);
statusLB1.setBounds(0,0,width/3,25);
statusLB2.setBounds(0,0,width/3,25);
statusPane.setBounds(0,height-59,width/3,25);
statusPane1.setBounds(width/3,height-59,width/3,25);
statusPane2.setBounds((2*width)/3,height-59,width/3,25);
//--添加状态栏--
statusPane.add(statusLB);
statusPane.setBorder(BorderFactory.createLoweredBevelBorder());
statusPane1.add(statusLB1);
statusPane1.setBorder(BorderFactory.createLoweredBevelBorder());
statusPane2.add(statusLB2);
statusPane2.setBorder(BorderFactory.createLoweredBevelBorder());
//--把各个组件添加到窗口中--
content.add(JTB);
content.add(jp1);
content.add(statusPane);
content.add(statusPane1);
content.add(statusPane2);
frame.setSize(wndsize);
frame.setLocationRelativeTo(null);
frame.setVisible(true);
}
public void actionPerformed(ActionEvent e)
{ Object obj=e.getSource();
if(obj==btn2)//全部信息按钮事件
{try{ setnull();}
catch(SQLException ed){}
try{ view();}
catch(SQLException ed){}
}
if(obj==btn7)//打印预览按钮事件
{}
if(obj==btn8)//导出数据按钮事件
{}
if(obj==btn9)//退出按钮事件
{frame.dispose();}
}
/////////////////////设置借书统计表格为空///////////////////////////////////////////////////////////////////
public void setnull() throws SQLException
{int i=0;
try{
String strurl =
"jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=DataBase/Library.mdb";
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
con= DriverManager.getConnection(strurl);
stmt = con.createStatement();
ResultSet rs=stmt.executeQuery("SELECT * From 借书统计 ");
while(rs.next())
{
rowData[i][0]=null;rowData[i][1]=null;rowData[i][2]=null;
rowData[i][3]=null;rowData[i][4]=null;rowData[i][5]=null;
rowData[i][6]=null;rowData[i][7]=null;rowData[i][8]=null;
rowData[i][9]=null;rowData[i][10]=null;rowData[i][11]=null;
rowData[i][12]=null;rowData[i][13]=null;rowData[i][14]=null;rowData[i][15]=null;
i++;
validate();
}
rowData[i][0]=null;rowData[i][1]=null;rowData[i][2]=null;
rowData[i][3]=null;rowData[i][4]=null;rowData[i][5]=null;
rowData[i][6]=null;rowData[i][7]=null;rowData[i][8]=null;
rowData[i][9]=null;rowData[i][10]=null;rowData[i][11]=null;
rowData[i][12]=null;rowData[i][13]=null;rowData[i][14]=null;rowData[i][15]=null;
jta.repaint();
}
catch(Exception g)
{g.printStackTrace();}
}
/////////////////////表格显示数据库中数据代码///////////////////////////////////////////////////////////////////
public void view() throws SQLException
{int i=0;
bc=0;rbc=0;bdc=0;
String s="无";
nowTime=new Date();
matter=new SimpleDateFormat("yyyy-MM-dd");
try{ String dzxm,dzbh,txm,xb,sf,yxzj,zjhm,zcrq,zxrq,csrq,lxdh,lxdz,dzzt,kjsl,zcqx,jycs,czy,bz;
String strurl=
"jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=DataBase/Library.mdb";
try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");}
catch (ClassNotFoundException eg) {}
con= DriverManager.getConnection(strurl);
stmt= con.createStatement();
ResultSet rs = stmt.executeQuery("select * from 借书统计 where 借书日期='"+matter.format(nowTime)+"'AND 续借='"+s+"' ORDER BY 读者编号");
while(rs.next())
{ dzxm=rs.getString("读者姓名");dzbh=rs.getString("读者编号");txm=rs.getString("读者条形码");
xb=rs.getString("图书名称");sf=rs.getString("图书编号");yxzj=rs.getString("图书条形码");zjhm=rs.getString("借阅数量");
zcrq=String.valueOf(rs.getInt("图书价格"));zxrq=rs.getString("出版社");csrq=rs.getString("存放位置");
lxdh=rs.getString("图书类型");lxdz=rs.getString("借书日期");dzzt=rs.getString("应还日期");
zcqx=rs.getString("操作员");jycs=rs.getString("续借");czy=rs.getString("是否超期");
bc++;
if(jycs.equals("已续借"))
{rbc++;}
if(czy.equals("是"))
{bdc++;}
rowData[i][0]=dzxm;rowData[i][1]=dzbh;rowData[i][2]=txm;rowData[i][3]=xb;
rowData[i][4]=sf;rowData[i][5]=yxzj;rowData[i][6]=zjhm;rowData[i][7]=zcrq;
rowData[i][8]=zxrq;rowData[i][9]=csrq;rowData[i][10]=lxdh;rowData[i][11]=lxdz;
rowData[i][12]=dzzt;rowData[i][13]=zcqx;rowData[i][14]=jycs;rowData[i][15]=czy;i++;
}
jta.repaint();
con.close();
}
catch(Exception es)
{es.printStackTrace();}
}
/////////////////////设置续借表格为空///////////////////////////////////////////////////////////////////
public void setnull1() throws SQLException
{int i=0;
try{
String strurl =
"jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=DataBase/Library.mdb";
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
con= DriverManager.getConnection(strurl);
stmt = con.createStatement();
ResultSet rs=stmt.executeQuery("SELECT * From 续借统计 ");
while(rs.next())
{
rowData1[i][0]=null;rowData1[i][1]=null;rowData1[i][2]=null;
rowData1[i][3]=null;rowData1[i][4]=null;rowData1[i][5]=null;
rowData1[i][6]=null;rowData1[i][7]=null;rowData1[i][8]=null;
rowData1[i][9]=null;rowData1[i][10]=null;rowData1[i][11]=null;
rowData1[i][12]=null;rowData1[i][13]=null;rowData1[i][14]=null;
rowData1[i][15]=null;rowData1[i][16]=null;
i++;
validate();
}
rowData1[i][0]=null;rowData1[i][1]=null;rowData1[i][2]=null;
rowData1[i][3]=null;rowData1[i][4]=null;rowData1[i][5]=null;
rowData1[i][6]=null;rowData1[i][7]=null;rowData1[i][8]=null;
rowData1[i][9]=null;rowData1[i][10]=null;rowData1[i][11]=null;
rowData1[i][12]=null;rowData1[i][13]=null;rowData1[i][14]=null;
rowData1[i][15]=null;rowData1[i][16]=null;
jta1.repaint();
}
catch(Exception g)
{g.printStackTrace();}
}
/////////////////////表格显示数据库续借统计中数据代码///////////////////////////////////////////////////////////////////
public void view1() throws SQLException
{int i=0;
try{ String dzxm,dzbh,txm,xb,sf,yxzj,zjhm,zcrq,zxrq,csrq,lxdh,lxdz,dzzt,kjsl,zcqx,jycs,czy,bz,borrowed;
String strurl=
"jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=DataBase/Library.mdb";
try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");}
catch (ClassNotFoundException eg) {}
con= DriverManager.getConnection(strurl);
stmt= con.createStatement();
ResultSet rs = stmt.executeQuery("select * from 续借统计 where 本次续借时间='"+matter.format(nowTime)+"'");
while(rs.next())
{ dzxm=rs.getString("读者姓名");dzbh=rs.getString("读者编号");txm=rs.getString("读者条形码");
xb=rs.getString("图书名称");sf=rs.getString("图书编号");yxzj=rs.getString("图书条形码");zjhm=rs.getString("续借数量");
zcrq=String.valueOf(rs.getInt("图书价格"));zxrq=rs.getString("出版社");csrq=rs.getString("存放位置");
lxdh=rs.getString("图书类型");lxdz=rs.getString("上次借阅时间");dzzt=rs.getString("本次续借时间");
zcqx=rs.getString("下次归还时间");czy=rs.getString("操作员");bz=rs.getString("续借次数");
borrowed=rs.getString("是否超期");
rowData1[i][0]=dzxm;rowData1[i][1]=dzbh;rowData1[i][2]=txm;rowData1[i][3]=xb;
rowData1[i][4]=sf;rowData1[i][5]=yxzj;rowData1[i][6]=zjhm;rowData1[i][7]=zcrq;
rowData1[i][8]=zxrq;rowData1[i][9]=csrq;rowData1[i][10]=lxdh;rowData1[i][11]=lxdz;
rowData1[i][12]=dzzt;rowData1[i][13]=zcqx;rowData1[i][14]=czy;rowData1[i][15]=bz;
rowData1[i][16]=borrowed;
i++;
}
jta1.repaint();
con.close();
}
catch(Exception es)
{es.printStackTrace();}
}
public static void main(String[]args)
{ try {
UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");
}
catch(Exception e) {
e.printStackTrace();
}
new TodayBorrowInfo();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -