2022年员工信息管理系统java.doc

上传人:de****x 文档编号:57072979 上传时间:2022-11-03 格式:DOC 页数:7 大小:43.51KB
返回 下载 相关 举报
2022年员工信息管理系统java.doc_第1页
第1页 / 共7页
2022年员工信息管理系统java.doc_第2页
第2页 / 共7页
点击查看更多>>
资源描述

《2022年员工信息管理系统java.doc》由会员分享,可在线阅读,更多相关《2022年员工信息管理系统java.doc(7页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、员工信息管理系统java云南大学2020年春季学期信息学院 电子信息工程2020级 面向对象信息系统开发期末检测(堂下测试)试卷A 满分100分 考试时间:150分钟 任课教师:高莲 学院:信息学院 专业:电子信息工程 学号:20201060261 姓名:李康,周五班,33号 题号 1 2 3 4 总分 得分 2020年春季学期面向对象信息系统开发期末检测题 一、编写一个Java应用程序,对员工信息进行管理,功能实现详述如下: 1. 请先通过Java代码创建文件Employ以表格形式存储雇员的相关信息。雇员类的相关属性说明如下: 列名 数据类型 Employ_Id int (该列为员工编号,不

2、能重复) Employ_Name varchar Employ_Address varchar Employ_Salary float Employ_Phone varchar Employ_Department varchar (市场部、财务部、人事部、研发部、生产车间) 2. 通过Java代码向Employ文件中写入初始数据: 1 王五 山东 4500 13798987654 管理部 2 安心 贵州 1200 13799999654 生产车间 3 杨燕 四川 6300 13124569874 研发部 3、创建菜单选项 1、添加记录 2、修改记录 3、删除记录 4、搜索记录 5、退出 4、选

3、定相关菜单后,提示用户进行相关操作 1)、添加记录 提示用户输入相关数据,并检测输入数据的有效性及是否与文件中数据重复,并将操作数据结果显示给用户进行查看; 2)、修改记录 提示用户输入要修改记录员工的Employ_Id,查找该用户是否存在,不存在提醒用户该雇员信息不存在;存在的话,提示用户输入新的Employ_Salary(其它数据列暂时不允许修改); 3)、删除记录 提示用户输入要删除记录员工的Employ_Id,查找该用户是否存在,不存在提醒用户该雇员信息不存在;存在的话,将该行数据删除; 4)、搜索记录 提示用户输入要删除记录员工的Employ_Name,若雇员存在,将搜索信息显示出来

4、;若该雇员不存在,在提示无此雇员存在; 5)、退出 运行System.exit(0);退出程序。 数据的有效性说明如下: A、 Employ_Name只能是字符,最多不超过10个; B、 Employ_Salary为员工工资,应该大于当地最低工资(800); C、 Employ_Phone为员工电话号码,应该都为数字,总长度为11; D、 Employ_Department取值为市场部、财务部、人事部、研发部、生产车间中一个。 一、实现思路: 二、源代码: public class abnormal public static boolean panduanId(String Id)/判断Id

5、是否有效的方法 boolean flag=true; fileOperation temp=new fileOperation(“d:2.txt“); StringBuffer buffer1=temp.readFile(); int result1=buffer1.indexOf(Id+“ “,0);/判断员工是否存在但不能确定是员工号还是手机号或薪水if(result11)/判断获得的位置,如果不是1,则加强判断条件 result1=buffer1.indexOf(“:“+Id+“ “,0); if(result1=-1)/不存在重复 flag=false; return flag; pu

6、blic static boolean panduanname(String name)/判断姓名是否有效的方法 String name1=name; boolean flag=false; Pattern p=Ppile(“.*d+.*“); Matcher m=p.matcher(name1); if(m.matches() flag=true; return flag; public static boolean panduandepartment(String department)/判断部门是否有效的方法 boolean flag=false; if(department.equal

7、s(“市场部“)|“人事部“.equals(department)|“研发部“.equals(department)|“生产车间“.equals(department)|“财务部“.equals(department) flag=true; return flag; public class employDo extends javax.swing.JFrame String newId; public employDo() initComponents(); private void addcancelActionPerformed(java.awt.event.ActionEvent ev

8、t) tianjiatankuang.setVisible(false); Id.setText(“);/输入框摸空 name.setText(“); place.setText(“); money.setText(“); phonenum.setText(“); department.setText(“); private void addsureActionPerformed(java.awt.event.ActionEvent evt) while(true)/异常处理区域 tryif(abnormal.panduanId(Id.getText() throw new Exception

9、(); break; catch(Exception ex) Id.setText(JOptionPane.showInputDialog(null, “错误!该员工已存在:n“,null); while(true)/异常处理区域 tryif(abnormal.panduanname(name.getText() throw new Exception(); break; catch(Exception ex) name.setText(JOptionPane.showInputDialog(null, “错误!姓名中不可含有数字:n“,null); while(true) tryif(Dou

10、ble.parseDouble(money.getText()=1)/不是第一个位置 result1=buffer1.indexOf(“:“+changeId.getText()+“ “,0);/加强判断条件 if(result1!=-1) changemoneytankuang.setVisible(true); else JOptionPane.showMessageDialog(null, “没有找到此员工“, “抱歉“, JOptionPane.WARNING_MESSAGE); changeId.setText(“); private void changemoneysureActi

11、onPerformed(java.awt.event.ActionEvent evt) while(true) tryif(Double.parseDouble(changemoney.getText()=1)/不是第一个位置 result1=buffer1.indexOf(“:“+Id+“ “,0);/加强判断条件 String letter2,letter3; int duan=buffer1.indexOf(“ “,result1);/将位置后移避免永远都搜到自身 int newduan=buffer1.indexOf(“:“,duan);/获得“:”的位置 if(0!=result1)

12、/不是第一个位置的数 letter2=buffer1.substring(0,result1); letter3=buffer1.substring(newduan,buffer1.length()-1); else letter2=buffer1.substring(0,result1); letter3=buffer1.substring(newduan+1,buffer1.length()-1); fileOperation temp5=new fileOperation(“d:2.txt“);/实例化一个对象 fileOperation.deleteFile(“d:2.txt“);/删

13、除原数据 temp5.writeFile(letter2+letter3); public static void changemoney(String Id,String money) fileOperation temp=new fileOperation(“d:2.txt“);/在文件里修改,思路:薪水前+新的薪水+薪水后 StringBuffer buffer1=temp.readFile();/将文件读出来 int result1=buffer1.indexOf(Id,0);/判断文件字符串中是否有显示框中的内容并获得位置下标 String letter4,letter5; int

14、firstSpace,secondSpace,thirdSpace,forthSpace; firstSpace=buffer1.indexOf(“ “,result1);/获得空格的位置 secondSpace=buffer1.indexOf(“ “,firstSpace+1); thirdSpace=buffer1.indexOf(“ “,secondSpace+1); forthSpace=buffer1.indexOf(“ “,thirdSpace+1); letter4=buffer1.substring(0,thirdSpace); letter5=buffer1.substrin

15、g(forthSpace+1,buffer1.length()-1); fileOperation.deleteFile(“d:2.txt“);/删除原数据 fileOperation temp5=new fileOperation(“d:2.txt“);/实例化一个对象 temp5.writeFile(letter4+“ “+money+“ “+letter5); public class getIt public static void deposit() String firstFormation=“01 王五 山东 4500 13798987654 管理部“; String secon

16、dFormation=“02 安心 贵州 1200 13799999654 生产车间“; String thirdFormation=“03 杨燕 四川 6300 15709200187 研发部“; fileOperation temp=new fileOperation(“d:2.txt“);/实例化一个对象 temp.writeFile(firstFormation+“n“+secondFormation+“n“+thirdFormation); public class look public static void xianshi(TableModel infor1,int infor

17、2) fileOperation temp=new fileOperation(“d:2.txt“); StringBuffer buffer=temp.readFile();/将文件读出来 int count=0,start=0,end1,k=0;/count计算行数 while(true) end1=buffer.indexOf(“:“,start);/获得第一个冒号的位置 count+; if(end1=buffer.length()-1)/到达末尾 break; start=end1+1; String str=new Stringcount;/创建用于存放每一段字符串的数组 start=0; DefaultTableModel tableModel1=(DefaultTableModel)infor1; while(true) end1=buffer.indexOf(“:“,start); strk=buffer.substring(start,end1);/将每一行字符串给数组 if(end1=buffer.length()-1) break; start=end1+1; k+; int count1=infor2;/获得表格行数 for(k=0; k此资料由网络收集而来,如有侵权请告知上传者立即删除。资料共分享,我们负责传递知识。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 工作报告

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