<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                GuaShi.java ~~~ package zyw.student; import zyw.tools.DataBase; import javax.swing.*; import javax.swing.table.DefaultTableModel; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.util.Date; import java.util.Vector; public class GuaShi extends JPanel implements ActionListener { DataBase db; String sql; String str; //創建分割方向為上下的JSplitePane對象 private JSplitPane jsp=new JSplitPane(JSplitPane.VERTICAL_SPLIT,true); //創建JPanel對象 private JPanel jpt=new JPanel(); private JPanel jpb=new JPanel(); //創建按鈕數組 private JButton[] jbArray=new JButton[] { new JButton ("掛失"), new JButton ("確定") }; private JLabel jl=new JLabel("請輸入你的學號:"); private JTextField jtxt=new JTextField(); //創建標題 Vector<String> head = new Vector<String>(); { head.add("書號"); head.add("學號"); head.add("借閱時間"); head.add("還書時間"); head.add("是否過期"); head.add("是否預約"); } // Vector<Vector> data=new Vector<Vector>(); //創建表格模型 DefaultTableModel dtm=new DefaultTableModel(data,head); //創建Jtable對象 JTable jt=new JTable(dtm); //將JTable封裝到滾動窗格 JScrollPane jspn=new JScrollPane(jt); public GuaShi() { this.setLayout(new GridLayout(1,1)); //設置整個RetrunBook界面上下部分均為空布局管理器 jpt.setLayout(null); jpb.setLayout(null); //設置Label的大小及位置 jl.setBounds(5,15,100,20); //將Jlabel添加到jpt面板上 jpt.add(jl); //為JTextField設置大小及位置 jtxt.setBounds(105,15,300,20); //把JTextField添加到jpt jpt.add(jtxt); //設置JBuuton的大小及位置 jbArray[0].setBounds(5,50,100,20); jbArray[1].setBounds(150,50,100,20); //添加JButton并給其添加事件監聽器 for(int i=0;i<jbArray.length;i++) { jpt.add(jbArray[i]); jbArray[i].addActionListener(this); } //把jpt設置到jsp的上部窗格 jsp.setTopComponent(jpt); jsp.setBottomComponent(jspn); jsp.setDividerSize(4); this.add(jsp); //設置jsp中分割條的初始位置 jsp.setDividerLocation(80); //設置窗體的大小位置及可見性 this.setBounds(10,10,800,600); this.setVisible(true); } public void actionPerformed(ActionEvent e) { if(e.getSource()==jbArray[1]){//事件源為"確定"按鈕 if(jtxt.getText().trim().equals("")){//學號輸入為空,提示 JOptionPane.showMessageDialog(this,"請輸入學號", "消息",JOptionPane.INFORMATION_MESSAGE); return; } else{//根據學號進行查詢 sql="select * from RECORD where StuNO="+jtxt.getText().trim(); db=new DataBase(); Vector<Vector> vtemp = new Vector<Vector>(); try{//結果集進行異常處理 int k=0; if(k==0){//提示 JOptionPane.showMessageDialog(this,"輸入了錯誤的學號或該學生沒有借書記錄", "消息",JOptionPane.INFORMATION_MESSAGE); return; } } catch(Exception ea){ea.printStackTrace();} } } if(e.getSource()==jbArray[0]){//需要掛失圖書 int row=jt.getSelectedRow(); if(row<0){ JOptionPane.showMessageDialog(this,"請選擇要掛失的書!!!","消息", JOptionPane.INFORMATION_MESSAGE); return; } loseBook(row); updateTable(); } } public void loseBook(int row){ String bname=""; int lbno=0; int bno=Integer.parseInt((String)jt.getValueAt(row,0));//得到丟失書的書號 String sno=(String)jt.getValueAt(row,1);//得到丟失書的人學號 sql="select BookName from BOOK where BookNO="+bno; db=new DataBase(); //找到最大的丟失記錄號 sql="select MAX(LbNO) from LoseBook"; sql="insert into LOSEBOOK values("+lbno+","+sno+","+bno+",'"+bname+"')";//向丟書記錄表中插入記錄 sql="select BookNo from ORDERREPORT where BookNO="+bno;//檢查預約表中是否預約該書,若有,刪除 sql="select BookNo from EXCEEDTIME where BookNO="+bno;//檢查超期表中是否有該書,若有,刪除 sql="delete from RECORD where BookNO="+bno;//從借書表中將丟失圖書的記錄刪除 sql="delete from BooK where BookNo="+bno;//從圖書表中將丟失的書刪除 int i=0; if(i>0){//提示掛失成功 JOptionPane.showMessageDialog(this,"恭喜你,掛失成功!!!","消息", JOptionPane.INFORMATION_MESSAGE); return; } else{//提示掛失失敗 JOptionPane.showMessageDialog(this,"對不起,掛失失敗!!!", "信息",JOptionPane.INFORMATION_MESSAGE); return; } } public void updateTable(){//實現界面下部表格的更新 sql="select * from RECORD where StuNO="+jtxt.getText().trim(); db=new DataBase(); Vector<Vector> vtemp = new Vector<Vector>(); jt.clearSelection(); dtm.setDataVector(vtemp,head);//更新table jt.updateUI(); jt.repaint(); } public int checkTime(int sno,int bno) {//-1 代表超期沒交罰款 0代表當天借的書 1代表正常還的書 -2表示超期交罰款 int day=0; int flag=0; String bname=""; Date now=new Date(); String returntime=""; sql="select ReturnTime from RECORD where StuNO="+sno+" and BookNO="+bno; db=new DataBase(); String[] strday=returntime.split("\\.");//這里使用了簡單的正則式,規定了時間的格式 int ryear=Integer.parseInt(strday[0].trim()); int rmonth=Integer.parseInt(strday[1].trim()); int rday=Integer.parseInt(strday[2].trim()); day=(now.getYear()+1900-ryear)*365+(now.getMonth()+1-rmonth)*30+(now.getDate()-rday); if(day==-30) {//表示當天借的書 JOptionPane.showMessageDialog(this,"今天借的書不能還!!!", "消息",JOptionPane.INFORMATION_MESSAGE); flag=0; } else if(day>0) {//代表超期了 int i=JOptionPane.showConfirmDialog(this,"該書已過期,應交罰款為" +day*0.1+"元,是否繳納罰款?","消息",JOptionPane.YES_NO_OPTION); if(i==JOptionPane.YES_OPTION){ JOptionPane.showMessageDialog(this,"你已成功交費"+day*0.1+"元", "消息",JOptionPane.INFORMATION_MESSAGE); flag=-2; } else {//超期且沒交費 flag=-1; sql="select BookName from BOOK where BookNO="+bno; sql="insert into EXCEEDTIME(StuNO,BookNO,BookName,DelayTime) values("+sno+","+bno+",'"+bname+"',"+day+")"; } } else {//表示可以正常歸還的書 flag=1; } return flag; } } ~~~
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看