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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

7、图书添加功能

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

1、新建圖書信息表t_book

添加外鍵,t_book的bookTypeId外鍵關聯于t_bookType的主鍵id

2、新建Book的實體

public class Book {private int id;//編號private String bookName;//圖書名稱private String author;//作者private String sex;//性別private Float price;//價格private Integer bookTypeId;//圖書類別Idprivate String bookTypeName;//圖書類別名稱private String bookDesc;//描述public Book(String bookName, String author, String sex, Float price, Integer bookTypeId, String bookDesc) {super();this.bookName = bookName;this.author = author;this.sex = sex;this.price = price;this.bookTypeId = bookTypeId;this.bookDesc = bookDesc;}public Book(int id, String bookName, String author, Float price, Integer bookTypeId, String bookTypeName,String bookDesc) {super();this.id = id;this.bookName = bookName;this.author = author;this.price = price;this.bookTypeId = bookTypeId;this.bookTypeName = bookTypeName;this.bookDesc = bookDesc;}public Book() {super();// TODO Auto-generated constructor stub}public int getId() {return id;}public void setId(int id) {this.id = id;}public String getBookName() {return bookName;}public void setBookName(String bookName) {this.bookName = bookName;}public String getAuthor() {return author;}public void setAuthor(String author) {this.author = author;}public Float getPrice() {return price;}public void setPrice(Float price) {this.price = price;}public Integer getBookTypeId() {return bookTypeId;}public void setBookTypeId(Integer bookTypeId) {this.bookTypeId = bookTypeId;}public String getBookTypeName() {return bookTypeName;}public void setBookTypeName(String bookTypeName) {this.bookTypeName = bookTypeName;}public String getBookDesc() {return bookDesc;}public void setBookDesc(String bookDesc) {this.bookDesc = bookDesc;}public String getSex() {return sex;}public void setSex(String sex) {this.sex = sex;}}

3、新建book的數據操作Dao類,BookDao.java

/*** 圖書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();} }

4、新建圖書添加界面BookAddInterFrm.java


修改布局:

添加JLabel,JTextField,JRadioButton,JTextArea,JButton組件

重命名組件名稱

5、新建“圖書管理-添加”事件

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

6、封裝一個方法,把圖書類別的數據寫入進去

/*** 初始化圖書類別下拉框*/private void fillBookType(){Connection con=null;BookType bookType=null;try{con=dbUtil.getCon();ResultSet rs=bookTypeDao.list(con, new BookType());while(rs.next()){bookType=new BookType();bookType.setId(rs.getInt("id"));bookType.setBookTypeName(rs.getString("bookTypeName"));this.bookTypeJcb.addItem(bookType);}}catch(Exception e){e.printStackTrace();}finally{try {dbUtil.close(con);} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}

調用方法

fillBookType();

在BookType.java里添加重寫toString的代碼,不然顯示如圖

@Overridepublic String toString() {return bookTypeName;}

7、實現添加功能

給添加按鈕添加事件

public void actionPerformed(ActionEvent e) {BookAddActionPerformed(e); }

新建重置表單方法

/*** 重置表單*/private void resetValue() {this.bookNameTxt.setText("");this.authorTxt.setText("");this.priceTxt.setText("");this.manJrb.setSelected(true);this.bookDescTxt.setText("");if(this.bookTypeJcb.getItemCount()>0){this.bookTypeJcb.setSelectedIndex(0);}} /*** 圖書添加事件處理* @param e*/ private void BookAddActionPerformed(ActionEvent evt) {String bookName=this.bookNameTxt.getText();String author=this.authorTxt.getText();String price=this.priceTxt.getText();String bookDesc=this.bookDescTxt.getText();if(StringUtil.isEmpty(bookName)){JOptionPane.showMessageDialog(null, "圖書名稱為空!");return;}if(StringUtil.isEmpty(author)){JOptionPane.showMessageDialog(null, "作者為空!");return;}if(StringUtil.isEmpty(price)){JOptionPane.showMessageDialog(null, "價格為空!");return;}String sex="";if(manJrb.isSelected()){//如果選擇男sex="男";}else if(femaleJrb.isSelected()){sex="女";}BookType bookType=(BookType)bookTypeJcb.getSelectedItem();int bookTypeId=bookType.getId();Book book=new Book(bookName,author,sex,Float.parseFloat(price),bookTypeId,bookDesc);Connection con=null;try{con=dbUtil.getCon();int addNum=bookDao.add(con, book);if(addNum==1){JOptionPane.showMessageDialog(null, "添加成功");resetValue();}else{JOptionPane.showMessageDialog(null, "添加失敗");}}catch(Exception e){e.printStackTrace();JOptionPane.showMessageDialog(null, "添加失敗");}finally{try {dbUtil.close(con);} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();}} }

8、實現重置功能
新建重置按鈕事件

public void actionPerformed(ActionEvent e) {resetValueActionPerformed(e); } /*** 重置事件處理* @param e*/ private void resetValueActionPerformed(ActionEvent evt) {this.resetValue();}


《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀

總結

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

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