日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

8、图书查询功能

發布時間:2025/3/20 编程问答 15 豆豆
生活随笔 收集整理的這篇文章主要介紹了 8、图书查询功能 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1、添加圖書查詢的Dao代碼

/*** 圖書Dao類* @author Administrator**/ public class BookDao {/*** 圖書添加* @param con* @param book* @return* @throws Exception */public int add(Connection con,Book book) throws Exception{String sql="insert into t_book values(null,?,?,?,?,?,?)";PreparedStatement pstmt=con.prepareStatement(sql);pstmt.setString(1, book.getBookName());pstmt.setString(2, book.getAuthor());pstmt.setString(3, book.getSex());pstmt.setFloat(4, book.getPrice());pstmt.setInt(5, book.getBookTypeId());pstmt.setString(6, book.getBookDesc());return pstmt.executeUpdate();}------------------------------------------------------------ /*** 圖書信息查詢* @param con* @param book* @return* @throws Exception*/public ResultSet list(Connection con,Book book)throws Exception{StringBuffer sb=new StringBuffer("select * from t_book b,t_bookType bt where b.bookTypeId=bt.id");if(StringUtil.isNotEmpty(book.getBookName())){sb.append(" and b.bookName like '%"+book.getBookName()+"%'");}if(StringUtil.isNotEmpty(book.getAuthor())){sb.append(" and b.author like '%"+book.getAuthor()+"%'");}if(book.getBookTypeId()!=null && book.getBookTypeId()!=-1){sb.append(" and b.bookTypeId="+book.getBookTypeId());}PreparedStatement pstmt=con.prepareStatement(sb.toString());return pstmt.executeQuery();}-------------------------------------------------------------------------- }

2、新建“圖書管理-修改”窗體,BookManageInterFrm.java


修改布局:

添加JScrollPane組件,

接著在JScrollPane組件上再添加JTable組件,修改table組件的model屬性,給表格添加標題:

添加的組件:


重命名組件:

3、封裝一個方法,把圖書類別下拉框的數據寫入

/*** 初始化下拉框*/private void fillBookType(String type)throws Exception{Connection con=null;BookType bookType=null;try{con=dbUtil.getCon();ResultSet rs=bookTypeDao.list(con, new BookType());if("search".equals(type)){bookType=new BookType();bookType.setBookTypeName("請選擇");bookType.setId(-1);this.s_bookTypeJcb.addItem(bookType);}while(rs.next()){bookType=new BookType();bookType.setBookTypeName(rs.getString("bookTypeName"));bookType.setId(rs.getInt("id"));if("search".equals(type)){this.s_bookTypeJcb.addItem(bookType);}else if("modify".equals(type)){}}}catch(Exception e){e.printStackTrace();}finally{try {dbUtil.close(con);} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}

調用方法:

this.fillBookType("search");

4、給“圖書管理-修改”添加事件

public void actionPerformed(ActionEvent e) {BookManageInterFrm bookManageInterFrm=new BookManageInterFrm();bookManageInterFrm.setVisible(true);table.add(bookManageInterFrm);}

5、封裝一個方法,把圖書信息table的數據寫入

重命名table的名稱為bookTable

/*** 初始化表格數據* @param book*/private void fillTable(Book book){DefaultTableModel dtm=(DefaultTableModel)bookTable.getModel();dtm.setRowCount(0);Connection con=null;try{con=dbUtil.getCon();ResultSet rs=bookDao.list(con, book);while(rs.next()){Vector v=new Vector();v.add(rs.getString("id"));v.add(rs.getString("bookName"));v.add(rs.getString("author"));v.add(rs.getString("sex"));v.add(rs.getFloat("price"));v.add(rs.getString("bookDesc"));v.add(rs.getString("bookTypeName"));dtm.addRow(v);}}catch(Exception e){e.printStackTrace();}finally{try {dbUtil.close(con);} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}

調用方法:

this.fillTable(new Book());

6、實現查詢功能


給查詢按鈕添加事件

public void actionPerformed(ActionEvent e) {bookSearchActionPerformed(e); } /*** 圖書查詢事件處理* @param evt*/private void bookSearchActionPerformed(ActionEvent evt) {String bookName=this.s_bookNameTxt.getText();String author=this.s_authrTxt.getText();BookType bookType=(BookType)this.s_bookTypeJcb.getSelectedItem();int bookTypeId=bookType.getId();Book book=new Book(bookName,author,bookTypeId);this.fillTable(book);}

總結

以上是生活随笔為你收集整理的8、图书查询功能的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。