用java編寫學(xué)生信息管理系統(tǒng).docx_第1頁
用java編寫學(xué)生信息管理系統(tǒng).docx_第2頁
用java編寫學(xué)生信息管理系統(tǒng).docx_第3頁
用java編寫學(xué)生信息管理系統(tǒng).docx_第4頁
用java編寫學(xué)生信息管理系統(tǒng).docx_第5頁
已閱讀5頁,還剩4頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

用java編寫學(xué)生信息管理系統(tǒng)import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.io.*; import java.util.*; class Student implements java.io.Serializable String number,name,specialty,grade,borth,sex; public Student(); public void setNumber(String number) this.number=number; public String getNumber() return number; public void setName(String name) =name; public String getName() return name; public void setSex(String sex) this.sex=sex; public String getSex() return sex; public void setSpecialty(String specialty) this.specialty=specialty; public String getSpecialty() return specialty; public void setGrade(String grade) this.grade=grade; public String getGrade() return grade; public void setBorth(String borth) this.borth=borth; public String getBorth() return borth; public class StudentManager extends JFrame JLabel lb=new JLabel(錄入請先輸入記錄,查詢、刪除請先輸入學(xué)號,修改是對查詢 + 內(nèi)容改后的保存!); static JTextField Jnumber,Jname,Jspecialty,Jgrade,Jborth; static JRadioButton boy,girl; static ButtonGroup group=null; static JButton Login,select,delete,update,show; static JPanel p1,p2,p3,p4,p5,p6,pv,ph; static Student student=null; static Hashtable Shashtable=null; static File file=null; static FileInputStream inOne=null; static ObjectInputStream inTwo=null; static FileOutputStream outOne=null; static ObjectOutputStream outTwo=null; public StudentManager() super(學(xué)生基本信息管理系統(tǒng)); Jnumber=new JTextField(10); Jname =new JTextField(10); Jspecialty=new JTextField(10); Jgrade=new JTextField(10); Jborth=new JTextField(10); group=new ButtonGroup(); boy=new JRadioButton(男,true); girl=new JRadioButton(女,false); group.add(boy); group.add(girl); Login=new JButton(錄入); select=new JButton(查詢); delete=new JButton(刪除); update=new JButton(修改); show=new JButton(顯示); Login.addActionListener(new InputAct(); select.addActionListener(new InquestAct(); update.addActionListener(new ModifyAct(); delete.addActionListener(new DeleteAct(); show.addActionListener(new ShowAct(); update.setEnabled(false); p1=new JPanel(); p1.add(new JLabel(學(xué)號:,JLabel.CENTER); p1.add(Jnumber); p2=new JPanel(); p2.add(new JLabel(姓名:,JLabel.CENTER); p2.add(Jname); p3=new JPanel(); p3.add(new JLabel(性別:,JLabel.CENTER); p3.add(boy); p3.add(girl); p4=new JPanel(); p4.add(new JLabel(專業(yè):,JLabel.CENTER); p4.add(Jspecialty); p5=new JPanel(); p5.add(new JLabel(年級:,JLabel.CENTER); p5.add(Jgrade); p6=new JPanel(); p6.add(new JLabel(出生:,JLabel.CENTER); p6.add(Jborth); pv=new JPanel(); pv.setLayout(new GridLayout(6,1); pv.add(p1); pv.add(p2); pv.add(p3); pv.add(p4); pv.add(p5); pv.add(p6); ph=new JPanel(); ph.add(Login); ph.add(select); ph.add(update); ph.add(delete); ph.add(show); file=new File(學(xué)生信息.txt); Shashtable=new Hashtable(); if(!file.exists() try FileOutputStream out=new FileOutputStream(file); ObjectOutputStream objectOut=new ObjectOutputStream(out); objectOut.writeObject(Shashtable); objectOut.close(); out.close(); catch(IOException e) Container con=getContentPane(); con.setLayout(new BorderLayout(); con.add(lb, BorderLayout.NORTH); con.add(pv, BorderLayout.CENTER); con.add(ph, BorderLayout.SOUTH); setDefaultCloseOperation(EXIT_ON_CLOSE); setBounds(100,100,600,300); setVisible(true); public static void main(String args) new StudentManager(); class InputAct implements ActionListener public void actionPerformed(ActionEvent e) update.setEnabled(false); String number=; number=Jnumber.getText(); if(number.length()0) try inOne=new FileInputStream(file); inTwo=new ObjectInputStream(inOne); Shashtable=(Hashtable)inTwo.readObject(); inOne.close(); inTwo.close(); catch(Exception ee)System.out.println(創(chuàng)建散列表出現(xiàn)問題!); if(Shashtable.containsKey(number) String warning=該生信息已存在,請到修改頁面修改!; JOptionPane.showMessageDialog(null,warning,警告, JOptionPane.WARNING_MESSAGE); /end if1 else String m=該生信息將被錄入!; int ok=JOptionPane.showConfirmDialog(null,m,確認, JOptionPane.YES_NO_OPTION,JOptionPane.INFORMATION_MESSAGE); if(ok=JOptionPane.YES_OPTION) String name=Jname.getText(); String specialty=Jspecialty.getText(); String grade=Jgrade.getText(); String borth=Jborth.getText(); String sex=null; if(boy.isSelected()sex=boy.getText(); elsesex=girl.getText(); student=new Student(); student.setNumber(number); student.setName(name); student.setSpecialty(specialty); student.setGrade(grade); student.setBorth(borth); student.setSex(sex); try outOne=new FileOutputStream(file); outTwo=new ObjectOutputStream(outOne); Shashtable.put(number,student); outTwo.writeObject(Shashtable); outTwo.close(); outOne.close(); catch(Exception ee)System.out.println(輸出散列表出現(xiàn)問題!); Jnumber.setText(null); Jname.setText(null); Jspecialty.setText(null); Jgrade.setText(null); Jborth.setText(null); /end else1 /end if0 else String warning=必須輸入學(xué)號!; JOptionPane.showMessageDialog(null,warning, 警告,JOptionPane.WARNING_MESSAGE); /end else0 /end actionPerformed /end class class InquestAct implements ActionListener public void actionPerformed(ActionEvent e) String number=; number=Jnumber.getText(); if(number.length()0) try inOne=new FileInputStream(file); inTwo=new ObjectInputStream(inOne); Shashtable=(Hashtable)inTwo.readObject(); inOne.close(); inTwo.close(); catch(Exception ee)System.out.println(散列表有問題!); if(Shashtable.containsKey(number) update.setEnabled(true); Student stu=(Student)Shashtable.get(number); Jname.setText(stu.getName(); Jspecialty.setText(stu.getSpecialty(); Jgrade.setText(stu.getGrade(); Jborth.setText(stu.getBorth(); if(stu.getSex().equals(男)boy.setSelected(true); elsegirl.setSelected(true); else update.setEnabled(false); String warning=該學(xué)號不存在!; JOptionPane.showMessageDialog(null,warning, 警告,JOptionPane.WARNING_MESSAGE); else update.setEnabled(false); String warning=必須輸入學(xué)號!; JOptionPane.showMessageDialog(null,warning, 警告,JOptionPane.WARNING_MESSAGE); class ModifyAct implements ActionListener public void actionPerformed(ActionEvent e) String number=Jnumber.getText(); String name=Jname.getText(); String specialty=Jspecialty.getText(); String grade=Jgrade.getText(); String borth=Jborth.getText(); String sex=null; if(boy.isSelected()sex=boy.getText(); elsesex=girl.getText(); Student 學(xué)生=new Student(); 學(xué)生.setNumber(number); 學(xué)生.setName(name); 學(xué)生.setSpecialty(specialty); 學(xué)生.setGrade(grade); 學(xué)生.setBorth(borth); 學(xué)生.setSex(sex); try outOne=new FileOutputStream(file); outTwo=new ObjectOutputStream(outOne); Shashtable.put(number, 學(xué)生); outTwo.writeObject(Shashtable); outTwo.close(); outOne.close(); Jnumber.setText(null); Jname.setText(null); Jspecialty.setText(null); Jgrade.setText(null); Jborth.setText(null); catch(Exception ee) System.out.println(錄入修改出現(xiàn)異常!); update.setEnabled(false); class DeleteAct implements ActionListener public void actionPerformed(ActionEvent e) update.setEnabled(false); String number=Jnumber.getText(); if(number.length()0) try inOne=new FileInputStream(file); inTwo=new ObjectInputStream(inOne); Shashtable=(Hashtable)inTwo.readObject(); inOne.close(); inTwo.close(); catch(Exception ee) if(Shashtable.containsKey(number) Student stu=(Student)Shashtable.get(number); Jname.setText(stu.getName(); Jspecialty.setText(stu.getSpecialty(); Jgrade.setText(stu.getGrade(); Jborth.setText(stu.getBorth(); if(stu.getSex().equals(男)boy.setSelected(true); elsegirl.setSelected(true); String m=確定要刪除該學(xué)生的記錄嗎?; int ok=JOptionPane.showConfirmDialog(null,m,確認, JOptionPane.YES_NO_OPTION,JOptionPane.QUESTION_MESSAGE); if(ok=JOptionPane.YES_OPTION) Shashtable.remove(number); try outOne=new FileOutputStream(file); outTwo=new ObjectOutputStream(outOne); outTwo.writeObject(Shashtable); outTwo.close(); outOne.close(); Jnumber.setText(null); Jname.setText(null); Jspecialty.setText(null); Jgrade.setText(null); Jborth.setText(null); catch(Exception ee)System.out.println(ee); else if(ok=JOptionPane.NO_OPTION) Jnumber.setText(null); Jname.setText(null); Jspecialty.setText(null); Jgrade.setText(null); Jborth.setText(null); else String warning=該學(xué)號不存在!; JOptionPane.showMessageDialog(null,warning, 警告,JOptionPane.WARNING_MESSAGE); else String warning=必須輸入學(xué)號!; JOptionPane.showMessageDialog(null,warning, 警告,JOptionPane.WARNING_MESSAGE); class ShowAct implements ActionListener public void actionPerformed(ActionEvent e) new StudentShow(file); class StudentShow extends JDialog Hashtable 學(xué)生散列表= null; JTextArea 顯示=null; FileInputStream inOne=null; ObjectInput

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論