package manage;
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.*;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;
//因为要写入对象文件,所以必须序列化
class Students implements Serializable{
private int id;
private String name;
private int age;
public Students(int id,String name,int age){
this.id=id;
this.name=name;
this.age=age;
}
public int getId(){
return id;
}
public String getName(){
return name;
}
public int getAge(){
return age;
}
public String toString(){
return id+" "+name+" "+age;
}
public void setId(int id){
this.id=id;
}
public void setName(String name){
this.name=name;
}
public void setAge(int age){
this.age=age;
}
}
class ManageSystem{
private final static String filename="students.dat";
private ArrayList<Students>arrayList=new ArrayList<>();
//主界面
JFrame jFrame=new JFrame("Student Manage System");
//按钮
JButton addButton=new JButton("添加学生");
JButton modifyButton=new JButton("修改学生");
JButton deleteButton=new JButton("删除学生");
JButton searchButton=new JButton("查找学生");
JButton showButton=new JButton("显示学生");
JButton exitButton=new JButton("退出系统");
public ManageSystem(){
//设置界面的大小,位置,以及组件
jFrame.setSize(800,700);
jFrame.setLocation(600,200);
jFrame.setLayout(null);
addButton.setBounds(200,50,400,75);
modifyButton.setBounds(200,150,400,75);
deleteButton.setBounds(200,250,400,75);
searchButton.setBounds(200,350,400,75);
showButton.setBounds(200,450,400,75);
exitButton.setBounds(200,550,400,75);
jFrame.add(addButton);
jFrame.add(modifyButton);
jFrame.add(deleteButton);
jFrame.add(searchButton);
jFrame.add(showButton);
jFrame.add(exitButton);
addButton.setVisible(true);
modifyButton.setVisible(true);
deleteButton.setVisible(true);
searchButton.setVisible(true);
showButton.setVisible(true);
exitButton.setVisible(true);
//读取文件
try{
FileInputStream fileInputStream=new FileInputStream(filename);
ObjectInputStream objectInputStream=new ObjectInputStream(fileInputStream);
Students students=null;
while((students=(Students)objectInputStream.readObject())!=null)
arrayList.add(students);
objectInputStream.close();
fileInputStream.close();
}
catch(Exception e){
e.printStackTrace();
}
}
//添加学生
public void AddStudent(){
addButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
//设置新界面
JDialog addDialog=new JDialog(jFrame);
addDialog.setLayout(new FlowLayout());
//界面标题
addDialog.setTitle("添加学生");
addDialog.setSize(800,700);
addDialog.setLocation(600,200);
//设置相关标签和文本框
JLabel idLabel=new JLabel("学号:");
JTextField idField=new JTextField("");
idField.setPreferredSize(new Dimension(100,50));
JLabel nameLabel=new JLabel("姓名:");
JTextField nameField=new JTextField("");
nameField.setPreferredSize(new Dimension(100,50));
JLabel ageLabel=new JLabel("年龄:");
JTextField ageField=new JTextField("");
ageField.setPreferredSize(new Dimension(100,50));
idLabel.setVisible(true);
idField.setVisible(true);
nameLabel.setVisible(true);
nameField.setVisible(true);
ageLabel.setVisible(true);
ageField.setVisible(true);
//将组件添加进入副界面addDialog
addDialog.add(idLabel);
addDialog.add(idField);
addDialog.add(nameLabel);
addDialog.add(nameField);
addDialog.add(ageLabel);
addDialog.add(ageField);
addDialog.setVisible(true);
//设置提交按钮
JButton submitButton=new JButton("确定");
submitButton.setBounds(300,400,200,75);
submitButton.setVisible(true);
addDialog.add(submitButton);
submitButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
//获取输入的内容
int id=Integer.parseInt(idField.getText());
String name=nameField.getText();
int age=Integer.parseInt(ageField.getText());
Students students=new Students(id,name,age);
arrayList.add(students);
//提交后返回主页面
addDialog.setVisible(false);
}
});
//设置返回按钮
JButton returnbutton=new JButton("返回");
returnbutton.setBounds(300,500,200,75);
returnbutton.setLayout(null);
returnbutton.setVisible(true);
addDialog.add(returnbutton);
returnbutton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
//返回主页面
addDialog.setVisible(false);
}
});
jFrame.add(addDialog);
}
});
}
//修改学生信息
public void ModifyStudent(){
modifyButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
//设置新界面
JDialog modifyDialog=new JDialog(jFrame);
modifyDialog.setTitle("修改学生");
modifyDialog.setSize(800,700);
modifyDialog.setLocation(600,200);
modifyDialog.setLayout(null);
modifyDialog.setVisible(true);
//搜索条件
JLabel namelabel=new JLabel("姓名");
JTextField namefield=new JTextField("");
namelabel.setBounds(100,0,60,40);
namefield.setBounds(160,0,200,40);
namelabel.setLayout(null);
namefield.setLayout(null);
namelabel.setVisible(true);
namefield.setVisible(true);
modifyDialog.add(namelabel);
modifyDialog.add(namefield);
//设置查询按钮
JButton searchbutton=new JButton("查询");
searchbutton.setBounds(0,0,60,40);
searchbutton.setLayout(null);
searchbutton.setVisible(true);
modifyDialog.add(searchbutton);
searchbutton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
//将符合条件的学生加入哈希表
Map<Integer,Students>map=new HashMap<>();
for(int i=0;i<arrayList.size();++i)
{
if(namefield.getText().equals(arrayList.get(i).getName()
没有合适的资源?快使用搜索试试~ 我知道了~
工作室java学习,提交代码
共62个文件
class:28个
java:12个
xml:8个
0 下载量 166 浏览量
2024-03-20
09:48:17
上传
评论
收藏 86KB ZIP 举报
温馨提示
工作室java学习,提交代码
资源推荐
资源详情
资源评论
收起资源包目录
workspace_idea.zip (62个子文件)
workspace_idea
JavaSenior
mystudentmanage
mystudentmanage.iml 433B
src
study
StudentManage.java 7KB
Student.java 1KB
students.dat 121B
src
com
atguigu
java
HelloWorld.java 165B
out
production
mystudentmanage
study
Student.class 1KB
StudentManager.class 5KB
untitled
JavaSenior
com
atguigu
java
HelloWorld.class 566B
studentmanage
manage
Students.class 1KB
ManageSystem$3$1$1.class 1KB
ManageSystem$3$2.class 817B
ManageSystem.class 4KB
ManageSystem$5.class 3KB
hello.class 488B
ManageSystem$3$1.class 3KB
ManageSystem$1$1.class 2KB
ManageSystem$2$1$1.class 2KB
ManageSystem$4.class 3KB
ManageSystem$2$1.class 4KB
ManageSystem$2$2.class 817B
ManageSystem$6.class 2KB
ManageSystem$4$1.class 5KB
ManageSystem$2.class 2KB
ManageSystem$1.class 2KB
ManageSystem$3.class 2KB
ManageSystem$4$2.class 817B
ManageSystem$5$1.class 815B
ManageSystem$1$2.class 814B
demo
application.yml.properties 0B
work
work01
work01
studentnumber.class 1KB
management
jdbc.properties 470B
system
studentsystem
test.class 513B
ManageSystem.class 8KB
student
manage
Student.class 1KB
StudentManager.class 5KB
studentmanage
src
manage
hello.java 32KB
studentmanage.iml 822B
demo
src
utils
DateUtil.java 1KB
HttpUtil.java 5KB
WxPushApplication.java 408B
application.yml.properties 0B
com
lx
wxpus
controller.java 7KB
demo.iml 433B
.idea
dataSources
0fa98da7-58d8-4f2e-9db5-2fe5831f9da2
storage_v2
_src_
schema
information_schema.FNRwLQ.meta 76B
08ad605a-d6f8-44fe-9062-6dbf1a20fdfd.xml 33KB
08ad605a-d6f8-44fe-9062-6dbf1a20fdfd
storage_v2
_src_
schema
information_schema.FNRwLQ.meta 76B
0fa98da7-58d8-4f2e-9db5-2fe5831f9da2.xml 1KB
dataSources.local.xml 2KB
workspace.xml 12KB
misc.xml 282B
dataSources.xml 813B
modules.xml 885B
.gitignore 230B
encodings.xml 205B
JavaSenior.iml 433B
work01
src
work01
studentnumber.java 912B
work01.iml 433B
system
lib
src
studentsystem
test.java 13KB
system.iml 822B
images
help
student
src
manage
StudentManager.java 10KB
Student.java 999B
student.iml 433B
共 62 条
- 1
资源评论
呆呆小板栗
- 粉丝: 504
- 资源: 92
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功