JAVA课程设计员工信息管理系统徐如飞.docx

上传人:b****6 文档编号:13104209 上传时间:2023-06-11 格式:DOCX 页数:45 大小:289.02KB
下载 相关 举报
JAVA课程设计员工信息管理系统徐如飞.docx_第1页
第1页 / 共45页
JAVA课程设计员工信息管理系统徐如飞.docx_第2页
第2页 / 共45页
JAVA课程设计员工信息管理系统徐如飞.docx_第3页
第3页 / 共45页
JAVA课程设计员工信息管理系统徐如飞.docx_第4页
第4页 / 共45页
JAVA课程设计员工信息管理系统徐如飞.docx_第5页
第5页 / 共45页
JAVA课程设计员工信息管理系统徐如飞.docx_第6页
第6页 / 共45页
JAVA课程设计员工信息管理系统徐如飞.docx_第7页
第7页 / 共45页
JAVA课程设计员工信息管理系统徐如飞.docx_第8页
第8页 / 共45页
JAVA课程设计员工信息管理系统徐如飞.docx_第9页
第9页 / 共45页
JAVA课程设计员工信息管理系统徐如飞.docx_第10页
第10页 / 共45页
JAVA课程设计员工信息管理系统徐如飞.docx_第11页
第11页 / 共45页
JAVA课程设计员工信息管理系统徐如飞.docx_第12页
第12页 / 共45页
JAVA课程设计员工信息管理系统徐如飞.docx_第13页
第13页 / 共45页
JAVA课程设计员工信息管理系统徐如飞.docx_第14页
第14页 / 共45页
JAVA课程设计员工信息管理系统徐如飞.docx_第15页
第15页 / 共45页
JAVA课程设计员工信息管理系统徐如飞.docx_第16页
第16页 / 共45页
JAVA课程设计员工信息管理系统徐如飞.docx_第17页
第17页 / 共45页
JAVA课程设计员工信息管理系统徐如飞.docx_第18页
第18页 / 共45页
JAVA课程设计员工信息管理系统徐如飞.docx_第19页
第19页 / 共45页
JAVA课程设计员工信息管理系统徐如飞.docx_第20页
第20页 / 共45页
亲,该文档总共45页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

JAVA课程设计员工信息管理系统徐如飞.docx

《JAVA课程设计员工信息管理系统徐如飞.docx》由会员分享,可在线阅读,更多相关《JAVA课程设计员工信息管理系统徐如飞.docx(45页珍藏版)》请在冰点文库上搜索。

JAVA课程设计员工信息管理系统徐如飞.docx

JAVA课程设计员工信息管理系统徐如飞

摘要

众所周知,当今社会是信息社会,因此,要想加强人事管理,单纯依靠以前的手工管理,不仅会浪费大量的人力,物力,财力,而且效率不高,而且很难达到预期的目的。

所以人事管理信息系统能够提供准确的人员信息,以便领导者了解企业各个部门的人员构成,安排好工作计划,使企业变的更高效。

该系统能够对某单位的职工进行管理,主要功能如下是:

一、人事资料输入:

输入员工信息,如姓名、身份证号、地址、电话、部门、工资、参加工作时间、专业、职务、备注等。

二、信息查询:

可根据职工编号、职工名称、出生年月范围、工资范围、参加工作时间范围等条件查询。

三、登陆检测、用户管理、密码修改、权限设置。

四、系统初始化:

包括操作员信息初始化和职工信息初始化。

五、用户信息修改:

拥有权限的操作员可以修改、冻结、删除普通用户。

关键词:

人事信息、java、用户界面

 

人事管理系统

一、设计目的

通过该课程设计,使同学们进一步理解概JAVA的基本概念、理论和方法,初步掌握JDK、Eclipse的调试和应用,以及程序中错误的解决方法,明确JAVA在实际程序设计中的应用。

使课堂中学习到理论得到应用,练习文件形式在JAVA程序设计中的应用。

二、设计问题

设计题目:

员工管理系统

设计要求:

(1)完成员工信息的添加、删除、查询、修改功能

(2)使用用户界面操作

(3)使用文件形式完成

设计思路:

首先设计界面进入面板,在面板中添加菜单选项,并将要实现的功能选项添加其中,然后对这些选项实施监听,实现其功能。

通过文件类型知识的应用,实现对员工信息的管理。

三、概要设计

1、从管理员角度讲,实现的功能是:

(1)对员工有关数据的输入功能

a)实现对员工基本信息的输入

b)实现对员工奖惩信息的输入

(2)对员工有关数据的更新功能

由管理员进行档案收集,经过对档案资料的处理,更新员工档案管理系统中的奖惩相关信息(包括员工基本信息和员工业绩信息)。

(3)对员工档案信息的查询功能

管理员可以通过自己的用户名和密码在因特网上对所有员工的信息(包括员工的档案信息、员工的业绩信息)进行查询。

(4)对员工、部门和部门领导信息的简单管理

(5)对用户密码的管理

2、从普通用户(员工)的角度讲,实现的功能是:

(1)在单位员工可以通过自己的编号和密码在因特网上对自己的个人信息(包括个人的档案信息、业绩信息)进行查询。

(2)对用户密码的管理

面板设计:

首先设计一个容器,然后再容器中添加菜单,在菜单中添加选项,并在容器中加入面板,面板布局设置为CardLayout,最后将面板添加进容器。

功能实现:

在录入、查询、修改和删除界面中使用JButton、JLabel、ButtonGroup、JRadioButton、JTextField、Choice为界面中加入相应的组件,并对其进行监听,同时附加了文件流的处理。

员工信息管理系统的系统运行流程图

四、详细设计

1、定义员工类:

publicclassEmployeeimplementsjava.io.Serializable

{

Stringnumber,name,discipling,grade,borth,sex;

publicEmployee()

{

}

publicvoidsetNumber(Stringnumber)

{

this.number=number;

}

publicStringgetNumber()

{

returnnumber;

}

publicvoidsetName(Stringname)

{

this.name=name;

}

publicStringgetName()

{

returnname;

}

publicvoidsetDiscipling(Stringdiscipling)

{

this.discipling=discipling;

}

publicStringgetDisciping()

{

returndiscipling;

}

publicvoidsetGrade(Stringgrade)

{

this.grade=grade;

}

publicStringgetGrade()

{

returngrade;

}

publicvoidsetBorth(Stringborth)

{

this.borth=borth;

}

publicStringgetBorth()

{

returnborth;

}

publicvoidsetSex(Stringsex)

{

this.sex=sex;

}

publicStringgetSex()

{

returnsex;

}}

2、主程序:

importjava.awt.*;

importjava.awt.event.*;

importjavax.swing.*;

importjava.io.*;

importjava.util.Hashtable;

publicclassEmployeeManagerextendsJFrameimplementsActionListener

