?? allbook.java
字號:
package bookmanager;
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 AllBook extends JFrame implements ActionListener
{
public AllBook(){
setTitle("書籍信息查詢");
setSize(200,200);
gl=new GridLayout(2,4,20,20);
gl2=new GridLayout(1,1,20,20);
JPanel panel=new JPanel();
JPanel panel2=new JPanel();
panel.setLayout(gl);
panel2.setLayout(gl2);
booknamelbl=new JLabel("名稱");
booknametex=new JTextField("");
authorlbl=new JLabel("作者");
authortex=new JTextField("");
publiclbl=new JLabel("書ID");
publictex=new JTextField("");
selectbtn=new JButton("查詢");
model=new DefaultTableModel();
messagetab=new JTable(model);
model.addColumn("書ID");
model.addColumn("書名");
model.addColumn("出版社");
model.addColumn("作者");
model.addColumn("地址");
model.addColumn("出版日期");
model.addColumn("價格");
model.addColumn("評論");
sp=new JScrollPane(messagetab);
panel.add(booknamelbl);
panel.add(booknametex);
panel.add(authorlbl);
panel.add(authortex);
panel.add(publiclbl);
panel.add(publictex);
panel.add(selectbtn);
panel2.add(sp);
selectbtn.addActionListener(this);
getContentPane().add(panel,BorderLayout.CENTER);
getContentPane().add(panel2,BorderLayout.SOUTH);
sql=("select * from book");
//清除以前記錄
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));
tempvector.add(rs.getString(5));
tempvector.add(rs.getString(6));
tempvector.add(rs.getString(7));
tempvector.add(rs.getString(8));
model.addRow(tempvector);
}
}catch(SQLException e)
{
System.out.println(e);
}
}
public void actionPerformed(ActionEvent e)
{
boolean isFirst=true;
sql="select * from book";
for(int n=model.getRowCount()-1;n>=0;n--)
{
model.removeRow(n);
}
String book=booknametex.getText().trim();
String author=authortex.getText().trim();
String id=publictex.getText().trim();
if(book.equals("")&author.equals("")&id.equals(""))
{
JOptionPane.showMessageDialog(null,"最少輸入一個查找項(xiàng)目");
return;
}
if(!book.equals(""))
{
sql=sql+" where bookname='"+book+"'";
isFirst=false;
}
if(!author.equals(""))
{
if(isFirst)
{
sql=sql+" where author='"+author+"'";
}
else
{
sql=sql+" and author='"+author+"'";
}
}
if(!id.equals(""))
{
Long intid=new Long(id);
if(isFirst)
{
sql=sql+" where id="+intid;
}
else
{
sql=sql+" and id="+intid;
}
}
rs=db.getResult(sql);
boolean isexist=false;
try
{
//把游標(biāo)指向結(jié)果集的第一行,如果沒有數(shù)據(jù)則返回false
isexist=rs.first();
}
catch(SQLException w)
{
System.out.println(w);
}
//判斷結(jié)果是否正確
if(!isexist)
{
JOptionPane.showMessageDialog(null,"沒有相關(guān)資料");
booknametex.setText("");
authortex.setText("");
publictex.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));
tempvector.add(rs.getString(5));
tempvector.add(rs.getString(6));
tempvector.add(rs.getString(7));
tempvector.add(rs.getString(8));
model.addRow(tempvector);
}
}
catch(SQLException e2)
{
System.out.println(e2);
}
}
private JLabel booknamelbl;
private JLabel authorlbl;
private JLabel publiclbl;
private JTextField booknametex;
private JTextField authortex;
private JTextField publictex;
private JButton 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;
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -