《最新Java课程设计报告——员工信息管理系统.doc》由会员分享,可在线阅读,更多相关《最新Java课程设计报告——员工信息管理系统.doc(24页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、Four short words sum up what has lifted most successful individuals above the crowd: a little bit more.-author-dateJava课程设计报告员工信息管理系统1 引言学号2014-2015学年 第二学期1308020123面向对象程序设计课程设计报告题目:员工信息管理系统分析与设计专业:网络工程班级:13级(1)班姓名:指导教师:成绩:计算机学院2015年5月22日-引言JAVA不仅是一门最为流行的计算机语言,而且已经形成一种专门的技术,带来了20世纪末和本世纪初网络科技和网络经济超常发
2、展。JAVA的与平台无关性、高可靠性、安全机制和内嵌网络支持等特性使它成为编写网络应用程序的首选工具之一。从另一方面来看,软件开发的规模也日渐扩大,对软件质量的要求越来越高,与之相对应的是,各种软件技术和工具层出不穷,各种软件开发、软件质量控制、软件管理法方法学业日渐成熟。面对软件发展的这一现状和趋势,无论是拥有计算机基础知识的学生还是IT领域的起步者,熟练掌握一门语言都是至关重要的。JAVA是一个面向对象的程序设计软件,它将重点放在数据和对象的接口上,与C+相比的主要不同在于多继承,在JAVA中,取而代之的是简单的接口,以及JAVA的元类模型。这也很大程度上给我们初学编程的人带来很呆的方便,
3、也使我们更容易掌握JAVA编程的一些基本要领和深层知识。该程序是利用文件来实现的,程序的重要作用是对员工信息进行管理,包括员工信息的添加、查询、修改、删除。通过该课程设计,使同学们进一步理解概JAVA的基本概念、理论和方法,初步掌握JDK、Eclipse的调试和应用,以及程序中错误的解决方法,明确JAVA在实际程序设计中的应用。使课堂中学习到理论得到应用,练习文件形式在JAVA程序设计中的应用。目录1. 设计目的.12. 设计问题.13. 概要设计.14. 详细设计.1 4.1员工类的定义.2 4.2主模块的设计.3 4.3员工信息录入模块的实现.44.4员工信息修改模块的实现.74.5员工信
4、息查询模块的实现.104.6员工信息删除模块的实现.125. 设计总结.14参考文献.151设计目的通过该课程设计,使同学们进一步理解概JAVA的基本概念、理论和方法,初步掌握JDK、Eclipse的调试和应用,以及程序中错误的解决方法,明确JAVA在实际程序设计中的应用。使课堂中学习到理论得到应用,练习文件形式在JAVA程序设计中的应用。2设计问题设计题目:员工管理系统设计要求:(1)完成员工信息的添加、删除、查询、修改功能(2)使用用户界面操作(3)使用文件形式完成设计思路:首先设计界面进入面板,在面板中添加菜单选项,并将要实现的功能选项添加其中,然后对这些选项实施监听,实现其功能。通过文
5、件类型知识的应用,实现对员工信息的管理。3概要设计面板设计:首先设计一个容器,然后再容器中添加菜单,在菜单中添加选项,并在容器中加入面板,面板布局设置为CardLayout,最后将面板添加进容器。功能实现:在录入、查询、修改和删除界面中使用JButton、JLabel、ButtonGroup、JRadioButton、JTextField、Choice为界面中加入相应的组件,并对其进行监听,同时附加了文件流的处理。4详细设计4.1定义员工类public class Employee implements java.io.Serializable String number,name,disci
6、pling,grade,borth,sex; public Employee() public void setNumber(String number) this.number=number; public String getDisciping() return discipling; public void setSex(String sex) this.sex=sex; public String getSex() return sex; 4.2主程序public class EmployeeManager extends JFrame implements ActionListene
7、rEmployeeSituation 基本信息录入=null; ModifySituation 基本信息修改=null; Inquest 基本信息查询=null; Delete 基本信息删除=null; public EmployeeManager() 录入=new JMenuItem(录入员工基本信息); 修改=new JMenuItem(修改员工基本信息); 查询=new JMenuItem(查询员工基本信息); 删除=new JMenuItem(删除员工基本信息); bar=new JMenuBar(); 基本信息录入=new EmployeeSituation(file); 基本信息修
8、改=new ModifySituation(file); 基本信息查询=new Inquest(this,file); 基本信息删除=new Delete(file); pCenter.add(欢迎语界面,label); pCenter.add(录入界面,基本信息录入); pCenter.add(修改界面,基本信息修改); pCenter.add(删除界面,基本信息删除); con.add(pCenter,BorderLayout.CENTER); con.validate(); addWindowListener(new WindowAdapter() public void windowC
9、losing(WindowEvent e) System.exit(0); ); public static void main(String args) new EmployeeManager(); 图1 建立登录界面图2 完善登录系统4.3实现员工信息的录入public class EmployeeSituation extends JPanel implements ActionListener Hashtable 基本信息表=null; JTextField 员工号,姓名,工资; Choice 部门; JRadioButton 男,女; Employee 员工=null; Button
10、Group group=null; JButton 录入,重置; FileInputStream inOne=null; ObjectInputStream inTwo=null; FileOutputStream outOne=null; ObjectOutputStream outTwo=null; File file=null; public EmployeeSituation(File file) this.file=file; 员工号=new JTextField(10); 姓名=new JTextField(10); 部门=new Choice(); 部门.add(请选择); 部门
11、.add(研发部); 部门.add(销售部); 部门.add(人事部); 部门.add(安全部); 工资=new JTextField(10); public void actionPerformed(ActionEvent e) if(e.getSource()=录入) String number=; number=员工号.getText(); if(number.length()0) try inOne=new FileInputStream(file); inTwo=new ObjectInputStream(inOne); 基本信息表=(Hashtable)inTwo.readObje
12、ct(); inOne.close(); inTwo.close(); catch(Exception ee) if(基本信息表.containsKey(number) String warning=该员工基本信息已存在,请到修改页面修改!; JOptionPane.showMessageDialog(this,warning,警告,JOptionPane.WARNING_MESSAGE); else String warning=必须要输入员工号!; if(e.getSource()=重置) 员工号.setText(null); 姓名.setText(null); 部门.remove(部门.
13、getSelectedIndex(); 工资.setText(null); 图3 准备录入系统图4 录入信息图5 确定录入信息4.4实现员工信息的修改public class ModifySituation extends JPanel implements ActionListener Hashtable 基本信息表=null; JTextField 员工号,姓名,工资; Choice 部门;JRadioButton 男,女;ButtonGroup group=null;public ModifySituation(File file)this.file=file;员工号=new JText
14、Field(10);姓名=new JTextField(10); 部门=new Choice();pCenter.setBackground(Color.yellow); setLayout(new BorderLayout(); add(pCenter,BorderLayout.CENTER); JPanel pSouth=new JPanel(); pSouth.add(录入修改); pSouth.add(重置); pSouth.setBackground(Color.yellow); add(pSouth,BorderLayout.SOUTH); validate(); else if(
15、e.getSource()=录入修改) String number=;number=员工号.getText();if(number.length()0)try inOne=new FileInputStream(file); inTwo=new ObjectInputStream(inOne); 基本信息表=(Hashtable)inTwo.readObject(); inOne.close(); inTwo.close(); catch(Exception ee) if(e.getSource()=重置) 员工号.setText(null);姓名.setText(null);部门.remov
16、e(部门.getSelectedItem();工资.setText(null); 图6 输入要修改的信息图7 录入修改图8 确定修改4.5实现员工信息的查询public class Inquest extends JDialog implements ActionListener Hashtable 基本信息表=null; JTextField 员工号,姓名,部门,工资; JRadioButton 男,女;JButton 查询; public void actionPerformed(ActionEvent e) 姓名.setText(null); 部门.setText(null); 工资.s
17、etText(null); if(e.getSource()=查询|e.getSource()=员工号) String number=; number=员工号.getText(); String warning=必须要输入员工号!; JOptionPane.showMessageDialog(this,warning,警告,JOptionPane.WARNING_MESSAGE); 图9 显示查询对话框图10 输入查询的员工号4.6实现员工信息的删除public class Delete extends JPanel implements ActionListener Hashtable 基本
18、信息表=null; JTextField 员工号,姓名,部门,工资; JRadioButton 男,女;JButton 删除; public void actionPerformed(ActionEvent e) if(e.getSource()=删除|e.getSource()=员工号) String number=; number=员工号.getText(); if(number.length()0) try inOne=new FileInputStream(file); inTwo=new ObjectInputStream(inOne); 基本信息表=(Hashtable)inTwo
19、.readObject(); inOne.close(); inTwo.close(); catch(Exception ee) if(基本信息表.containsKey(number) Employee stu=(Employee)基本信息表.get(number); 姓名.setText(stu.getName(); 部门.setText(stu.getDisciping(); 工资.setText(stu.getGrade(); if(stu.getSex().equals(男) 男.setSelected(true); else 女.setSelected(true); String
20、m=确定要删除该员工号及全部信息吗?; int ok=JOptionPane.showConfirmDialog(this,m,确认,JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE); else if(ok=JOptionPane.NO_OPTION) 员工号.setText(null); 姓名.setText(null); 部门.setText(null); 工资.setText(null); else String warning=该员工号不存在!; JOptionPane.showMessageDialog(this,war
21、ning,警告,JOptionPane.WARNING_MESSAGE); 图11 删除对话框显示图12 确定删除的信息5设计总结本次JAVA课程设计我所编写的程序是员工信息管理系统,程序中实现了对员工信息的添加、查询、修改、删除的功能,我是应用文件的形式完成的,其中还应用到了图形用户界面。我设计的程序简单易懂,操作简单,且 适用于不同的单位使用,只需按照自己的需要将所要录入的信息名称做添加或修改就可以实现。通过这次JAVA的程序设计,使我对JAVA有了更加深入的了解,巩固了我对JAVA基础知识的掌握,并且能够更加熟练的应用JDK与Eclipse进行JAVA程序的编写。参考文献1(美)Cay S.Horstmann、Gary Cornell(叶乃文、邝劲筠 等译).JAVA2 核心技术卷M.第七版.机械工业出版社,20062 龚永罡、陈昕.Java程序设计M.清华大学出版社,20093 刘兆宏、郑莉、陈建、罗频捷.Java语言程序设计案例教程M.清华大学出版社,20084 王舜燕、钟珞.Java编程方法学M.北京邮电大学出版社,2008