{

EmployeeSituation基本信息录入=null;

ModifySituation基本信息修改=null;

Inquest基本信息查询=null;

Delete基本信息删除=null;

JMenuBarbar;

JMenufileMenu;

JMenuItem录入,修改,查询,删除;

Containercon=null;

Hashtable基本信息=null;

Filefile=null;

CardLayoutcard=null;

JLabellabel=null;

JPanelpCenter;

publicEmployeeManager()

{

录入=newJMenuItem("录入员工基本信息");

修改=newJMenuItem("修改员工基本信息");

查询=newJMenuItem("查询员工基本信息");

删除=newJMenuItem("删除员工基本信息");

bar=newJMenuBar();

fileMenu=newJMenu("菜单选项");

fileMenu.add(录入);

fileMenu.add(修改);

fileMenu.add(查询);

fileMenu.add(删除);

bar.add(fileMenu);

setJMenuBar(bar);

label=newJLabel("欢迎进入员工信息管理系统",JLabel.CENTER);

label.setFont(newFont("SansSerif",Font.BOLD+Font.ITALIC,25));

label.setForeground(Color.red);

基本信息=newHashtable();

录入.addActionListener(this);

修改.addActionListener(this);

查询.addActionListener(this);

删除.addActionListener(this);

card=newCardLayout();

con=getContentPane();

pCenter=newJPanel();

pCenter.setLayout(card);

pCenter.setBackground(Color.yellow);

file=newFile("基本信息.txt");

if(!

file.exists())

{

try

{

FileOutputStreamout=newFileOutputStream(file);

ObjectOutputStreamobjectOut=newObjectOutputStream(out);

objectOut.writeObject(基本信息);

objectOut.close();

out.close();

}

catch(IOExceptione)

{

}

}

基本信息录入=newEmployeeSituation(file);

基本信息修改=newModifySituation(file);

基本信息查询=newInquest(this,file);

基本信息删除=newDelete(file);

pCenter.add("欢迎语界面",label);

pCenter.add("录入界面",基本信息录入);

pCenter.add("修改界面",基本信息修改);

pCenter.add("删除界面",基本信息删除);

con.add(pCenter,BorderLayout.CENTER);

con.validate();

addWindowListener(newWindowAdapter()

{

publicvoidwindowClosing(WindowEvente)

{

System.exit(0);

}});

setVisible(true);

setBounds(100,50,420,380);

validate();

}

publicvoidactionPerformed(ActionEvente)

{

if(e.getSource()==录入)

{

card.show(pCenter,"录入界面");

}

elseif(e.getSource()==修改)

{

card.show(pCenter,"修改界面");

}

elseif(e.getSource()==查询)

{

基本信息查询.setVisible(true);

}

elseif(e.getSource()==删除)

{

card.show(pCenter,"删除界面");

}

}

publicstaticvoidmain(Stringargs[])

{

newEmployeeManager();

}}

3、实现员工信息的录入:

importjava.awt.*;

importjava.awt.event.*;

importjavax.swing.*;

importjava.io.*;

importjava.util.*;

publicclassEmployeeSituationextendsJPanelimplementsActionListener

{

Hashtable基本信息表=null;

JTextField员工号,姓名,工资;

Choice部门;

JRadioButton男,女;

Employee员工=null;

ButtonGroupgroup=null;

JButton录入,重置;

FileInputStreaminOne=null;

ObjectInputStreaminTwo=null;

FileOutputStreamoutOne=null;

ObjectOutputStreamoutTwo=null;

Filefile=null;

publicEmployeeSituation(Filefile)

{

this.file=file;

员工号=newJTextField(10);

姓名=newJTextField(10);

部门=newChoice();

部门.add("请选择");

部门.add("研发部");

部门.add("销售部");

部门.add("人事部");

部门.add("安全部");

工资=newJTextField(10);

group=newButtonGroup();

男=newJRadioButton("男",true);

女=newJRadioButton("女",false);

group.add(男);

group.add(女);

录入=newJButton("录入");

重置=newJButton("重置");

录入.addActionListener(this);

重置.addActionListener(this);

Boxbox1=Box.createHorizontalBox();

box1.add(newJLabel("员工号:

",JLabel.CENTER));

box1.add(员工号);

Boxbox2=Box.createHorizontalBox();

box2.add(newJLabel("姓名:

",JLabel.CENTER));

box2.add(姓名);

Boxbox3=Box.createHorizontalBox();

box3.add(newJLabel("性别:

",JLabel.CENTER));

box3.add(男);

box3.add(女);

Boxbox4=Box.createHorizontalBox();

box4.add(newJLabel("部门:

",JLabel.CENTER));

box4.add(部门);

Boxbox6=Box.createHorizontalBox();

box6.add(newJLabel("",JLabel.CENTER));

Boxbox5=Box.createHorizontalBox();

box5.add(newJLabel("工资:

",JLabel.CENTER));

box5.add(工资);

BoxboxH=Box.createVerticalBox();

boxH.add(box1);

boxH.add(box2);

boxH.add(box3);

boxH.add(box5);

boxH.add(box6);

boxH.add(box4);

boxH.add(Box.createVerticalGlue());

JPanelpCenter=newJPanel();

pCenter.add(boxH);

pCenter.setBackground(Color.yellow);

setLayout(newBorderLayout());

add(pCenter,BorderLayout.CENTER);

JPanelpSouth=newJPanel();

pSouth.add(录入);

pSouth.add(重置);

pSouth.setBackground(Color.yellow);

add(pSouth,BorderLayout.SOUTH);

validate();

}

publicvoidactionPerformed(ActionEvente)

{

if(e.getSource()==录入)

{

Stringnumber="";

number=员工号.getText();

if(number.length()>0)

{

try

{

inOne=newFileInputStream(file);

inTwo=newObjectInputStream(inOne);

基本信息表=(Hashtable)inTwo.readObject();

inOne.close();

inTwo.close();

}

catch(Exceptionee)

{

}

if(基本信息表.containsKey(number))

{

Stringwarning="该员工基本信息已存在,请到修改页面修改!

";

JOptionPane.showMessageDialog(this,warning,"警告",JOptionPane.WARNING_MESSAGE);

}

else

{

Stringm="基本信息将被录入!

";

intok=JOptionPane.showConfirmDialog(this,m,"确认",JOptionPane.YES_NO_OPTION,

JOptionPane.INFORMATION_MESSAGE);

if(ok==JOptionPane.YES_OPTION)

{

Stringname=姓名.getText();

Stringdiscipling=部门.getSelectedItem();

Stringgrade=工资.getText();

Stringsex=null;

if(男.isSelected())

{

sex=男.getText();

}

else

{

sex=女.getText();

}

员工=newEmployee();

员工.setNumber(number);

员工.setName(name);

员工.setDiscipling(discipling);

员工.setGrade(grade);

员工.setSex(sex);

try

{

outOne=newFileOutputStream(file);

outTwo=newObjectOutputStream(outOne);

基本信息表.put(number,员工);

outTwo.writeObject(基本信息表);

outTwo.close();

outOne.close();

员工号.setText(null);

姓名.setText(null);

工资.setText(null);

}

catch(Exceptionee)

{

System.out.println(ee);

}}}}

else

{

Stringwarning="必须要输入员工号!

";

JOptionPane.showMessageDialog(this,warning,"警告",JOptionPane.WARNING_MESSAGE);

}}

if(e.getSource()==重置)

{

员工号.setText(null);

姓名.setText(null);

部门.remove(部门.getSelectedIndex());

工资.setText(null);

}}}

 

 

 

4、实现员工信息的修改:

importjava.awt.*;

importjava.awt.event.*;

importjavax.swing.*;

importjava.io.*;

importjava.util.*;

publicclassModifySituationextendsJPanelimplementsActionListener

{

Hashtable基本信息表=null;

JTextField员工号,姓名,工资;

Choice部门;

JRadioButton男,女;

ButtonGroupgroup=null;

JButton开始修改,录入修改,重置;

FileInputStreaminOne=null;

ObjectInputStreaminTwo=null;

FileOutputStreamoutOne=null;

ObjectOutputStreamoutTwo=null;

Filefile=null;

publicModifySituation(Filefile)

{

this.file=file;

员工号=newJTextField(10);

姓名=newJTextField(10);

部门=newChoice();

部门.add("请选择");

部门.add("研发部");

部门.add("销售部");

部门.add("人事部");

部门.add("安全部");

工资=newJTextField(10);

group=newButtonGroup();

男=newJRadioButton("男",true);

女=newJRadioButton("女",false);

group.add(男);

group.add(女);

开始修改=newJButton("开始修改");

录入修改=newJButton("录入修改");

录入修改.setEnabled(false);

重置=newJButton("重置");

员工号.addActionListener(this);

开始修改.addActionListener(this);

录入修改.addActionListener(this);

重置.addActionListener(this);

Boxbox1=Box.createHorizontalBox();

box1.add(newJLabel("输入要修改信息的员工号:

",JLabel.CENTER));

box1.add(员工号);

box1.add(开始修改);

Boxbox2=Box.createHorizontalBox();

box2.add(newJLabel("姓名:

",JLabel.CENTER));

box2.add(姓名);

Boxbox3=Box.createHorizontalBox();

box3.add(newJLabel("性别:

",JLabel.CENTER));

box3.add(男);

box3.add(女);

Boxbox4=Box.createHorizontalBox();

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2