这两天还是在继续对图书馆系统的每个模块进行学习编写。现在对数据库jdbc的连接以及用过具体的java功能实现的操作可以说是掌握了。
因为今天对这个查感触颇深,而且觉得平时,首先能查看到数据库的信息,将其在编写的程序中成功的显示出来,是第一步,然后再进行什么增加删除的。
package 图书借阅归还;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;
import javax.swing.JOptionPane;
public class BookManage {
public List<Books> seekBookId(String id){
List<Books> list=new ArrayList<Books>();
Books book;
Connection con=DBUtil.getConnection();
try {
String sql;
if (id=="")
sql="select * from books";
else
sql="select * from books where book_id='"+id+"'";
Statement sm=con.createStatement();
ResultSet rs=sm.executeQuery(sql);
while (rs.next()){
book=new Books();
book.setBook_id(rs.getString("book_id"));
book.setBook_name(rs.getString("book_name"));
book.setAuthor(rs.getString("author"));
book.setPress_name(rs.getString("press_name"));
book.setPrice(rs.getFloat("price"));
book.setBrief(rs.getString("brief"));
book.setCount(rs.getInt("count"));
list.add(book);
}
} catch (SQLException e){
e.printStackTrace();
} finally {
try {
con.close();
} catch (SQLException e2) {
e2.printStackTrace();
}
}
return list;
}
}
package 图书借阅归还;
import java.util.ArrayList;
import java.util.List;
import javax.swing.table.DefaultTableModel;
public class BookTableModel extends DefaultTableModel{
BookManage bm=new BookManage();
List<Books> list=new ArrayList<Books>();
public BookTableModel(){
Object[] title={"图书编号","图书名","图书作者","印刷厂","价格","简介","已借阅"};
Object[][] data=new Object[20][7];
super.setDataVector(data, title);
}
public BookTableModel(String id){
Object[] title={"图书编号","图书名","图书作者","印刷厂","价格","简介","已借阅"};
list=bm.seekBookId(id);
Object[][] data=new Object[list.size()+20][7];
for (int i=0;i<list.size();i++){
data[i][0]=list.get(i).getBook_id();
data[i][1]=list.get(i).getBook_name();
data[i][2]=list.get(i).getAuthor();
data[i][3]=list.get(i).getPress_name();
data[i][4]=list.get(i).getPrice();
data[i][5]=list.get(i).getBrief();
data[i][6]=list.get(i).getCount();
}
super.setDataVector(data, title);
}
}
这就是一个将查询到的数据库里面表的信息,在java里面的表单显示。
这里查询的语句是很简单的,分了两种情况。而后通过Statement和ResultSet来将数据放入List中。
从这块可以看到List在数据存放和处理是有很大的帮助的。
extends DefaultTableModel单独的一个类来继承表单模型,随时的调用这个类,方便了很多。又见面向对象思想。表单这个对象写好,随用随到。