📄 bookinfoframe.java
字号:
import java.awt.*;
import javax.swing.*;
import javax.swing.table.*;
import javax.swing.event.*;
import java.awt.event.*;
import java.util.Vector;
import java.sql.*;
public class BookInfoFrame extends JFrame implements ActionListener
{
private Container c;
private JPanel panel1,panel2,panel3;
private JLabel nameLabel,authorLabel,pubHouLabel;
private JTextField nameText,authorText,pubHouText;
private JButton query,exit;
private JTable table=null;
private DefaultTableModel defaultModel=null;
public BookInfoFrame()
{
super("书籍信息一览!");
c=getContentPane();
c.setLayout(new BorderLayout());
nameLabel=new JLabel("名称",JLabel.CENTER);
authorLabel=new JLabel("作者",JLabel.CENTER);
pubHouLabel=new JLabel("出版社",JLabel.CENTER);
nameText=new JTextField(12);
authorText=new JTextField(12);
pubHouText=new JTextField(12);
query=new JButton("查询");
exit=new JButton("退出");
panel1=new JPanel();
panel1.add(nameLabel);
panel1.add(nameText);
panel1.add(authorLabel);
panel1.add(authorText);
panel2=new JPanel();
panel2.add(pubHouLabel);
panel2.add(pubHouText);
panel2.add(query);
panel2.add(exit);
query.addActionListener(this);
exit.addActionListener(this);
String[] name={"书名","出版社","作者","地址","出版日期","定价","评论"};
String[][] data=new String[0][0];
defaultModel=new DefaultTableModel(data,name);
table=new JTable(defaultModel);
table.setPreferredScrollableViewportSize(new Dimension(400,80));
JScrollPane s=new JScrollPane(table);
panel3=new JPanel();
panel3.add(s);
c.add(panel1,BorderLayout.NORTH);
c.add(panel2,BorderLayout.CENTER);
c.add(panel3,BorderLayout.SOUTH);
setSize(400,300);
setVisible(true);
}
public void actionPerformed(ActionEvent e)
{
int findFlag=0;
if(e.getSource()==exit)
this.dispose();
else if(e.getSource()==query)
{
int rowCount=defaultModel.getRowCount()-1;
int j=rowCount;
for(int i=0;i<=rowCount;i++)
{
defaultModel.removeRow(j);//删除rowCount行的数据;
defaultModel.setRowCount(j);//重新设置行数;
j=j-1;
}
if(pubHouText.getText().equals("")&&authorText.getText().equals("")&&nameText.getText().equals(""))
JOptionPane.showMessageDialog(null,"查询信息不能为空!");
else if(authorText.getText().equals("")&&pubHouText.getText().equals(""))
{
//连接数据库
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(ClassNotFoundException e1)
{
System.out.println(e1.getMessage());
}
try
{
Connection con=DriverManager.getConnection("jdbc:odbc:bookbase");
Statement stmt=con.createStatement();
ResultSet rs=stmt.executeQuery("select * from bookInfo");
while(rs.next())
{
if(nameText.getText().equals(rs.getString("bookName")))
{
findFlag=1;
String s1=nameText.getText();
String s2=rs.getString("pubHouse");
String s3=rs.getString("writer");
String s4=rs.getString("address");
String s5=rs.getString("pubDate");
String s6=rs.getString("price");
String s7=rs.getString("remarks");
Vector v=new Vector();
v.addElement(s1);
v.addElement(s2);
v.addElement(s3);
v.addElement(s4);
v.addElement(s5);
v.addElement(s6);
v.addElement(s7);
defaultModel.addRow(v);//添加一行
}
}
table.revalidate();
stmt.close();
con.close();
if(findFlag==0)
JOptionPane.showMessageDialog(null,"没有此书籍!");
}
catch(SQLException ex)
{
System.out.println("SQLException:"+ex.getMessage());
}
//连接数据库结束
}
else if(nameText.getText().equals("")&&pubHouText.getText().equals(""))
{
//连接数据库
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(ClassNotFoundException e1)
{
System.out.println(e1.getMessage());
}
try
{
Connection con=DriverManager.getConnection("jdbc:odbc:bookbase");
Statement stmt=con.createStatement();
ResultSet rs=stmt.executeQuery("select * from bookInfo");
while(rs.next())
{
if(authorText.getText().equals(rs.getString("writer")))
{
findFlag=1;
String s1=rs.getString("bookName");
String s2=rs.getString("pubHouse");
String s3=authorText.getText();
String s4=rs.getString("address");
String s5=rs.getString("pubDate");
String s6=rs.getString("price");
String s7=rs.getString("remarks");
Vector v=new Vector();
v.addElement(s1);
v.addElement(s2);
v.addElement(s3);
v.addElement(s4);
v.addElement(s5);
v.addElement(s6);
v.addElement(s7);
defaultModel.addRow(v);//添加一行
}
}
table.revalidate();
stmt.close();
con.close();
if(findFlag==0)
JOptionPane.showMessageDialog(null,"没有此作者!");
}
catch(SQLException ex)
{
System.out.println("SQLException:"+ex.getMessage());
}
//连接数据库结束
}
else if(nameText.getText().equals("")&&authorText.getText().equals(""))
{
//连接数据库
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(ClassNotFoundException e1)
{
System.out.println(e1.getMessage());
}
try
{
Connection con=DriverManager.getConnection("jdbc:odbc:bookbase");
Statement stmt=con.createStatement();
ResultSet rs=stmt.executeQuery("select * from bookInfo");
while(rs.next())
{
if(pubHouText.getText().equals(rs.getString("pubHouse")))
{
findFlag=1;
String s1=rs.getString("bookName");
String s2=pubHouText.getText();
String s3=rs.getString("writer");
String s4=rs.getString("address");
String s5=rs.getString("pubDate");
String s6=rs.getString("price");
String s7=rs.getString("remarks");
Vector v=new Vector();
v.addElement(s1);
v.addElement(s2);
v.addElement(s3);
v.addElement(s4);
v.addElement(s5);
v.addElement(s6);
v.addElement(s7);
defaultModel.addRow(v);//添加一行
}
}
table.revalidate();
stmt.close();
con.close();
if(findFlag==0)
JOptionPane.showMessageDialog(null,"没有此出版社!");
}
catch(SQLException ex)
{
System.out.println("SQLException:"+ex.getMessage());
}
//连接数据库结束
}
else if(nameText.getText().equals(""))
{
//连接数据库
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(ClassNotFoundException e1)
{
System.out.println(e1.getMessage());
}
try
{
Connection con=DriverManager.getConnection("jdbc:odbc:bookbase");
Statement stmt=con.createStatement();
ResultSet rs=stmt.executeQuery("select * from bookInfo");
while(rs.next())
{
if(pubHouText.getText().equals(rs.getString("pubHouse"))&&authorText.getText().equals(rs.getString("writer")))
{
findFlag=1;
String s1=rs.getString("bookName");
String s2=pubHouText.getText();
String s3=authorText.getText();
String s4=rs.getString("address");
String s5=rs.getString("pubDate");
String s6=rs.getString("price");
String s7=rs.getString("remarks");
Vector v=new Vector();
v.addElement(s1);
v.addElement(s2);
v.addElement(s3);
v.addElement(s4);
v.addElement(s5);
v.addElement(s6);
v.addElement(s7);
defaultModel.addRow(v);//添加一行
}
}
table.revalidate();
stmt.close();
con.close();
if(findFlag==0)
JOptionPane.showMessageDialog(null,"没有此书!");
}
catch(SQLException ex)
{
System.out.println("SQLException:"+ex.getMessage());
}
//连接数据库结束
}
else if(authorText.getText().equals(""))
{
//连接数据库
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(ClassNotFoundException e1)
{
System.out.println(e1.getMessage());
}
try
{
Connection con=DriverManager.getConnection("jdbc:odbc:bookbase");
Statement stmt=con.createStatement();
ResultSet rs=stmt.executeQuery("select * from bookInfo");
while(rs.next())
{
if(pubHouText.getText().equals(rs.getString("pubHouse"))&&nameText.getText().equals(rs.getString("bookName")))
{
findFlag=1;
String s1=nameText.getText();
String s2=pubHouText.getText();
String s3=rs.getString("writer");
String s4=rs.getString("address");
String s5=rs.getString("pubDate");
String s6=rs.getString("price");
String s7=rs.getString("remarks");
Vector v=new Vector();
v.addElement(s1);
v.addElement(s2);
v.addElement(s3);
v.addElement(s4);
v.addElement(s5);
v.addElement(s6);
v.addElement(s7);
defaultModel.addRow(v);//添加一行
}
}
table.revalidate();
stmt.close();
con.close();
if(findFlag==0)
JOptionPane.showMessageDialog(null,"没有此书!");
}
catch(SQLException ex)
{
System.out.println("SQLException:"+ex.getMessage());
}
//连接数据库结束
}
else if(pubHouText.getText().equals(""))
{
//连接数据库
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(ClassNotFoundException e1)
{
System.out.println(e1.getMessage());
}
try
{
Connection con=DriverManager.getConnection("jdbc:odbc:bookbase");
Statement stmt=con.createStatement();
ResultSet rs=stmt.executeQuery("select * from bookInfo");
while(rs.next())
{
if(authorText.getText().equals(rs.getString("writer"))&&nameText.getText().equals(rs.getString("bookName")))
{
findFlag=1;
String s1=nameText.getText();
String s2=rs.getString("pubHouse");
String s3=authorText.getText();
String s4=rs.getString("address");
String s5=rs.getString("pubDate");
String s6=rs.getString("price");
String s7=rs.getString("remarks");
Vector v=new Vector();
v.addElement(s1);
v.addElement(s2);
v.addElement(s3);
v.addElement(s4);
v.addElement(s5);
v.addElement(s6);
v.addElement(s7);
defaultModel.addRow(v);//添加一行
}
}
table.revalidate();
stmt.close();
con.close();
if(findFlag==0)
JOptionPane.showMessageDialog(null,"没有此书!");
}
catch(SQLException ex)
{
System.out.println("SQLException:"+ex.getMessage());
}
//连接数据库结束
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -