Java IO的简易学生管理系统
来源:互联网 发布:吴倩黄灿灿知乎 编辑:程序博客网 时间:2024/04/28 13:32
比上一个基于Mysql数据库的完善了一些细节
WindowIO是窗口界面
package JavaStuIO;import java.sql.*;import java.awt.*;import java.awt.event.*;import javax.swing.*;import java.io.*;import java.util.*;//class studentclass student implements java.io.Serializable{String number;String name;String sex;String birthday;String department;public student(String number,String name,String sex,String birthday,String department){this.number = number;this.name = name;this.sex = sex;this.birthday = birthday;this.department = department;}}public class WindowIO extends JFrame {//private static final long serialVersionUID = -1928970409928880648L;public static void main(String[] args){/////////////////////////////////////////////////////////////////////////////TreeMap<String,student> tm = new TreeMap<String,student>(); //treemap//File file =new File("E:\\java用文件","file.txt");if(!file.exists()){FileOutputStream fout = null;ObjectOutputStream oos = null;try{fout = new FileOutputStream(file); oos = new ObjectOutputStream(fout); oos.writeObject(tm); fout.close();oos.close(); System.out.println("write ok!!!");}catch (Exception er){er.printStackTrace();System.out.println("writeobject go die");}}/////////////////////////////////////////////////////////////////////////JFrame jframe = new JFrame("学生管理系统") ; JLabel title = new JLabel("这是一个学生管理系统",JLabel.CENTER); Font font = new Font("",Font.BOLD+Font.PLAIN,15); title.setFont(font); ImageIcon icon = new ImageIcon("E:\\java用图片\\look.jpg"); icon.setImage(icon.getImage().getScaledInstance(150, 150, Image.SCALE_DEFAULT)); JLabel pic = new JLabel(icon); //pic.setSize(10, 10); //pic.setSize(50,100);????? //pic.drawImage(???,100, 100, 50, 50,null); jframe.setSize(450,300); jframe.setLocation(250,350); jframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); jframe.setVisible(true); JButton button1 = new JButton("添加"); JButton button2 = new JButton("修改"); JButton button3 = new JButton("查询"); JButton button4 = new JButton("删除"); JButton button5 = new JButton("浏览"); FlowLayout flow = new FlowLayout(FlowLayout.LEFT,10,10); JPanel panel = new JPanel(flow); panel.add(button1); panel.add(button2); panel.add(button3); panel.add(button4); panel.add(button5); panel.add(title); panel.add(pic); jframe.add(panel); try{ file.createNewFile(); System.out.println("creat ok!"); } catch (IOException e){ System.out.println("creat go die!"); e.printStackTrace(); } button1.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){Add add = new Add(); }}); button2.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){Change change = new Change();}}); button3.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){Ask ask = new Ask();}}); button4.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){Delete delete = new Delete();}}); button5.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){Look look = new Look();}}); }}
Add是添加功能
package JavaStuIO;import java.awt.GridLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.SQLException;import java.sql.Statement;import java.util.TreeMap;import java.io.*;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JOptionPane;import javax.swing.JPanel;import javax.swing.JTextField;import JavaStuIO.WindowIO;public class Add extends JFrame{ JLabel jlnumber = new JLabel("学号:");JLabel jlname = new JLabel("姓名:");JLabel jlsex = new JLabel("性别:");JLabel jlbirthday = new JLabel("出生日期:");JLabel jldepartment = new JLabel("学院:");JTextField jtnumber = new JTextField("",20);JTextField jtname = new JTextField("",20);JTextField jtsex = new JTextField("",20);JTextField jtbirthday = new JTextField("",20);JTextField jtdepartment = new JTextField("",20);JButton buttonadd = new JButton("添加");JButton buttonreturn = new JButton("返回");public Add() {//TreeMap<String,student> tm = new TreeMap<String,student>();JPanel jpnumber = new JPanel();JPanel jpname = new JPanel();JPanel jpsex = new JPanel();JPanel jpbirthday = new JPanel();JPanel jpdepartment = new JPanel();JPanel jpforbutton = new JPanel(new GridLayout(1,1));jpnumber.add(jlnumber);jpnumber.add(jtnumber);jpname.add(jlname);jpname.add(jtname);jpsex.add(jlsex);jpsex.add(jtsex);jpbirthday.add(jlbirthday);jpbirthday.add(jtbirthday);jpdepartment.add(jldepartment);jpdepartment.add(jtdepartment);jpforbutton.add(buttonadd);jpforbutton.add(buttonreturn);buttonadd.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){//Add//File file =new File("E:\\java用文件","file.txt");////String name = jtname.getText() + " ";//String number = jtnumber.getText() + " ";//String sex = jtsex.getText() + " ";//String birthday = jtbirthday.getText() + " ";//String department = jtdepartment.getText()+"\r\n";////student stu = new student(number,name,sex,birthday,department);////Writer out = null;// try{// out = new FileWriter(file,true);// out.write(stu.number);// out.write(stu.name);// out.write(stu.sex);// out.write(stu.birthday);// out.write(stu.department);// // // out.close();// System.out.println("write ok!");// }catch (IOException ee){// System.out.println("write go die!");// ee.printStackTrace();// // }File file =new File("E:\\java用文件","file.txt");FileInputStream fin = null;ObjectInputStream ois = null; try{ fin = new FileInputStream(file); //ois = new ObjectInputStream(fin); // TreeMap<String,student> tm = (TreeMap)ois.readObject(); //???fin.close();ois.close();//insertString name = jtname.getText();String number = jtnumber.getText();String sex = jtsex.getText();String birthday = jtbirthday.getText();String department = jtdepartment.getText();student stu = new student(number,name,sex,birthday,department);FileOutputStream fout = null;ObjectOutputStream oos = null;try{fout = new FileOutputStream(file); //oos = new ObjectOutputStream(fout); //tm.put(stu.number,stu);oos.writeObject(tm); fout.close();oos.close(); System.out.println("write ok!!!");JOptionPane.showMessageDialog(null,"世界线已经发生了变动 el psy congroo!");}catch (Exception er){er.printStackTrace();System.out.println("writeobject go die");}// }catch(Exception et){ System.out.println("go die!"); et.printStackTrace(); } jtnumber.setText(null);jtname.setText(null);jtsex.setText(null);jtbirthday.setText(null);jtdepartment.setText(null); //TreeMap<String,student> tm = new TreeMap<String,student>();//String name = jtname.getText();//String number = jtnumber.getText();//String sex = jtsex.getText();//String birthday = jtbirthday.getText();//String department = jtdepartment.getText();////student stu = new student(number,name,sex,birthday,department);////////FileOutputStream fout = null;//ObjectOutputStream oos = null;//try{//fout = new FileOutputStream(file); ////oos = new ObjectOutputStream(fout); //////tm.put(stu.number,stu);////oos.writeObject(tm); ////fout.close();//oos.close(); ////System.out.println("write ok!!!");//////}catch (Exception er){//er.printStackTrace();//System.out.println("writeobject go die");//}////jtnumber.setText(null);//jtname.setText(null);//jtsex.setText(null);//jtbirthday.setText(null);//jtdepartment.setText(null);//add end // // }});buttonreturn.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){}});this.setTitle("添加学生信息");this.setLayout(new GridLayout(9,1));this.add(jpnumber);this.add(jpname);this.add(jpsex);this.add(jpbirthday);this.add(jpdepartment);this.add(jpforbutton);this.setLocation(400,300);this.setSize(350,300);this.setVisible(true);}}
Ask是查询
package JavaStuIO;import java.sql.*;import java.util.TreeMap;import java.awt.*;import java.awt.event.*;import javax.swing.*;import java.io.*;import JavaStuIO.WindowIO;public class Ask extends JFrame {private static final long serialVersionUID = -1928970409928880648L;JLabel jlnumber = new JLabel("学号:");JLabel jlname = new JLabel("姓名:");JLabel jlsex = new JLabel("性别:");JLabel jlbirthday = new JLabel("出生日期:");JLabel jldepartment = new JLabel("学院:");JTextField jtnumber = new JTextField("",20);JLabel jname = new JLabel();JLabel jsex = new JLabel();JLabel jbirthday = new JLabel();JLabel jdepartment = new JLabel();JButton buttonask = new JButton("查询");JButton buttonreturn = new JButton("返回");public Ask() {JPanel jpnumber = new JPanel();JPanel jpname = new JPanel();JPanel jpsex = new JPanel();JPanel jpbirthday = new JPanel();JPanel jpdepartment = new JPanel();JPanel jpforbutton = new JPanel(new GridLayout(1,1));jpnumber.add(jlnumber);jpnumber.add(jtnumber);jpname.add(jlname);jpname.add(jname);jpsex.add(jlsex);jpsex.add(jsex);jpbirthday.add(jlbirthday);jpbirthday.add(jbirthday);jpdepartment.add(jldepartment);jpdepartment.add(jdepartment);jpforbutton.add(buttonask);jpforbutton.add(buttonreturn);buttonask.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){ //askString number = jtnumber.getText();File file =new File("E:\\java用文件","file.txt");//TreeMap<String,student> tm = new TreeMap<String,student>();FileInputStream fin = null;ObjectInputStream ois = null; try{ fin = new FileInputStream(file); //ois = new ObjectInputStream(fin); // TreeMap<String,student> tm = (TreeMap)ois.readObject(); //???student stu = (student)tm.get(number);if(tm.containsKey(number)) { jname.setText(stu.name); jsex.setText(stu.sex); jbirthday.setText(stu.birthday); jdepartment.setText(stu.department); } else { System.out.println("number is not exist!"); JOptionPane.showMessageDialog(null,"学号:excuse me?", "warning",JOptionPane.WARNING_MESSAGE); }fin.close();ois.close(); }catch(Exception et){ System.out.println("go die!"); et.printStackTrace(); } //end ask}});buttonreturn.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){//Window window = new Window();}});this.setTitle("查询学生信息");this.setLayout(new GridLayout(9,1));this.add(jpnumber);this.add(jpname);this.add(jpsex);this.add(jpbirthday);this.add(jpdepartment);this.add(jpforbutton);this.setLocation(400,300);this.setSize(350,300);this.setVisible(true);}}
Change是修改
package JavaStuIO;import java.sql.*;import java.util.TreeMap;import java.awt.*;import java.awt.event.*;import javax.swing.*;import java.io.*;import JavaStuIO.WindowIO;public class Change extends JFrame {private static final long serialVersionUID = -1928970409928880648L;JLabel jlnumber = new JLabel("学号:");JLabel jlname = new JLabel("姓名:");JLabel jlsex = new JLabel("性别:");JLabel jlbirthday = new JLabel("出生日期:");JLabel jldepartment = new JLabel("学院:");JTextField jtnumber = new JTextField("",20);JTextField jtname = new JTextField("",20);JTextField jtsex = new JTextField("",20);JTextField jtbirthday = new JTextField("",20);JTextField jtdepartment = new JTextField("",20);JButton buttonchange = new JButton("修改");JButton buttonreturn = new JButton("返回");public Change() {JPanel jpnumber = new JPanel();JPanel jpname = new JPanel();JPanel jpsex = new JPanel();JPanel jpbirthday = new JPanel();JPanel jpdepartment = new JPanel();JPanel jpforbutton = new JPanel(new GridLayout(1,1));jpnumber.add(jlnumber);jpnumber.add(jtnumber);jpname.add(jlname);jpname.add(jtname);jpsex.add(jlsex);jpsex.add(jtsex);jpbirthday.add(jlbirthday);jpbirthday.add(jtbirthday);jpdepartment.add(jldepartment);jpdepartment.add(jtdepartment);jpforbutton.add(buttonchange);jpforbutton.add(buttonreturn);buttonchange.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){String number = jtnumber.getText();String name = jtname.getText();String sex = jtsex.getText();String birthday = jtbirthday.getText();String department = jtdepartment.getText();//change File file = new File ("E:\\java用文件","file.txt"); FileInputStream fin = null;ObjectInputStream ois = null; try{ fin = new FileInputStream(file); //ois = new ObjectInputStream(fin); // TreeMap<String,student> tm = (TreeMap)ois.readObject(); //???fin.close();ois.close();//insertif(tm.containsKey(number)){student stu = new student(number,name,sex,birthday,department); tm.put(stu.number,stu); FileOutputStream fout = null;ObjectOutputStream oos = null;try{fout = new FileOutputStream(file); oos = new ObjectOutputStream(fout); oos.writeObject(tm); oos.close(); JOptionPane.showMessageDialog(null,"世界线已经发生了变动 el psy congroo!");}catch (IOException er){er.printStackTrace();System.out.println("writeobject go die");} }else{System.out.println("number is not exist!"); JOptionPane.showMessageDialog(null,"学号:excuse me?", "warning",JOptionPane.WARNING_MESSAGE);}// }catch(Exception et){ System.out.println("go die!"); et.printStackTrace(); } //TreeMap<String,student> tm = new TreeMap<String,student>(); jtnumber.setText(null);jtname.setText(null);jtsex.setText(null);jtbirthday.setText(null);jtdepartment.setText(null);//change end}});buttonreturn.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){//Window window = new Window();}});this.setTitle("修改学生信息");this.setLayout(new GridLayout(9,1));this.add(jpnumber);this.add(jpname);this.add(jpsex);this.add(jpbirthday);this.add(jpdepartment);this.add(jpforbutton);this.setLocation(400,300);this.setSize(350,300);this.setVisible(true);}}
Delete是删除功能
package JavaStuIO;import java.sql.*;import java.util.TreeMap;import java.awt.*;import java.awt.event.*;import javax.swing.*;import javax.swing.text.html.HTMLDocument.Iterator;import java.io.*;import JavaStuIO.WindowIO;import JavaStuIO.Add; public class Delete extends JFrame {private static final long serialVersionUID = -1928970409928880648L;//TreeMap<String,student> tm = new TreeMap<String,student>(); //treemapJLabel jlnumber = new JLabel("学号:");JTextField jtnumber = new JTextField("",20);JButton buttondelete = new JButton("删除");JButton buttonreturn = new JButton("返回");public Delete() {JPanel jpnumber = new JPanel();JPanel jpforbutton = new JPanel(new GridLayout(1,1));jpnumber.add(jlnumber);jpnumber.add(jtnumber);jpforbutton.add(buttondelete);jpforbutton.add(buttonreturn);buttondelete.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){//deleteString number = jtnumber.getText();File file =new File("E:\\java用文件","file.txt");//TreeMap<String,student> tm = new TreeMap<String,student>();FileInputStream fin = null;ObjectInputStream ois = null; try{ fin = new FileInputStream(file); //ois = new ObjectInputStream(fin); // TreeMap<String,student> tm = (TreeMap)ois.readObject(); //???//insert if(tm.containsKey(number)) { tm.remove(number); //remove System.out.println("delete ok!!!"); jtnumber.setText(null); FileOutputStream fout = null;ObjectOutputStream oos = null; try{fout = new FileOutputStream(file); //oos = new ObjectOutputStream(fout); //oos.writeObject(tm); //oos.close(); JOptionPane.showMessageDialog(null,"这个人已经不存在了呢 ");}catch (IOException er){er.printStackTrace();System.out.println("writeobject go die");} } else { System.out.println("number is not exist!"); JOptionPane.showMessageDialog(null,"学号:excuse me?", "warning",JOptionPane.WARNING_MESSAGE); } //insert endfin.close();ois.close(); }catch(Exception et){ System.out.println("go die!"); et.printStackTrace(); } // if(tm.isEmpty())// {// System.out.println("!!!!!!!!!!!!");// // } //delete end E:\\java用文件","file.txt}});buttonreturn.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){//Window window = new Window();}});this.setTitle("删除学生信息");this.setLayout(new GridLayout(9,1));this.add(jpnumber);this.add(jpforbutton);this.setLocation(400,300);this.setSize(350,300);this.setVisible(true);} }
Look是浏览功能
package JavaStuIO;import java.sql.*;import java.awt.*;import java.awt.event.*;import javax.swing.*;import java.util.*;import java.io.*;import JavaStuIO.WindowIO;public class Look extends JFrame {private static final long serialVersionUID = -1928970409928880648L;Connection conn = null;PreparedStatement ps = null;ResultSet res = null;//JButton buttonlook = new JButton("浏览");//JButton buttonreturn = new JButton("返回");JTable jtable;JScrollPane jscrollpane = new JScrollPane();Vector columnNames = null;Vector rowData = null;public Look() {JPanel jpforbutton = new JPanel(new GridLayout(1,1));columnNames = new Vector();columnNames.add("学号");columnNames.add("姓名");columnNames.add("性别");columnNames.add("出生日期");columnNames.add("学院");rowData = new Vector();JTextArea jtext = new JTextArea(16,30);//jpforbutton.add(buttonlook);//jpforbutton.add(buttonreturn);File file =new File("E:\\java用文件","file.txt");FileInputStream fin = null;ObjectInputStream ois = null; try{ fin = new FileInputStream(file); //ois = new ObjectInputStream(fin); // TreeMap<String,student> tm = (TreeMap)ois.readObject(); //???//insertif(tm.isEmpty()){System.out.println("nobody here!"); JOptionPane.showMessageDialog(null,"还没有人惹");}else{Set<Map.Entry<String, student>> tmSet = tm.entrySet();Iterator<Map.Entry<String,student>> treeIt = tmSet.iterator();while(treeIt.hasNext()){Map.Entry<String , student> treeEntry = treeIt.next();Vector hang = new Vector();student stu = treeEntry.getValue();hang.add(stu.number);hang.add(stu.name);hang.add(stu.sex);hang.add(stu.birthday);hang.add(stu.department);rowData.add(hang);}}//insert end fin.close();ois.close(); }catch(Exception et){ System.out.println("go die!"); et.printStackTrace(); }jtable = new JTable(rowData,columnNames);jscrollpane = new JScrollPane(jtable);this.add(jscrollpane);this.setTitle("浏览学生信息");this.setLayout(new GridLayout(2,5));this.add(jpforbutton);this.setLocation(300,300);this.setSize(500,300);this.setVisible(true);this.setResizable(false);}}
0 0
- Java IO的简易学生管理系统
- 简易学生管理系统(IO流、文件、)
- 简易的学生管理系统
- 简易的学生管理系统
- 简易学生管理系统。。。。
- 简易学生管理系统
- 简易学生管理系统
- 简易学生管理系统
- 简易学生管理系统
- java-IO 文件作为数据库的学生管理系统
- Java编程---2、(补充)用数组编写简易的学生管理系统-----定义学生类
- 简易C++学生管理系统
- 简易学生管理系统程序
- java编程---2、用数组编写简易的学生管理系统
- java--运用Map接口及其实现类完成简易学生系统的管理
- 小回顾-比较完善的学生简易管理系统
- 用数组实现简易的学生管理系统-1
- 学生管理系统IO版
- 5.The database instance is currently using SPFILE. View the Exhibit and examine the error that you
- php 获取远程图片大小 宽高
- C# Winform对文件夹的权限判断及处理
- 存取最高分的代码
- 利用sdwebImage下载图片
- Java IO的简易学生管理系统
- PropertyPlaceholderConfigurer用法
- WinForm中Label控件的换行显示
- html5的video详解
- 为什么计算机时间和众多编程语言要从1970年1月1日开始算起
- Java IO操作——简单了解RandomAccessFile随机读写文件操作类的使用
- Android开发禁止首次进入activity弹出软键盘,限制屏幕只能竖屏或者横屏展示
- 乘法逆元
- 关于动作的一些个人代码以及旋转源代码