Java数据库编程技术

2018-10-13   阅读:189

  jtf[4].setText(rs.getString("native"))saveBtn.setEnabled(false)} firstBtn =new JButton("第一条")lastBtn.setEnabled(false)jtf[2].setText(rs.getString("IC"))for(int i=0import java.awt.event.WindowEventDBQ="+path。

  editBtn.setEnabled(true)JTextField jtf[]jf.addWindowListener(this)//删除当前记实 recordCnt--addBtn.addActionListener(this)} catch (ClassNotFoundException e) { JOptionPane.showMessageDialog(jf, "无法加载ODBC驱动")} } //添加记实按钮事务响应代码 protected void doAdd() { if(recordState==onlyRead){ //原先是浏览形态,现正在切换到编纂形态 firstBtn.setEnabled(false)nextBtn =new JButton("下一条")} } public static void main(String[] args){ new AddressList()nextBtn.setEnabled(false)nextBtn.setEnabled(false)searchBtn =new JButton("查找记实")} catch (SQLException e) { JOptionPane.showMessageDialog(jf, "逛标挪动错误")setTextState(false)nextBtn.setEnabled(false)delBtn =new JButton("删除记实")} } //"最初一条"按钮事务响应代码 protected void doMoveLast() { if(curRow>=recordCnt){ //容错处置 nextBtn.setEnabled(false)for(int i=0。

  //获取记实数 rs=sta.executeQuery("select * from student")import java.awt.Containeri<7} while(b&IC!if(recordCnt>0){ //若是残剩还有记实 if(curRow>=recordCnt) //若是删除的是最初一笔记录 curRow=recordCnt;cancelBtn.setEnabled(true);jtf[i].setEditable(false);i++) rs.updateString(i+1, jtf[i].getText());if(curRow==1){ //若是是第一笔记录 firstBtn.setEnabled(false)。

  recordState =amending;i++) rs.updateString(i+1, jtf[i].getText());//更新当前记实 goViewState=true;saveBtn.setEnabled(false);} else{ if(rs.next()){ //向后挪动逛标 curRow++;jtf[7].setText(rs.getString("schname"));} //"第一条"按钮事务响应代码 protected void doMoveFirst(){ //容错处置 if(curRow<=1){ firstBtn.setEnabled(false);jtf[7].setText("确山县任店镇第二初级中学");curRow=recordCnt;public class AddressList extends WindowAdapter implements ActionListener { JFrame jf;Container con;lastBtn.setEnabled(true);curRow--;jtf[10].setText(rs.getString("class"));jtf[8].setText(rs.getString("schnum"));//正在构制方式中构制界面 public AddressList(){ jf =new JFrame("学籍消息办理系统");jtf[5].setText("汉族");import java.awt.event.WindowAdapter;} try { if(rs.previous()){ //向前挪动逛标 showData();i

  //点窜记实数 curRow=recordCnt;lastBtn.setEnabled(true);JButton firstBtn,preBtn,nextBtn,lastBtn,addBtn,editBtn,delBtn,cancelBtn,saveBtn,searchBtn;//若是记实数为零,则不成能点窜 //起头设置按钮的形态 firstBtn.setEnabled(false);} try{ if(rs.last()){ //将逛标挪动到最初 showData();firstBtn.addActionListener(this);protected int recordState=onlyRead, curRow=0, recordCnt=0;//设置按钮形态 if(curRow>1){ firstBtn.setEnabled(true);con.setLayout(new BoxLayout(con,BoxLayout.Y_AXIS));private static final int fieldCnt=12;} if(goViewState){ //要切换回浏览形态 firstBtn.setEnabled(true);lastBtn.setEnabled(false)。

  ");//挪动标记 rs.last();} } catch (SQLException e) { JOptionPane.showMessageDialog(jf, "删除数据犯错");preBtn.setEnabled(true);Connection conn =null;preBtn.setEnabled(false);} return true;}else if(obj== preBtn){ doMovePrevior();curRow =1;i

  editBtn =new JButton("编纂记实");delBtn.setEnabled(true);}else if(obj== nextBtn){ doMoveNext();jtf[6].setText(rs.getString("address"));nextBtn.setEnabled(true);//下面3步是插入记实必备的 for(int i=0;JLabel jl[];jtf[i].setColumns(36);jp[i/2].add(jtf[i]);} catch (SQLException e) { e.printStackTrace();import java.sql.*;conn=DriverManager.getConnection(url, "", "");con = jf.getContentPane();} catch (SQLException e) { JOptionPane.showMessageDialog(jf, "无法获取数据");} } } } } catch (SQLException e) { JOptionPane.showMessageDialog(jf, "挪动逛标犯错")。

  } catch (SQLException e) { JOptionPane.showMessageDialog(jf, "数据库无法毗连或没有记实");} } catch (SQLException e) { JOptionPane.showMessageDialog(jf, "挪动逛标犯错");jtf[4].setText(rs.getString("native"));;//记实逛标的新位置 //从头设置按钮形态 firstBtn.setEnabled(false);jtf[5].setText(rs.getString("nation"));recordState=onlyRead;//若是保留成功,预备添加下一笔记录 } } //保留记实按钮事务响应代码 protected boolean doSave(boolean goViewState) { try { if(recordState==amending){ //若是是点窜形态 for(int i=0;lastBtn.setEnabled(true);//预备切换到浏览形态 }else if(recordState==adding) { //这是添加形态 //将逛标挪动到预备插入的处所 rs.moveToInsertRow();setTextState(true);editBtn.addActionListener(this);// jf.setResizable(false);jtf[3].setText(rs.getString("sex"));} } //几个辅帮方式(供按钮挪用) protected void setTextState(boolean flag){ //设置文本读写形态 for(int i=0!

  //将各个Text置空,预备编纂记实 }else { //原先就是编纂形态 if(doSave(false)) //先保留前次添加的记实 setTextEmpty();}else if(obj==searchBtn){ doSearch();i<7;preBtn.setEnabled(true);connection();preBtn.setEnabled(false);addBtn =new JButton("增加记录");jf.setVisible(true);} } //"下一条"按钮事件响应代码 protected void doMoveNext(){ if(curRow>=recordCnt){ //容错处置 nextBtn.setEnabled(false);setTextEmpty();jl[i] =new JLabel();jtf[8].setText("3141002842");}}preBtn.addActionListener(this);saveBtn =new JButton("保留记实");jf.setSize(1000, 400);delBtn.setEnabled(false);saveBtn.addActionListener(this)。

  editBtn.setEnabled(false);cancelBtn.setEnabled(false);jp[6].add(delBtn);preBtn =new JButton("上一条");")!

  jp[6].add(lastBtn);jtf[11].setText(rs.getString("tel"));curRow =1;preBtn.setEnabled(true)!

  jp[i/2].add(jl[i]);nextBtn.addActionListener(this);nextBtn.setEnabled(true);jl =new JLabel[fieldCnt];preBtn.setEnabled(false);cancelBtn.addActionListener(this);i++){ jtf[i] =new JTextField();} } //设置按钮的初始形态 protected void setFace(){ firstBtn.setEnabled(false);} } catch (SQLException e) { JOptionPane.showMessageDialog(jf, "挪动逛标犯错");} } } //查找记实按钮事务响应代码 protected void doSearch(){ boolean b=true;saveBtn.setEnabled(true);jl[i].setText(lblmsg[i]);curRow++。

  addBtn.setEnabled(true);//置为点窜形态 setTextState(true);//若是没有记实,则什么都不消做 if(JOptionPane.showConfirmDialog(jf, "删除后将不成恢复!preBtn.setEnabled(false);} return。

  }else if(obj==lastBtn){ doMoveLast();lastBtn.setEnabled(false);cancelBtn.setEnabled(true);jtf[2].setText(IC);preBtn.setEnabled(true);} try { if(rs.next()){ //向后挪动逛标 showData();if(recordCnt>0) showData();} } //actionPerformed()方式 public void actionPerformed(ActionEvent e){ Object obj;} } //删除记实按钮事务响应代码 protected void doDelete(){ if(0==recordCnt) return;lastBtn =new JButton("最初一条");} } catch(SQLException e) { JOptionPane.showMessageDialog(jf, "挪动逛标犯错");String path="D:\\Student.mdb";jtf[8].setText(rs.getString("schnum"))。

  } } catch (SQLException e) { JOptionPane.showMessageDialog(jf, "挪动逛标犯错");//不然的话,curRow的值无需改变,由于后一笔记录从动成为了当前记实 rs.absolute(curRow);try { rs.absolute(curRow);public static final String lblmsg[]={"学生姓名","学籍号","身份证件号","性别","籍贯","平易近族", "家庭住址","学校名称","学校标识码","年级","班级","联系德律风"};//显示当前记实到界面上 curRow=1;//挪动到原先记实处 showData();}else{ if(curRow>=recordCnt){ curRow=recordCnt;public static final int onlyRead=0, adding=1, amending=2;firstBtn.setEnabled(true);jtf[9].setText(rs.getString("grade"));} //编纂记实按钮事务响应代码 protected void doEdit(){ if(0==recordCnt) return;}else { curRow =0;jp[6].add(preBtn);try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");saveBtn.setEnabled(true);recordState = onlyRead;//将逛标挪动到第一笔记录处 curRow=1;ResultSet rs =null。

  jtf[9].setText(rs.getString("grade"));// conn=DriverManager.getConnection("jdbc:odbc:Student", "", "");i++) jtf[i].setEditable(flag);editBtn.setEnabled(true);i

  recordState=adding;import javax.swing.*;jp[6].add(addBtn);rs.updateRow();setTextState(false);curRow =1;jf.setLocation(300, 200);return false;lastBtn.setEnabled(false);delBtn.setEnabled(true);cancelBtn.setEnabled(false)。

  i++) con.add(jp[i]);} //退出系统时封闭数据库 public void windowClosing(WindowEvent e1){ try { conn.close();cancelBtn =new JButton("打消改变");sta = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE);} //打消改变按钮事务响应代码 protected void doCancel(){ if(recordCnt==0) return;curRow=1?

  for(int i=0;if(rs.next()) recordCnt =rs.getInt(1);String IC =JOptionPane.showInputDialog(jf, "请输入要查找学生的身份证号:");jtf[6].setText(rs.getString("address"));} //打开数据库 public void connection() {// String path=this.getClass().getClassLoader().getResource("db/Student.mdb").getPath().substring(1);} catch (SQLException e) { JOptionPane.showMessageDialog(jf, "无法获取数据");} } //顺次正在text中显示学生学籍消息(显示数据到控件中) public void showData(){ try { jtf[0].setText(rs.getString("name"));if(obj== firstBtn){ doMoveFirst();rs.insertRow()。

  preBtn.setEnabled(false);} jtf =new JTextField[fieldCnt];} addBtn.setEnabled(true);preBtn.setEnabled(false);} } //"上一条"按钮事务响应代码 protected void doMovePrevior(){ if(curRow<=1){ firstBtn.setEnabled(false);确定要删除当前记实吗?","提醒",JOptionPane.OK_CANCEL_OPTION) == JOptionPane.OK_OPTION){ try { rs.deleteRow();} if(curRow

  lastBtn.setEnabled(false);jp[6].add(nextBtn);editBtn.setEnabled(true);addBtn.setEnabled(true);} firstBtn.setEnabled(true);rs.next();jtf[5].setText(rs.getString("nation"));jp[6].add(firstBtn);//将各个Text置为可写 setTextEmpty();} firstBtn.setEnabled(true);if(curRow==recordCnt){ nextBtn.setEnabled(false);delBtn.setEnabled(true);}else if(obj==addBtn){ doAdd();preBtn.setEnabled(false);jp[i].setLayout(new FlowLayout());jp[6].add(saveBtn);} protected void setTextEmpty(){ //将所有文本框中的数据断根 for(int i=0;obj = e.getSource();setFace()!

  jtf[7].setText(rs.getString("schname"));import java.awt.event.ActionEvent;saveBtn.setEnabled(false);lastBtn.setEnabled(true);return;lastBtn.setEnabled(false);=null){ if(rs.getString("IC").equals(IC)){ try { jtf[0].setText(rs.getString("name"));JPanel jp[];b =false;i

  nextBtn.setEnabled(false);cancelBtn.setEnabled(false);Statement sta =null;rs =sta.executeQuery("select count(*) from student");jtf[1].setText(rs.getString("stuID"));jtf[3].setText(rs.getString("sex"));delBtn.setEnabled(false)。

  i++){ jp[i] =new JPanel();i

  nextBtn.setEnabled(true);if(curRow==recordCnt){ nextBtn.setEnabled(false);}else if(obj==delBtn){ doDelete();return;} finally { System.exit(0);i++) jtf[i].setText(null)!

  recordCnt++;addBtn.setEnabled(false);} try { if(rs.first()){ //挪动逛标到第一笔记录 curRow=1;String url="jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};jtf[1].setText(rs.getString("stuID"));addBtn.setEnabled(true);

新媒体

青少年编程科技专题讲座—编
小至日常糊口人人离不开的微信、办公软件、订票软件,大到它们侵入并倾覆了曾经成立起来的行业架构,如马云的无人超市

机器及编程技术pdf 4页
除了工业机械人程度不竭提高之外,各类用于非制制业的先辈机械人系统也有了 长脚的进展。出于拟 人化的考虑,常将机械

MFC Visual C++6编程技术内幕
Introduction Foreword About the Author Core MFC The MFC Architecture A Brief History of MFC The MFC Class Hierarchy CObject CCmdTarget CWinThread CWinApp CWnd CF

与自动编程技术相关的文献前
细致阐发了操纵数控系统刀具监控功能进行切削参数丈量的CA ... 8. 对数控深孔加工工艺及编程手艺进行研究,并正在基于