JAVA课程设计员工信息管理系统
Java实现员工信息管理系统

Java实现员⼯信息管理系统在Java SE中,对IO流与集合的操作在应⽤中⽐较重要。
接下来,我以⼀个⼩型项⽬的形式,演⽰IO流、集合等知识点在实践中的运⽤。
该项⽬名称为“员⼯信息管理系统”(或“员⼯收录系统”),主要是通过输⼊员⼯的id、姓名信息,实现简单的增删改查功能。
该项⽬主要在DOS窗⼝的控制台或者Eclipse的控制台上进⾏操作。
操作界⾯如下:该项⽬的⽂件结构如下:Step 1:⼊⼝类SystemMain的代码为:package empsystem;import java.util.Scanner;/*** 主界⾯* ⼀个Scanner录⼊对象* Employ类* ⽂件路径* 查重SearchID* @author 李章勇**/public class SystemMain {private Scanner sc=new Scanner(System.in);public SystemMain() {showWelcome();}public void showWelcome(){System.out.println("----员⼯收录系统");System.out.println("1.增加员⼯功能");System.out.println("2.查看员⼯功能");System.out.println("3.修改员⼯功能");System.out.println("4.删除员⼯功能");System.out.println("5.退出系统");String choice=sc.nextLine();switch(choice){case "1":System.out.println("您选择了增加⽤户功能");//Addnew Add();break;case "2":System.out.println("您选择了查看⽤户功能");//Searchnew ShowEmp();break;case "3":System.out.println("您选择了修改⽤户功能");//Modifynew Modify();break;case "4":System.out.println("您选择了删除⽤户功能");//删除⽤户Deletenew Delete();break;case "5":System.out.println("您选择了退出系统");return;default:System.out.println("⽆此功能");break;}}}Step 2:写⽂件路径FilePath接⼝。
员工管理系统java课程设计代码

员工管理系统java课程设计代码员工管理系统是一个非常广泛的课程设计主题,它涉及到许多方面,包括数据库设计、用户界面设计、业务逻辑等等。
由于篇幅限制,我将简要介绍员工管理系统的Java课程设计代码的一般架构和关键功能,希望能够帮助你理解和实现这样一个系统。
首先,员工管理系统通常需要一个数据库来存储员工信息,包括员工的个人信息、工资、部门等。
在Java中,你可以使用JDBC 来连接数据库,执行SQL语句来实现数据的增删改查操作。
你需要创建一个数据库连接类来管理数据库连接,以及实现员工信息的增删改查功能。
其次,员工管理系统需要一个用户界面来实现用户与系统的交互。
你可以使用Swing或JavaFX等GUI库来创建界面,包括登录界面、员工信息管理界面等。
在界面上,你需要实现各种按钮、文本框等组件来实现用户的操作,比如添加员工、删除员工、修改员工信息等。
另外,员工管理系统还需要实现一些业务逻辑,比如计算员工的工资、根据部门查询员工信息等。
你可以创建一个业务逻辑类来实现这些功能,然后在界面上调用这些方法来实现相应的功能。
此外,为了保证系统的安全性和稳定性,你还需要进行异常处理、输入验证等工作。
在Java中,你可以使用try-catch语句来捕获异常,并使用正则表达式等方法来验证用户的输入。
最后,为了保证代码的可维护性和可扩展性,你可以将不同的功能模块分别封装成不同的类,采用面向对象的编程思想来设计代码结构。
总的来说,员工管理系统的Java课程设计代码涉及到数据库连接、用户界面设计、业务逻辑实现等多个方面。
希望以上简要介绍能够对你有所帮助。
如果你需要更具体的代码实现或者其他方面的帮助,请随时告诉我。
员工管理系统java课程设计代码

员工管理系统Java课程设计代码一、需求分析在公司中,员工管理是一个至关重要的环节。
为了提高管理效率,我们需要一个员工管理系统。
本系统可以实现员工信息的录入、查询、修改和删除等功能,同时能够根据不同的需求输出相应的报表。
本文将介绍员工管理系统的Java课程设计代码实现。
二、系统架构1. 数据库设计我们将使用MySQL数据库存储员工信息。
数据库中将包含一个employee表,用于存储员工的基本信息,如员工号、姓名、性别、职位、入职日期等字段。
2. 后台逻辑后台逻辑部分将采用Java语言进行编码。
我们将使用JDBC连接数据库,实现数据的增删改查操作。
同时,我们将采用面向对象的编程思想,设计Employee类来表示员工信息,EmployeeDAO类用于实现数据库操作。
3. 前端界面前端界面将采用简单的控制台界面。
用户可以通过控制台界面输入操作指令,实现员工信息的录入、查询、修改和删除操作。
三、功能实现1. 员工信息录入用户可以输入员工的基本信息,程序将会将信息保存到数据库中。
2. 员工信息查询用户可以通过员工号或者姓名进行查询,程序将会从数据库中检索相应的员工信息,并输出到控制台。
3. 员工信息修改用户可以输入员工号和需要修改的信息,程序将会更新数据库中对应员工的信息。
4. 员工信息删除用户可以输入员工号,程序将会从数据库中删除对应员工的信息。
5. 输出报表系统提供了不同的报表输出选项,如按照职位统计员工人数、按照性别统计员工平均工资等。
四、代码示例public class Employee {private int empId;private String empName;private String gender;private String position;private Date hireDate;// 省略getter和setter方法}public class EmployeeDAO {public void addEmployee(Employee emp) {// 实现员工信息添加逻辑}public Employee findEmployeeById(int empId) {// 实现根据员工号查询员工信息逻辑}public void updateEmployee(Employee emp) {// 实现员工信息更新逻辑}public void deleteEmployee(int empId) {// 实现员工信息删除逻辑}}// 程序入口public class Main {public static void main(String[] args) {// 主程序逻辑,包括界面交互和调用DAO方法}}五、总结通过本文的介绍,我们可以看到员工管理系统的Java课程设计代码实现是一个比较完整的系统,涵盖了从数据库设计到后台逻辑再到前端界面的全方位内容。
员工管理系统Java课程设计

课程设计(论文)任务书摘要Java语言是当前最为流行的程序设计语言之一,诸多优秀的的特性使其成为被业界广泛认可和采用的工具。
随着目前公司规模的渐渐扩大,员工管理将成为意见不得不总是的问题。
有些公司人员流动较大,而且人数动辄上百人,,若采用传统的方式进行管理,不仅易出错更是一件令人痛疼的事。
随着计算机的诞生,在此领域产生众多的信息管理系统来管理信息,不仅信息处理方便,而且简单强大。
本系统正事其中的一项,针对员工信息管理,方便公司对员工的信息进行处理,极大减少了人事管理的工作量。
另一方面,本系统中所涉及到图形用户界面设计是我们学习程序设计这门课的难点兼重点,通过审计本系统不仅巩固了我们的基础,以及程序设计能力,还锻炼了我们对程序设计的流程及大体上的把握不仅如此,在设计过程中,我们的调试能力也得到增强。
使我们对设计“大程序”有了经验。
目前,无论是机关、事业单位、还是企业单位,员工管理对于组织生存与长远发展所具备的重要性都已经有了明确的认识,而员工管理水平的提升不仅需要高素质的管理人员,而且也需要信息化工具进行辅助.在现代化的企业管理中,员工管理系统有着十分重要的作用!关键词:文件和流界面设计GUI 异常处理 Hashtable类目录一、设计目的............................. 错误!未定义书签。
二、设计问题............................. 错误!未定义书签。
2.1课设问题..................................... 错误!未定义书签。
2.2设计思路..................................... 错误!未定义书签。
三、概要设计 (6)3.1程序功能模块设计的实现....................... 错误!未定义书签。
3.2系统总体结构................................. 错误!未定义书签。
职工管理系统java课程设计简单实现

3.1问题描述
对单位的职工进行管理,包括插入、删除、查找、排序等功能。
3.2要求
职工对象包括员工号(员工号不重复),姓名(字符串),性别(字符),年龄(数字),学历(字符串),部门(字符串),工资(数字),住址(字符串),电话(数字)等信息。
(1)新增一名职工:将新增职工各项资料加入数据库。
a[i][5]=rs.getString(6);
a[i][6]=rs.getString(7);
a[i][7]=rs.getString(8);
a[i][8]=rs.getString(9);
a[i][9]=String.valueOf(rs.getFloat(10));
a[i][10]=String.valueOf(rs.getInt(11));
职工信息管理系统设计
一、绪论
1.1关键技术介绍
Java是一种可以撰写跨平台应用程序的面向对象的程序设计语言。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。主要工作是通过编程语言来制作互联网页面、制作动态效果以及网站等技术。
try{if(rs.next()){//对select结果的判断,若存在重复,则运行下面提示
JOptionPane.showMessageDialog(null,"该员工号码存在,请重新输入!","警告",JOptionPane.PLAIN_MESSAGE);}
else{
String Sex=null;
(2)删除一名职工:从数据库中删除一名职工对象。
(3)查询:按照员工号、姓名、部门查询已存在的员工信息。
JAVA课设职工信息管理系统

*******************实践教学*******************JAVA课程设计题目:职工信息管理系统专业班级:姓名:学号:指导教师:成绩:摘要用计算机管理职工信息具有可靠、方便、省时省力的特点。
当今各种管理软件大部分只针对一个公司或者更大的范围来编写,它具有通用性良好的特点,但对于小领域如一个系来说,它就很难适应这个系特殊的管理。
而该设计正是基于职工信息管理的特点来开发的。
它可以实现职工信息的录入、添加、修改、删除、查询、保存到数据库等基本功能。
同时还为管理者提供统计、制表、系统日志、开介绍信等特色功能。
该系统具有界面友好、操作方便、成本低廉、符合管理者习惯的特点。
另外,系统采用Java语言开发,具有可移植性良好、不依赖于操作系统的特点。
同时采用My SQL数据库管理系统做数据库,是因为它具有管理方便,存储量大的特点,适合计算机系信息管理的要求,它主要包含以下几个模块:系统权限的设定、原始数据录入、数据的汇总及查询等。
本文系统的分析了软件开发的背景以过程;首先介绍了软件的开发环境,其次介绍了本软件的详细设计过程:数据库的设计、各个模块的设计和实现,以及具体界面的设计和功能。
关键词:职工管理信息系统职工信息目录一、需求分析 (1)二、总体设计 (2)三、详细设计 (3)3.1基础数据定义 (3)3.2主要功能实现 (5)3.3数据库表定义 (25)四、测试 (28)4.1登录主界面 (28)4.2管理员身份登录主界面 (28)4.3普通用户身份登录主界面 (29)4.4t添加职工信息 (29)4.5修改职工信息 (30)4.6职工信息查询 (30)4.6删除职工信息 (31)4.6添加用户信息 (31)4.6修改用户信息 (32)4.6用户信息查询 (32)4.6删除用户信息................................................................................................................. ..334.6用户密码修改 (33)设计总结 (34)参考文献 (35)致谢 (36)一、需求分析1.1问题描述对职工信息进行管理,包括:职工信息的录入、修改、删除、更新,还有对登录用户进行管理,包括用户信息的录入、删除、修改,密码修改等管理,还有对用户信息的现实打印,查找等。
基于 java web 的职工信息管理系统设计与实现

基于java web 的职工信息管理系统设计与实现全文共四篇示例,供读者参考第一篇示例:随着互联网的发展和技术的进步,各种企业内部管理系统已经成为现代企业管理中必不可少的一部分。
职工信息管理系统是企业内部管理系统中的一个重要组成部分,它能够帮助企业更好地管理和利用职工的信息,提高工作效率和管理水平。
本文将介绍基于java web的职工信息管理系统设计与实现,以帮助企业构建一套高效、灵活、安全的职工信息管理系统。
一、系统需求分析1.功能需求:系统应具备以下主要功能- 用户管理:包括管理员和普通用户两种角色,管理员具有添加、修改、删除用户的权限,普通用户只能查看和修改自己的信息。
- 职工信息管理:包括职工的基本信息、工作经历、教育背景等信息的录入、修改、查询和删除功能。
- 权限管理:不同角色的用户应该有不同的权限进行数据操作。
- 数据统计分析:系统应具备数据统计和分析功能,能够生成各种统计报表和图表。
- 日志管理:系统应具备日志管理功能,记录用户的操作日志以便追踪和审计。
2.性能需求:系统应具备高性能、稳定性和安全性,能够支持大量数据的处理和快速响应用户请求。
3.界面需求:系统应具备友好的用户界面,符合用户操作习惯,易于操作和管理。
二、系统设计与实现1.技术选型:本系统采用java web技术进行开发,使用spring mvc+mybatis进行框架搭建,数据库采用mysql进行数据存储,前端使用bootstrap+jquery进行页面设计,权限控制采用shiro进行管理。
2.系统架构设计:本系统采用MVC架构进行设计,将系统分为模型层、视图层和控制层,以降低系统的耦合度和提高系统的扩展性。
3.数据库设计:根据系统需求分析,设计数据库表包括用户表、职工信息表、日志表等,通过外键进行关联,确保数据的完整性和一致性。
4.功能模块设计:根据系统功能需求,设计系统的功能模块包括用户管理模块、职工信息管理模块、权限管理模块、数据统计分析模块、日志管理模块等。
基于 java web 的职工信息管理系统设计与实现

基于 Java Web 的职工信息管理系统设计和实现可以包括以下几个主要部分:需求分析、系统设计、系统实现和系统测试。
1. 需求分析首先,我们需要明确系统的需求。
职工信息管理系统需要管理职工的基本信息,如姓名、性别、年龄、部门等。
此外,系统还需要包括一些其他功能,如添加、修改、删除职工信息,查询职工信息等。
2. 系统设计在设计系统时,我们需要考虑系统的架构、数据库设计、界面设计等。
* 架构:我们可以使用 MVC(Model-View-Controller)架构来设计系统。
Model部分处理数据和业务逻辑,View部分负责展示数据,Controller部分负责接收用户请求并调用相应的Model和View。
* 数据库设计:我们需要设计一个数据库来存储职工信息。
可以使用关系型数据库如MySQL或Oracle,设计一张职工信息表来存储职工的基本信息。
* 界面设计:可以使用HTML、CSS和JavaScript来设计用户界面。
可以使用Java的Web框架如Spring MVC或Struts来简化开发过程。
3. 系统实现在实现系统时,我们需要编写代码来实现上述的设计。
具体的实现步骤可能包括:* 编写Model代码,包括处理职工信息增删改查的DAO(数据访问对象)和业务逻辑代码。
* 编写Controller代码,处理用户请求并调用相应的Model和View。
* 编写View代码,展示职工信息并响应用户的操作。
* 配置数据库连接,确保系统能够正常访问数据库。
4. 系统测试在系统开发完成后,我们需要进行系统测试以确保系统的功能和性能都符合要求。
可以使用JUnit等测试框架来编写测试用例并执行测试。
这只是一个简单的概述,实际的开发过程可能会更复杂,需要更多的细节考虑和实际操作经验。
此外,系统的安全性、可扩展性和可维护性也是需要考虑的重要因素。
在实现过程中,你可能需要使用到一些Java Web开发框架,如Spring、Hibernate等。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
JA V A员工管理系统实验报告姓名:***学号:***********班级:信10-1北方工业大学理学院信息与计算科学系2013年12月17日员工管理系统一、实验目的通过该课程设计,使同学们进一步理解概JAVA的基本概念、理论和方法,初步掌握JDK、Eclipse的调试和应用,以及程序中错误的解决方法,明确JAVA在实际程序设计中的应用。
使课堂中学习到理论得到应用,练习文件形式在JAVA程序设计中的应用。
二、实验内容A.设计题目:员工管理系统设计要求:(1)完成员工信息的添加、删除、查询、修改功能(2)使用用户界面操作(3)使用文件形式完成设计思路:首先设计界面进入面板,在面板中添加菜单选项,并将要实现的功能选项添加其中,然后对这些选项实施监听,实现其功能。
通过文件类型知识的应用,实现对员工信息的管理。
B.概要设计面板设计:首先设计一个容器,然后再容器中添加菜单,在菜单中添加选项,并在容器中加入面板,面板布局设置为CardLayout,最后将面板添加进容器。
功能实现:在录入、查询、修改和删除界面中使用JButton、JLabel、ButtonGroup、JRadioButton、JTextField、Choice为界面中加入相应的组件,并对其进行监听,同时附加了文件流的处理。
C.详细设计1、定义员工类:public class Employee implements java.io.Serializable{String number,name,discipling,grade,borth,sex;public Employee(){}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 setDiscipling(String discipling) {this.discipling=discipling;}public String getDisciping(){return discipling;}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 void setSex(String sex){this.sex=sex;}public String getSex(){return sex;}}2、主程序:import java.awt.*;import java.awt.event.*;import javax.swing.*;import java.io.*;import java.util.Hashtable;public class EmployeeManager extends JFrame implements ActionListener {EmployeeSituation 基本信息录入=null;ModifySituation 基本信息修改=null;Inquest 基本信息查询=null;Delete 基本信息删除=null;JMenuBar bar;JMenu fileMenu;JMenuItem 录入,修改,查询,删除;Container con=null;Hashtable 基本信息=null;File file=null;CardLayout card=null;JLabel label=null;JPanel pCenter;public EmployeeManager(){录入=new JMenuItem("录入员工基本信息");修改=new JMenuItem("修改员工基本信息");查询=new JMenuItem("查询员工基本信息");删除=new JMenuItem("删除员工基本信息");bar=new JMenuBar();fileMenu=new JMenu("菜单选项");fileMenu.add(录入);fileMenu.add(修改);fileMenu.add(查询);fileMenu.add(删除);bar.add(fileMenu);setJMenuBar(bar);label=new JLabel("欢迎进入员工信息管理系统",JLabel.CENTER);label.setFont(new Font("SansSerif",Font.BOLD+Font.ITALIC,25));label.setForeground(Color.red);基本信息=new Hashtable();录入.addActionListener(this);修改.addActionListener(this);查询.addActionListener(this);删除.addActionListener(this);card=new CardLayout();con=getContentPane();pCenter=new JPanel();pCenter.setLayout(card);pCenter.setBackground(Color.yellow);file=new File("基本信息.txt");if(!file.exists()){try{FileOutputStream out=new FileOutputStream(file);ObjectOutputStream objectOut=new ObjectOutputStream(out);objectOut.writeObject(基本信息);objectOut.close();out.close();}catch(IOException e){}}基本信息录入=new EmployeeSituation(file);基本信息修改=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 windowClosing(WindowEvent e){System.exit(0);}});setVisible(true);setBounds(100,50,420,380);validate();}public void actionPerformed(ActionEvent e){if(e.getSource()==录入){card.show(pCenter,"录入界面");}else if(e.getSource()==修改){card.show(pCenter,"修改界面"); }else if(e.getSource()==查询){基本信息查询.setVisible(true); }else if(e.getSource()==删除){card.show(pCenter,"删除界面"); }}public static void main(String args[]) {new EmployeeManager();}}3、实现员工信息的录入:import java.awt.*;import java.awt.event.*;import javax.swing.*;import java.io.*;import java.util.*;public class EmployeeSituation extends JPanel implements ActionListener {Hashtable 基本信息表=null;JTextField 员工号,姓名,工资;Choice 部门;JRadioButton 男,女;Employee 员工=null;ButtonGroup 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("请选择");部门.add("研发部");部门.add("销售部");部门.add("人事部");部门.add("安全部");工资=new JTextField(10);group=new ButtonGroup();男=new JRadioButton("男",true);女=new JRadioButton("女",false);group.add(男);group.add(女);录入=new JButton("录入");重置=new JButton("重置");录入.addActionListener(this);重置.addActionListener(this);Box box1=Box.createHorizontalBox(); box1.add(new JLabel("员工号:",JLabel.CENTER)); box1.add(员工号);Box box2=Box.createHorizontalBox(); box2.add(new JLabel("姓名:",JLabel.CENTER));box2.add(姓名);Box box3=Box.createHorizontalBox(); box3.add(new JLabel("性别:",JLabel.CENTER));box3.add(男);box3.add(女);Box box4=Box.createHorizontalBox(); box4.add(new JLabel("部门:",JLabel.CENTER));box4.add(部门);Box box6=Box.createHorizontalBox();box6.add(new JLabel(" ",JLabel.CENTER));Box box5=Box.createHorizontalBox(); box5.add(new JLabel("工资:",JLabel.CENTER));box5.add(工资);Box boxH=Box.createVerticalBox(); boxH.add(box1);boxH.add(box2);boxH.add(box3);boxH.add(box5);boxH.add(box6);boxH.add(box4);boxH.add(Box.createVerticalGlue()); JPanel pCenter=new JPanel();pCenter.add(boxH);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();}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.readObject();inOne.close();inTwo.close();}catch(Exception ee){}if(基本信息表.containsKey(number)){String warning="该员工基本信息已存在,请到修改页面修改!"; JOptionPane.showMessageDialog(this,warning,"警告",JOptionPane.WARNING_MESSAGE);}else{String m="基本信息将被录入!";int ok=JOptionPane.showConfirmDialog(this,m,"确认",JOptionPane.YES_NO_OPTION,RMATION_MESSAGE);if(ok==JOptionPane.YES_OPTION){String name=姓名.getText();String discipling=部门.getSelectedItem();String grade=工资.getText();String sex=null;if(男.isSelected()){sex=男.getText();}else{sex=女.getText();}员工=new Employee();员工.setNumber(number);员工.setName(name);员工.setDiscipling(discipling);员工.setGrade(grade);员工.setSex(sex);try{outOne=new FileOutputStream(file);outTwo=new ObjectOutputStream(outOne);基本信息表.put(number,员工);outTwo.writeObject(基本信息表);outTwo.close();outOne.close();员工号.setText(null);姓名.setText(null);工资.setText(null);}catch(Exception ee){System.out.println(ee);}}}}else{String warning="必须要输入员工号!";JOptionPane.showMessageDialog(this,warning,"警告",JOptionPane.WARNING_MESSAGE);}}if(e.getSource()==重置){员工号.setText(null);姓名.setText(null);部门.remove(部门.getSelectedIndex());工资.setText(null); }}}4、实现员工信息的修改:import java.awt.*;import java.awt.event.*;import javax.swing.*;import java.io.*;import java.util.*;public class ModifySituation extends JPanel implements ActionListener {Hashtable 基本信息表=null;JTextField 员工号,姓名,工资;Choice 部门;JRadioButton 男,女;ButtonGroup group=null;JButton 开始修改,录入修改,重置;FileInputStream inOne=null;ObjectInputStream inTwo=null;FileOutputStream outOne=null;ObjectOutputStream outTwo=null;File file=null;public ModifySituation(File file){this.file=file;员工号=new JTextField(10);姓名=new JTextField(10);部门=new Choice();部门.add("请选择");部门.add("研发部");部门.add("销售部");部门.add("人事部");部门.add("安全部");工资=new JTextField(10);group=new ButtonGroup();男=new JRadioButton("男",true);女=new JRadioButton("女",false);group.add(男);group.add(女);开始修改=new JButton("开始修改");录入修改=new JButton("录入修改");录入修改.setEnabled(false);重置=new JButton("重置");员工号.addActionListener(this);开始修改.addActionListener(this);录入修改.addActionListener(this);重置.addActionListener(this);Box box1=Box.createHorizontalBox();box1.add(new JLabel("输入要修改信息的员工号:",JLabel.CENTER)); box1.add(员工号);box1.add(开始修改);Box box2=Box.createHorizontalBox();box2.add(new JLabel("姓名:",JLabel.CENTER));box2.add(姓名);Box box3=Box.createHorizontalBox();box3.add(new JLabel("性别:",JLabel.CENTER));box3.add(男);box3.add(女);Box box4=Box.createHorizontalBox();box4.add(new JLabel("部门:",JLabel.CENTER));box4.add(部门);Box box6=Box.createHorizontalBox();box6.add(new JLabel(" ",JLabel.CENTER));Box box5=Box.createHorizontalBox();box5.add(new JLabel("工资:",JLabel.CENTER));box5.add(工资);Box boxH=Box.createVerticalBox();boxH.add(box1);boxH.add(box2);boxH.add(box3);boxH.add(box5);boxH.add(box6);boxH.add(box4);boxH.add(Box.createVerticalGlue());JPanel pCenter=new JPanel();pCenter.add(boxH);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();}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.readObject();inOne.close();inTwo.close();}catch(Exception ee){}if(基本信息表.containsKey(number)){录入修改.setEnabled(true);Employee stu=(Employee)基本信息表.get(number);姓名.setText(stu.getName());部门.getSelectedItem();工资.setText(stu.getGrade());if(stu.getSex().equals("男")){男.setSelected(true);}else{女.setSelected(true);}}else{录入修改.setEnabled(false);String warning="该员工号不存在!";JOptionPane.showMessageDialog(this,warning,"警告",JOptionPane.WARNING_MESSAGE);员工号.setText(null);姓名.setText(null);部门.remove(部门.getSelectedItem());工资.setText(null);}}else{录入修改.setEnabled(false);String warning="必须要输入员工号!";JOptionPane.showMessageDialog(this,warning,"警告",JOptionPane.WARNING_MESSAGE);员工号.setText(null);姓名.setText(null);部门.remove(部门.getSelectedItem());工资.setText(null);}}else if(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(基本信息表.containsKey(number)){String question="该员工基本信息已存在,您想修改他(她)的基本信息吗?";JOptionPane.showMessageDialog(this,question,"警告",JOptionPane.QUESTION_MESSAGE);String m="基本信息将被修改!";int ok=JOptionPane.showConfirmDialog(this,m,"确认",JOptionPane.YES_NO_OPTION,RMATION_MESSAGE);if(ok==JOptionPane.YES_OPTION){String name=姓名.getText();String discipling=部门.getSelectedItem();String grade=工资.getText();String sex=null;if(男.isSelected()){sex=男.getText();}else{sex=女.getText();}Employee 员工=new Employee();员工.setNumber(number);员工.setName(name);员工.setDiscipling(discipling);员工.setGrade(grade);员工.setSex(sex);try{outOne=new FileOutputStream(file);outTwo=new ObjectOutputStream(outOne);基本信息表.put(number,员工);outTwo.writeObject(基本信息表);outTwo.close();outOne.close();员工号.setText(null);姓名.setText(null);部门.remove(部门.getSelectedItem());工资.setText(null);}catch(Exception ee){System.out.println(ee);}录入修改.setEnabled(false);}else if(ok==JOptionPane.NO_OPTION){录入修改.setEnabled(true);}}else{String warning="该员工号没有基本信息,不能修改!";JOptionPane.showMessageDialog(this,warning,"警告",JOptionPane.WARNING_MESSAGE);录入修改.setEnabled(false);}}else{String warning="必须要输入员工号!";JOptionPane.showMessageDialog(this,warning,"警告",JOptionPane.WARNING_MESSAGE);录入修改.setEnabled(false);}}if(e.getSource()==重置){员工号.setText(null);姓名.setText(null);部门.remove(部门.getSelectedItem());工资.setText(null);}}}5、实现员工信息的查询:import java.awt.*;import java.awt.event.*;import javax.swing.*;import java.io.*;import java.util.*;public class Inquest extends JDialog implements ActionListener {Hashtable 基本信息表=null;JTextField 员工号,姓名,部门,工资;JRadioButton 男,女;JButton 查询;ButtonGroup group=null;FileInputStream inOne=null;ObjectInputStream inTwo=null;File file=null;public Inquest(JFrame f,File file){super(f,"查询对话框",false);this.file=file;员工号=new JTextField(10);查询=new JButton("查询");员工号.addActionListener(this);查询.addActionListener(this);姓名=new JTextField(10);姓名.setEditable(false);部门=new JTextField(10);部门.setEditable(false);工资=new JTextField(10);工资.setEditable(false);男=new JRadioButton("男",false);女=new JRadioButton("女",false);group=new ButtonGroup();group.add(男);group.add(女);Box box1=Box.createHorizontalBox();box1.add(new JLabel("输入要查询的员工号:",JLabel.CENTER)); box1.add(员工号);box1.add(查询);Box box2=Box.createHorizontalBox();box2.add(new JLabel("姓名:",JLabel.CENTER));box2.add(姓名);Box box3=Box.createHorizontalBox();box3.add(new JLabel("性别:",JLabel.CENTER));box3.add(男);box3.add(女);Box box4=Box.createHorizontalBox();box4.add(new JLabel("部门:",JLabel.CENTER));box4.add(部门);Box box5=Box.createHorizontalBox();box5.add(new JLabel("工资:",JLabel.CENTER));box5.add(工资);Box boxH=Box.createVerticalBox();boxH.add(box1);boxH.add(box2);boxH.add(box3);boxH.add(box5);boxH.add(box4);boxH.add(Box.createVerticalGlue());JPanel pCenter=new JPanel();pCenter.add(boxH);pCenter.setBackground(Color.green);Container con=getContentPane();con.add(pCenter,BorderLayout.CENTER);con.validate();setVisible(false);setBounds(100,200,360,270);addWindowListener(new WindowAdapter(){public void windowClosing(WindowEvent e){setVisible(false);} });}public void actionPerformed(ActionEvent e){姓名.setText(null);部门.setText(null);工资.setText(null);if(e.getSource()==查询||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(基本信息表.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);} }else{String warning="该员工号不存在!";JOptionPane.showMessageDialog(this,warning,"警告",JOptionPane.WARNING_MESSAGE);}}else{String warning="必须要输入员工号!";JOptionPane.showMessageDialog(this,warning,"警告",JOptionPane.WARNING_MESSAGE);}}}}6、实现员工信息的删除:import java.awt.*;import java.awt.event.*;import javax.swing.*;import java.io.*;import java.util.*;public class Delete extends JPanel implements ActionListener {Hashtable 基本信息表=null;JTextField 员工号,姓名,部门,工资;JRadioButton 男,女;JButton 删除;ButtonGroup group=null;FileInputStream inOne=null;ObjectInputStream inTwo=null;FileOutputStream outOne=null;ObjectOutputStream outTwo=null;File file=null;public Delete(File file){this.file=file;员工号=new JTextField(10);删除=new JButton("删除");员工号.addActionListener(this);删除.addActionListener(this);姓名=new JTextField(10);姓名.setEditable(false);部门=new JTextField(10);部门.setEditable(false);工资=new JTextField(10);工资.setEditable(false);男=new JRadioButton("男",false);女=new JRadioButton("女",false);group=new ButtonGroup();group.add(男);group.add(女);Box box1=Box.createHorizontalBox();box1.add(new JLabel("输入要删除的学号:",JLabel.CENTER));box1.add(员工号);box1.add(删除);Box box2=Box.createHorizontalBox();box2.add(new JLabel("姓名:",JLabel.CENTER));box2.add(姓名);Box box3=Box.createHorizontalBox();box3.add(new JLabel("性别:",JLabel.CENTER));box3.add(男);box3.add(女);Box box4=Box.createHorizontalBox();box4.add(new JLabel("部门:",JLabel.CENTER));box4.add(部门);Box box6=Box.createHorizontalBox();box6.add(new JLabel(" ",JLabel.CENTER));Box box5=Box.createHorizontalBox();box5.add(new JLabel("工资:",JLabel.CENTER));box5.add(工资);Box boxH=Box.createVerticalBox();boxH.add(box1);boxH.add(box2);boxH.add(box3);boxH.add(box5);boxH.add(box6);boxH.add(box4);boxH.add(Box.createVerticalGlue());JPanel pCenter=new JPanel();pCenter.add(boxH);pCenter.setBackground(Color.yellow);setLayout(new BorderLayout());add(pCenter,BorderLayout.CENTER);validate();}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.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 m="确定要删除该员工号及全部信息吗?";int ok=JOptionPane.showConfirmDialog(this,m,"确认",JOptionPane.YES_NO_OPTION,JOptionPane.QUESTION_MESSAGE);if(ok==JOptionPane.YES_OPTION){基本信息表.remove(number);try{outOne=new FileOutputStream(file);outTwo=new ObjectOutputStream(outOne);outTwo.writeObject(基本信息表);outTwo.close();outOne.close();员工号.setText(null);姓名.setText(null);部门.setText(null);工资.setText(null);}catch(Exception ee){System.out.println(ee);}}else if(ok==JOptionPane.NO_OPTION){员工号.setText(null);姓名.setText(null);部门.setText(null);工资.setText(null);}}else{String warning="该员工号不存在!";JOptionPane.showMessageDialog(this,warning,"警告",JOptionPane.WARNING_MESSAGE);}}else{String warning="必须要输入员工号!";JOptionPane.showMessageDialog(this,warning,"警告",JOptionPane.WARNING_MESSAGE);}}}}三、实验结果体会本次JAVA课程设计我所编写的程序是员工信息管理系统,程序中实现了对员工信息的添加、查询、修改、删除的功能,我是应用文件的形式完成的,其中还应用到了图形用户界面。