• Swing入门级项目全程实录第7讲


     惯例广告一发,对于初学真,真的很有用www.java1234.com,去试试吧!

    1、添加BookManageInterFrm窗口、控件及美化(略)
     
    2、在MainFrm中添加链接BookManageInterFrm窗口代码
    //添加图书维护窗口 
            BookManageInterFrm BookManageInterFrm = new BookManageInterFrm();
            BookManageInterFrm.setVisible(true);
            table.add(BookManageInterFrm);

     3、添加下拉框数据

    /**
         * 添加jcb_BookType下拉列表框
         */
        private void fillBookType() {
            BookType bookType = null;
            Connection con = null;
            try {
                con = dbUtil.getCon();
                ResultSet rs = bookTypeDao.bookTypeList(con, new BookType());
    
                while (rs.next()) {
                    bookType = new BookType();
                    bookType.setId(rs.getInt("id"));
                    bookType.setBookTypeName(rs.getString("bookTypeName"));
                    jcb_bookType.addItem(bookType);
                }
    
            } catch (Exception e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } finally {
                try {
                    dbUtil.closeCon(con);
                } catch (Exception e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
            }
    
        }

    4、在BookModel中增加关联查询顶bookTypeName,并增加set、get方法,设置bookTypeId默认值为-1,方便查询

    /**
         * 新增数据库查询项
         */
        /**
         * @return the bookTypeName
         */
        public String getBookTypeName() {
            return bookTypeName;
        }
            
        /**
         * @param bookTypeName the bookTypeName to set
         */
        public void setBookTypeName(String bookTypeName) {
            this.bookTypeName = bookTypeName;
        }
    private int bookTypeId=-1;

     5、编写多条件关联查询语句

    /**
         * 多条件关联查询
         * @param con
         * @param book
         * @return resultset
         * @throws Exception
         */
        public ResultSet bookList(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(StringUtil.isNotEmpty(book.getSex())){
                sb.append(" and b.sex = '"+book.getSex()+"'");
            }
            if(book.getBookTypeId()!=-1){
                sb.append(" and b.bookTypeId = "+book.getBookTypeId());
            }
            PreparedStatement pstmt=con.prepareStatement(sb.toString());
            return pstmt.executeQuery();
        }

    6、填充数据表格

        /**
         * 添加表格数据
         * @param bookType
         */
        private void filltable(Book book) {
            //获取表格模型
            DefaultTableModel dtm = (DefaultTableModel) bookTable.getModel();
    
            //连接数据库添加数据
            Connection con = null;
            dtm.setRowCount(0);
            try {
                con = dbUtil.getCon();
                ResultSet rs = bookDao.bookList(con, book);
                while (rs.next()) {
                    Vector v = new Vector();
                    v.add(rs.getString("id"));
                    v.add(rs.getString("bookTypeName"));
                    v.add(rs.getString("author"));
                    v.add(rs.getString("sex"));
                    v.add(rs.getString("price"));
                    v.add(rs.getString("bookDesc"));
                    v.add(rs.getString("bookTypeName"));
                    dtm.addRow(v);
                }
            } catch (Exception e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } finally {
                try {
                    dbUtil.closeCon(con);
                } catch (Exception e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
            }
        }

      7、条件查询 

    /**
         * 查询
         */
        private void s_searchActionPerformed(java.awt.event.ActionEvent evt) {
            //获取数据
            String bookName=s_bookNameTxt.getText();
            String author=s_authorTxt.getText();
            String sex="";
            if(s_jrbman.isSelected()){
                sex="男";
            }
            if(s_jrbmefale.isSelected()){
                sex="女";
            }
            BookType bookType=(BookType) s_jcbBookType.getSelectedItem();
            int bookTypeId=bookType.getId();
            
            //封装
            Book book=new Book(bookName,author,sex,bookTypeId);
            
            //填充表格
            filltable(book);
        }
  • 相关阅读:
    matlab的矩阵基础
    matlab基础运算
    【转】Android设置虚线、圆角、渐变
    DialogFragment 自定义弹窗
    imeOptions 属性详解
    android fragment 博客 学习记录
    【转】android fragment 博客 学习
    android UI库
    【转】 Android自定义捕获Application全局异常
    vitamio 缓冲一部分时,loading还没消失,直接点击播放,loading未能消失
  • 原文地址:https://www.cnblogs.com/cnmotive/p/3131315.html
Copyright © 2020-2023  润新知