版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
员工薪资系统课程设计资料内容仅供参考,如有不当或者侵权,请联系本人改正或者删除。员工薪资管理系统课程设计 学院:班级:学号:姓名:余黎晨李雪敏敬翰林颜学宏指导教师:李竹林目录一:绪论1.1设计目的1.2设计内容1.3开发背景1.4开发环境1.5组内成员及分工二:需求分析2.1题目分析2.2功能分析2.3数据流图2.4数据字典2.5系统功能三:系统分析与设计3.1概念结构设计3.2逻辑结构设计3.3物理结构设计四:数据库实施及运行4.1建基本表4.3功能实现4.4完整代码五:设计心得及体会一:绪论1.1设计目的 员工薪资系统的主要目的是经过操作计算机代替手工劳动,能够在该系统内完成员工的信息录入,查询,删除等操作,方便公司的高效化,规范化管理,有利于员工更好更方便了解自己的薪资信息。系统开发的总体任务就是实现员工薪资管理的系统化、规范化和自动化。1.2设计内容题目6:员工薪资管理背景资料某单位现有1000名员工,其中有管理人员、财务人员、技术人员和销售人员。该单位下设4个科室,即经理室、财务科、技术科和销售科。工资由基本工资、福利补贴和奖励工资构成,失业保险和住房公积金在工资中扣除。每个员工的基本资料有姓名、性别、年龄、单位和职业(如经理、工程师、销售员等)。每月个人的最高工资不超过3000元。工资按月发放,实际发放的工资金额为工资减去扣除。设计要求:进行需求分析,编写数据字典。设计E-R图。实现按照科室录入个人的基本资料、工资和扣除金额的数据。计算个人的实际发放工资。按科室、职业分类统计人数和工资金额。实现分类查询。能够删除辞职人员的数据。开发工具不限。1.3开发背景当今社会,随着企业人数的不断增加,企业员工薪资的管理工作也越来越复杂,资金是企业生存的核心部分,而资金流动也是关键环节,随着计算机的普及,计算机管理系统已经原来越来越广泛的应用于各个中小型企业中,用计算机取代手工对企业管理的操作也是势在必行的,而且人为操作容易造成信息错误,纸质材料不易保存,可能会导致企业运转出现滞缓现象,影响企业发展。为了更好的、更方便地管理企业中各个成员的工资发放情况,我们必须要有一个完善的、合理的、便捷的员工薪资管理系统来管理公司员工工资的发放情况。该员工薪资管理系统主要用于中小型企业员工的工资发放管理,此系统的建立和使用有利于员工更好的了解自己的薪资信息,提高公司员工薪资发放工作的效率,大大减少纸质管理对工作带来的失误。1.4开发环境开发平台:SQLServer开发工具:EclipseJDBC开发语言:SQL语言JAVA语言1.5组内成员及分工李雪敏:系统框架撰写报告颜学宏:代码编写数据库的连接与运行余黎晨:概念结构设计代码调试敬翰林:逻辑结构设计 需求分析二:需求分析2.1题目分析该题目要求设计一个员工薪资系统,实现员工信息的有序化,规范化,并能进行员工信息录入,查询,修改,删除等操作,能实现分类查询,2.2功能分析该员工薪资系统能够实现的功能如下:员工信息的管理,包括姓名,性别,年龄,职业,员工号,部门编号基本信息的录入,查询,删除,修改等操作部门信息的管理,包括部门编号和部门名称,查询每个部门的业绩和员工薪资情况薪资信息的管理,包括员工号,部门编号,基本工资,福利补贴,奖励工资,失业保险,住房公积金,实发薪资等信息,统计出员工的基本工资,福利补贴,奖励工资,扣除失业保险,住房公积金后所得的工2.3数据流图 注册员工注册员工员工基本信息员工基本信息查询员工员工工资记录员工薪资信息形成查询员工员工工资记录员工薪资信息形成查询部门经理查询部门经理薪资信息管理部门工资记录部门工资记录统计分析统计分析财务统计人员财务统计人员2.4数据字典数据字典在数据库设计中占有很重要的地位,数据字典是各类数据描述的集合,它是进行详细的数据收集和数据分析后所获得的主要成果。根据数据流图对员工薪资管理数据库数据字典的设计如下所示:2.41数据结构名:员工含义说明:员工信息组成:姓名,性别,年龄,职业,员工号数据项名数据类型长度可否为空含义说明员工号char10no员工编号员工姓名char10no姓名员工年龄char10no年龄部门名称char10no所属部门员工职业char10no担任职务2.42数据结构名:部门含义说明:部门信息 组成:部门编号,部门名称数据项名数据类型长度可否为空含义说明部门编号char4no科室类别部门名称char10no科室名称2.43数据结构名:工资含义说明:员工薪资信息组成:员工号,部门编号,基本工资,福利补贴,奖励工资,扣罚工资,失业保险,住房公积金,实发薪资数据项名数据类型长度可否为空含义说明员工号char8no员工编号员工工资char4no所的工资奖励工资money8no基本工资员工薪资money8yes福利和补贴工资2.5系统功能该员工薪资系统的功能如下:三:系统分析与设计3.1概念结构设计 E—R图设计 员工实体——关系图性别姓名 性别姓名职业员工职业员工员工号年龄员工号年龄部门编号部门编号部门实体——关系图部门编号部门编号部门部门名称工资实体——关系图员工号实发薪资住房公积金福利补贴基本工资部门编号工资奖励工资失业保险员工号实发薪资住房公积金福利补贴基本工资部门编号工资奖励工资失业保险总的E—R图3.2概念结构设计E-R图表示的概念模型是用户数据要求的形式化,它不为任何一个DBMS所支持,而逻辑结构设计的任务就是把概念模型结构转换成某个具体的DBMS所支持的数据模型,员工薪资管理E-R图转换为关系模式为:员工(姓名,性别,年龄,职业,员工号,部门编号)部门(部门编号,部门名称)薪资(员工号,员工工资,福利补贴,奖励工资,失业保险,住房公积金,实发薪资)四:数据库实施与运行4.1建基本表 员工信息表部门信息表工资信息表4.3功能实现4.31系统界面展示:4.32员工信息查询功能按工号查询:按姓名查询:4.33员工工资查询功能:4.34修改员工工资功能:4.35添加员工功能:4.36修改员工信息功能:4.37删除员工信息功能:4.4完整代码展示4.41源程序代码//类DBConnect用于数据库的连接//导入sql包importjava.sql.*;//创立数据库连接类DBConnectpublicclassDBConnect{ //静态方法提高数据库的连接效率 publicstaticConnectiongetConn()throwsException { //加载JDBC驱动 Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); //以系统默认用户身份,连接数据库StudentManager returnDriverManager.getConnection("jdbc:odbc:Test","dmj","753"); }}4.42主框架代码://系统主框架类//导入系统的包importjava.awt.*;importjava.awt.event.*;importjavax.swing.*; //创立主框架类MainFramepublicclassMainFrameextendsJFrameimplementsActionListener{ //创立内容面板 JPanelcontentPane; //创立菜单栏组件的对象 JMenuBarjMenuBar1=newJMenuBar();//菜单条 JMenujMenu0=newJMenu("退出系统");//菜单 JMenuItemjMenuItem0=newJMenuItem("退出");//子菜单 JMenujMenu1=newJMenu("员工管理"); JMenuItemjMenuItem1=newJMenuItem("添加员工"); JMenuItemjMenuItem2=newJMenuItem("修改员工"); JMenuItemjMenuItem3=newJMenuItem("删除员工"); JMenujMenu2=newJMenu("工资管理"); JMenuItemjMenuItem4=newJMenuItem("添加工资"); JMenuItemjMenuItem5=newJMenuItem("修改工资"); JMenuItemjMenuItem8=newJMenuItem("工资查询"); JMenujMenu3=newJMenu("员工查询"); JMenuItemjMenuItem6=newJMenuItem("按工号查询"); JMenuItemjMenuItem7=newJMenuItem("按姓名查询"); JMenuItemjMenuItem9=newJMenuItem("互动"); //创立标签,用于显示信息 JLabeljLabel1=newJLabel("欢迎使用员工薪资管理系统"); //创立构造方法 publicMainFrame() { try{ //关闭框架窗口时的默认事件方法 setDefaultCloseOperation(EXIT_ON_CLOSE); //调用初始化方法 jbInit(); } catch(Exceptionexception){ exception.printStackTrace(); } } //界面初始化方法 privatevoidjbInit()throwsException { //创立内容面板 contentPane=(JPanel)getContentPane(); //设置内容面板的布局为空 contentPane.setLayout(null); //主框架的大小 setSize(newDimension(400,360)); //主框架的标题 setTitle("员工薪资管理系统"); //添加事件监听器 jMenuItem0.addActionListener(this); jMenuItem1.addActionListener(this); jMenuItem2.addActionListener(this); jMenuItem3.addActionListener(this); jMenuItem4.addActionListener(this); jMenuItem5.addActionListener(this); jMenuItem6.addActionListener(this); jMenuItem7.addActionListener(this); jMenuItem8.addActionListener(this); jMenuItem9.addActionListener(this); //添加菜单条到主框架 setJMenuBar(jMenuBar1); //添加菜单到菜单条 jMenuBar1.add(jMenu0); jMenuBar1.add(jMenu1); jMenuBar1.add(jMenu2); jMenuBar1.add(jMenu3); //添加菜单项到菜单 jMenu0.add(jMenuItem0); jMenu1.add(jMenuItem1); jMenu1.add(jMenuItem2); jMenu1.add(jMenuItem3); jMenu2.add(jMenuItem4); jMenu2.add(jMenuItem5); jMenu2.add(jMenuItem8); jMenu3.add(jMenuItem6); jMenu3.add(jMenuItem7); //添加标签到主框架内容面板 contentPane.add(jLabel1); //设置标签组件的大小和字体 jLabel1.setFont(newjava.awt.Font("黑体",Font.BOLD,20)); jLabel1.setBounds(newRectangle(65,70,275,55)); } //菜单项事件对应的处理方法 publicvoidactionPerformed(ActionEventactionEvent) { //点击”系统”菜单下的”退出”菜单项 if(actionEvent.getSource()==jMenuItem0) { System.exit(0); } //点击”员工管理”菜单下的”添加员工”菜单项 if(actionEvent.getSource()==jMenuItem1) { //创立”添加员工”面板对象 AddEmployeeAddEmp=newAddEmployee(); //移除主框架上原有的内容 this.remove(this.getContentPane()); //加载”添加职工”面板的对象到主框架 this.setContentPane(AddEmp); //令界面可见 this.setVisible(true); } //点击”员工管理”菜单下的”修改员工”菜单项 if(actionEvent.getSource()==jMenuItem2) { //创立”修改员工”面板对象 ModifyEmployeeModifyEmp=newModifyEmployee(); this.remove(this.getContentPane()); //加载”修改员工”面板的对象到主框架 this.setContentPane(ModifyEmp); this.setVisible(true); } //点击”员工管理”菜单下的”删除员工”菜单项 if(actionEvent.getSource()==jMenuItem3) { //创立”删除员工”面板对象 DeleteEmployeeDeleteEmp=newDeleteEmployee(); this.remove(this.getContentPane()); //加载”删除员工”面板的对象到主框架 this.setContentPane(DeleteEmp); this.setVisible(true); } //点击”工资管理”菜单下的”添加工资”菜单项 if(actionEvent.getSource()==jMenuItem4) { //创立工资添加的面板对象 AddSalaryAddSal=newAddSalary(); this.remove(this.getContentPane()); //加载工资添加面板的对象到主框架 this.setContentPane(AddSal); this.setVisible(true); } //点击”工资管理”菜单下的”修改工资”菜单项 if(actionEvent.getSource()==jMenuItem5) { //创立工资修改的面板对象 ModifySalaryModifySal=newModifySalary(); this.remove(this.getContentPane()); //加载工资修改面板的对象到主框架 this.setContentPane(ModifySal); this.setVisible(true); } //点击”工资管理”菜单下的”工资查询”菜单项 if(actionEvent.getSource()==jMenuItem8) { //创立工资修改的面板对象 SalaryInquireSalaryInq=newSalaryInquire(); this.remove(this.getContentPane()); //加载工资修改面板的对象到主框架 this.setContentPane(SalaryInq); this.setVisible(true); } //点击”员工查询”菜单下的”按工号查询”菜单项 if(actionEvent.getSource()==jMenuItem6) { //创立”按工号查询”面板对象 InquireOnGHOnGH=newInquireOnGH(); //移除主框架上原有的内容 this.remove(this.getContentPane()); this.setContentPane(OnGH); this.setVisible(true); } }}4.43主函数Main代码://系统的主程序类Main//导入包importjava.awt.*;importjavax.swing.*;//创立主系统类classMain{ publicstaticvoidmain(String[]args) { //创立主界面,调用MainFrame()构造函数和方法 MainFrameframe=newMainFrame(); //获取屏幕尺寸 DimensionscreenSize=Toolkit.getDefaultToolkit().getScreenSize(); //获取主界面的窗体尺寸 DimensionframeSize=frame.getSize(); //令主界面窗体居中 if(frameSize.height>screenSize.height) frameSize.height=screenSize.height; if(frameSize.width>screenSize.width) frameSize.width=screenSize.width; frame.setLocation((screenSize.width-frameSize.width)/2,(screenSize.height-frameSize.height)/2); //令主界面显示 frame.setVisible(true); }}4.44员工信息查询代码按工号查询代码//导入系统的类包importjava.awt.*;im//"按员工号查询"面板类InquireOnGHportjava.sql.*;importjavax.swing.*;importjava.awt.event.*;//创立”按员工号查询”类publicclassInquireOnGHextendsJPanelimplementsActionListener{ //声明连接数据库对象 Connectioncon; //声明SQL语句对象 Statementst; //创立组件对象:标签、文本行、单选 JLabeljLabel1=newJLabel("请输入员工号:"); JTextFieldjTextField1=newJTextField(); JButtonjButton1=newJButton("查找"); JTextAreajTextArea1=newJTextArea(); //构造方法 publicInquireOnGH() { try{ //调用初始化方法 jbInit(); } catch(Exceptionexception){ exception.printStackTrace(); } } //面板初始化方法 privatevoidjbInit()throwsException { //连接数据库 con=DBConnect.getConn(); st=con.createStatement(); //框架的布局 this.setLayout(null); //设置各组件的大小 jLabel1.setFont(newjava.awt.Font("黑体",Font.BOLD,16)); jLabel1.setBounds(newRectangle(46,4,222,32)); jTextField1.setBounds(newRectangle(47,37,247,31)); jButton1.setBounds(newRectangle(47,86,247,30)); jTextArea1.setBounds(newRectangle(24,130,305,109)); //添加按钮动作事件 jButton1.addActionListener(this); //添加组件到面板 this.add(jLabel1); this.add(jTextField1); this.add(jTextArea1); this.add(jButton1); } //点击按钮事件 publicvoidactionPerformed(ActionEvente) { //获取输入的员工号 StringEmployeeID=jTextField1.getText(); //清空文本区原有的内容 jTextArea1.setText(""); try{ //利用st对象执行SQL语句,返回结果集对象 ResultSetrs=st.executeQuery("select*fromEmployeewhere员工号='"+EmployeeID+"'"); //处理结果集 if(rs.next()) { jTextArea1.setText("员工号:"+rs.getString("员工号")+"\n"+"员工姓名:"+rs.getString("员工姓名")+"\n"+"员工性别:"+rs.getString("员工性别")+"\n"+"员工年龄:"+rs.getString("员工年龄")+"\n"+"部门名称:"+rs.getString("部门名称")+"\n"+"员工职业:"+rs.getString("员工职业")+"\n"); } else { JOptionPane.showMessageDialog(this,"没有这个员工号的员工!"); } } catch(Exceptionex){ //利用消息对话框提示查询失败 JOptionPane.showMessageDialog(this,"员工查询失败!"); } }}按姓名查询//"按员工姓名查询"面板类InquireOnName//导入系统的类包importjava.awt.*;importjava.sql.*;importjavax.swing.*;importjava.awt.event.*;//创立”按员工姓名查询”类publicclassInquireOnNameextendsJPanelimplementsActionListener{ //声明连接数据库对象 Connectioncon; //声明SQL语句对象 Statementst; //创立组件对象:标签、文本行、单选 JLabeljLabel1=newJLabel("请输入员工姓名:"); JTextFieldjTextField1=newJTextField(); JButtonjButton1=newJButton("查找"); JTextAreajTextArea1=newJTextArea(); //构造方法 publicInquireOnName() { try{ //调用初始化方法 jbInit(); } catch(Exceptionexception){ exception.printStackTrace(); } } //面板初始化方法 privatevoidjbInit()throwsException { //连接数据库 con=DBConnect.getConn(); st=con.createStatement(); //框架的布局 this.setLayout(null); //设置各组件的大小 jLabel1.setFont(newjava.awt.Font("黑体",Font.BOLD,16)); jLabel1.setBounds(newRectangle(46,4,222,32)); jTextField1.setBounds(newRectangle(47,37,247,31)); jButton1.setBounds(newRectangle(47,86,247,30)); jTextArea1.setBounds(newRectangle(24,130,305,109)); //添加按钮动作事件 jButton1.addActionListener(this); //添加组件到面板 this.add(jLabel1); this.add(jTextField1); this.add(jTextArea1); this.add(jButton1); } //点击按钮事件 publicvoidactionPerformed(ActionEvente) { //获取输入的员工的姓名 StringEmployeeName=jTextField1.getText(); //清空文本区原有的内容 jTextArea1.setText(""); try{ //利用st对象执行SQL语句,返回结果集对象 ResultSetrs=st.executeQuery("select*fromEmployeewhere员工姓名='"+EmployeeName+"'"); //处理结果集 if(rs.next()) { jTextArea1.setText("员工号:"+rs.getString("员工号")+"\n"+"员工姓名:"+rs.getString("员工姓名")+"\n"+"员工性别:"+rs.getString("员工性别")+"\n"+"员工年龄:"+rs.getString("员工年龄")+"\n"+"部门名称:"+rs.getString("部门名称")+"\n"+"员工职业:"+rs.getString("员工职业")+"\n"); } else { JOptionPane.showMessageDialog(this,"没有这个员工号的员工!"); } } catch(Exceptionex){ //利用消息对话框提示查询失败 JOptionPane.showMessageDialog(this,"员工查询失败!"); } }}4.45员工工资查询代码//"工资查询"面板类SalaryInquire//导入系统的类包importjava.awt.*;importjava.sql.*;importjavax.swing.*;importjava.awt.event.*;//创立”工资查询”类publicclassSalaryInquireextendsJPanelimplementsActionListener{ //声明连接数据库对象 Connectioncon; //声明SQL语句对象 Statementst; //创立组件对象:标签、文本行、单选 JLabeljLabel1=newJLabel("请输入要查询的员工号:"); JTextFieldjTextField1=newJTextField(); JButtonjButton1=newJButton("工资查询"); JTextAreajTextArea1=newJTextArea(); //构造方法 publicSalaryInquire() { try{ //调用初始化方法 jbInit(); } catch(Exceptionexception){ exception.printStackTrace(); } } //面板初始化方法 privatevoidjbInit()throwsException { //连接数据库 con=DBConnect.getConn(); st=con.createStatement(); //框架的布局 this.setLayout(null); //设置各组件的大小 jLabel1.setFont(newjava.awt.Font("黑体",Font.BOLD,16)); jLabel1.setBounds(newRectangle(46,4,222,32)); jTextField1.setBounds(newRectangle(47,37,247,31)); jButton1.setBounds(newRectangle(47,86,247,30)); jTextArea1.setBounds(newRectangle(24,130,305,109)); //添加按钮动作事件 jButton1.addActionListener(this); //添加组件到面板 this.add(jLabel1); this.add(jTextField1); this.add(jTextArea1); this.add(jButton1); } //点击按钮事件 publicvoidactionPerformed(ActionEvente) { //获取输入的员工号 StringEmployeeID=jTextField1.getText(); //清空文本区原有的内容 jTextArea1.setText(""); try{ //利用st对象执行SQL语句,返回结果集对象 ResultSetrs=st.executeQuery("select*fromSalarywhere员工号='"+EmployeeID+"'"); //处理结果集 if(rs.next()) { jTextArea1.setText("员工号:"+rs.getString("员工号")+"\n"+"员工工资:"+rs.getString("员工工资")+"\n"); } else { JOptionPane.showMessageDialog(this,"该员工号的员工没有工资记录!"); } } catch(Exceptionex){ //利用消息对话框提示查询失败 JOptionPane.showMessageDialog(this,"工资查询失败!"); } }}4.46修改工资代码//”修改工资”面板类ModifySalary//导入系统的类包importjava.awt.*;importjava.sql.*;importjavax.swing.*;importjava.awt.event.*;//创立”修改工资”面板类publicclassModifySalaryextendsJPanelimplementsActionListener{ //声明连接数据库对象 Connectioncon; //声明SQL语句对象 Statementst; //创立组件对象:标签、文本行、单选 JLabeljLabel1=newJLabel("请输入员工号:"); JTextFieldjTextField1=newJTextField(); JButtonjButton1=newJButton("查找该员工"); JLabeljLabel2=newJLabel("员工号:"); JTextFieldjTextField2=newJTextField(); JLabeljLabel3=newJLabel("员工工资:"); JTextFieldjTextField3=newJTextField(); JButtonjButton2=newJButton("修改工资"); //构造方法 publicModifySalary() { try{ //调用初始化方法 jbInit(); } catch(Exceptionexception){ exception.printStackTrace(); } } //面板初始化方法 privatevoidjbInit()throwsException { //连接数据库 con=DBConnect.getConn(); st=con.createStatement(); //框架的布局 this.setLayout(null); //设置各组件的大小 jLabel1.setFont(newjava.awt.Font("楷体",Font.BOLD,14)); jLabel1.setBounds(newRectangle(40,25,140,30)); jTextField1.setBounds(newRectangle(185,25,120,30)); jButton1.setBounds(newRectangle(110,65,120,30)); jLabel2.setFont(newjava.awt.Font("楷体",Font.BOLD,14)); jLabel2.setBounds(newRectangle(90,125,80,30)); jTextField2.setBounds(newRectangle(170,125,80,30)); jLabel3.setFont(newjava.awt.Font("楷体",Font.BOLD,14)); jLabel3.setBounds(newRectangle(90,160,80,30)); jTextField3.setBounds(newRectangle(170,160,80,30)); jButton2.setBounds(newRectangle(120,200,100,30)); //添加按钮动作事件 jButton1.addActionListener(this); jButton2.addActionListener(this); //添加组件到面板 this.add(jLabel1); this.add(jTextField1); this.add(jButton1); this.add(jLabel2); this.add(jTextField2); jTextField2.setEditable(false); this.add(jLabel3); this.add(jTextField3); this.add(jButton2); } //点击按钮事件 publicvoidactionPerformed(ActionEventactionevent) { //点击”查找该员工”按钮 if(actionevent.getSource()==jButton1) { //获取输入的员工号 StringEmployeeID=jTextField1.getText(); try{ //利用st对象执行SQL语句,返回结果集对象 ResultSetrs=st.executeQuery("select*fromSalarywhere员工号='"+EmployeeID+"'"); //处理结果集 if(rs.next()) { jTextField2.setText(rs.getString("员工号")); jTextField3.setText(rs.getString("员工工资")); } else { JOptionPane.showMessageDialog(this,"没有这个员工号的员工!"); } } catch(Exceptionex){ //利用消息对话框提示查询失败 JOptionPane.showMessageDialog(this,"工资修改失败!"); } } //点击”修改工资”按钮 if(actionevent.getSource()==jButton2) { //获取用户更改的工资 try{ //利用st对象执行SQL语句,进行修改操作 st.executeUpdate("updateSalaryset员工工资='"+jTextField3.getText()+"'where员工号='"+jTextField2.getText()+"'"); //利用消息对话框提示工资修改成功 JOptionPane.showMessageDialog(this,"工资修改成功!"); } catch(Exceptionex){ //利用消息对话框提示异常的信息 JOptionPane.showMessageDialog(this,"工资修改失败!"); ex.printStackTrace(); } } }}4.47员工添加代码//添加员工面板类AddEmployee//导入系统的类包importjava.awt.*;importjava.sql.*;importjavax.swing.*;importjava.awt.event.*;//创立”添加员工”面板类publicclassAddEmployeeextendsJPanelimplementsActionListener{ //声明连接数据库对象 Connectioncon; //声明SQL语句对象 Statementst; //创立组件对象:标签、文本行、单选 JLabeljLabel1=newJLabel("员工号"); JLabeljLabel2=newJLabel("员工姓名"); JLabeljLabel3=newJLabel("员工性别"); JLabeljLabel4=newJLabel("员工年龄"); JLabeljLabel5=newJLabel("部门名称"); JLabeljLabel6=newJLabel("员工职业"); JTextFieldjTextField1=newJTextField(); JTextFieldjTextField2=newJTextField(); JTextFieldjTextField3=newJTextField(); JTextFieldjTextField4=newJTextField(); JTextFieldjTextField5=newJTextField(); JRadioButtonjRadioButton1=newJRadioButton("男"); JRadioButtonjRadioButton2=newJRadioButton("女"); ButtonGroupbuttonGroup1=newButtonGroup(); JButtonjButton1=newJButton("添加员工"); //构造方法 publicAddEmployee() { try{ //调用初始化方法 jbInit(); } catch(Exceptionexception){ exception.printStackTrace(); } } //界面初始化方法 privatevoidjbInit()throwsException { //连接数据库 con=DBConnect.getConn(); st=con.createStatement(); //框架的布局 this.setLayout(null); //设置各组件的大小 jLabel1.setBounds(newRectangle(21,17,64,24)); jLabel2.setBounds(newRectangle(21,51,53,22)); jLabel3.setBounds(newRectangle(21,86,61,27)); jLabel4.setBounds(newRectangle(21,122,59,25)); jLabel5.setBounds(newRectangle(21,168,54,24)); jLabel6.setBounds(newRectangle(21,205,54,24)); jTextField1.setBounds(newRectangle(102,10,200,30)); jTextField2.setBounds(newRectangle(102,49,200,30)); jTextField3.setBounds(newRectangle(102,117,80,33)); jTextField4.setBounds(newRectangle(102,163,200,29)); jTextField5.setBounds(newRectangle(102,200,200,29)); jRadioButton1.setBounds(newRectangle(102,83,65,30)); jRadioButton2.setBounds(newRectangle(190,85,85,30)); jButton1.setBounds(newRectangle(130,240,150,32)); //设置单选按钮被选中 jRadioButton1.setSelected(true); //添加按钮动作事件 jButton1.addActionListener(this); //添加组件到面板 this.add(jLabel1); this.add(jTextField1); this.add(jLabel2); this.add(jTextField2); this.add(jLabel3); buttonGroup1.add(jRadioButton1); buttonGroup1.add(jRadioButton2); this.add(jRadioButton1); this.add(jRadioButton2); this.add(jLabel4); this.add(jTextField3); this.add(jLabel5); this.add(jTextField4); this.add(jLabel6); this.add(jTextField5); this.add(jButton1); } //点击按钮事件 publicvoidactionPerformed(ActionEvente) { //获取用户输入的信息 StringEmployeeID=jTextField1.getText(); StringEmployeeName=jTextField2.getText(); StringEmployeeSex=""; if(jRadioButton1.isSelected()) EmployeeSex+="男"; if(jRadioButton2.isSelected()) EmployeeSex+="女"; StringEmployeeAge=jTextField3.getText(); StringEmployeeAddress=jTextField4.getText(); StringEmployeePhone=jTextField5.getText(); try{ //设置日期格式 st.execute("setdateformatymd"); //利用st对象执行SQL语句,进行插入操作 st.executeUpdate("insertintoEmployeevalues('"+EmployeeID+"','"+EmployeeName+"','"+EmployeeSex+"','"+EmployeeAge+"','"+EmployeeAddress+"','"+EmployeePhone+"')"); //利用消息对话框提示员工添加成功 JOptionPane.showMessageDialog(this,"员工添加成功!"); //清空文本行的内容 jTextField1.setText(""); jTextField2.setText(""); jTextField3.setText(""); jTextField4.setText(""); jTextField5.setText(""); } catch(Exceptionex){ //利用消息对话框提示异常的信息 JOptionPane.showMessageDialog(this,"员工添加失败!"); ex.printStackTrace(); } }}4.48修改员工信息代码//”员工信息修改”面板类ModifyEmployee//导入系统的类包importjava.awt.*;importjava.sql.*;importjavax.swing.*;importjava.awt.event.*;//创立”员工信息修改资”类publicclassModifyEmployeeextendsJPanelimplementsActionListener{ //声明连接数据库对象 Connectioncon; //声明SQL语句对象 Statementst; //创立组件对象:标签、文本行、单选 JLabeljLabel1=newJLabel("请输入员工号:"); JTextFieldjTextField1=newJTextField(); JButtonjButton1=newJButton("查找该员工"); JLabeljLabel2=newJLabel("员工号:"); JTextFieldjTextField2=newJTextField(); JLabeljLabel3=newJLabel("员工姓名:"); JTextFieldjTextField3=newJTextField(); JLabeljLabel4=newJLabel("员工性别:"); JTextFieldjTextField4=newJTextField(); JLabeljLabel5=newJLabel("员工年龄:"); JTextFieldjTextField5=newJTextField(); JLabeljLabel6=newJLabel("部门名称:"); JTextFieldjTextField6=newJTextField(); JLabeljLabel7=newJLabel("员工职业:"); JTextFieldjTextField7=newJTextField(); JButtonjButton2=newJButton("修改员工信息"); //构造方法 publicModifyEmployee() { try{ //调用初始化方法 jbInit(); } catch(Exceptionexception){ exception.printStackTrace(); } } //面板初始化方法 privatevoidjbInit()throwsException { //连接数据库 con=DBConnect.getConn(); st=con.createStatement(); //框架的布局 this.setLayout(null); //设置各组件的大小 jLabel1.setFont(newjava.awt.Font("楷体",Font.BOLD,14)); jLabel1.setBounds(newRectangle(40,15,140,30)); jTextField1.setBounds(newRectangle(185,15,120,30)); jButton1.setBounds(newRectangle(110,55,150,30)); jLabel2.setFont(newjava.awt.Font("楷体",Font.BOLD,14)); jLabel2.setBounds(newRectangle(20,105,80,30)); jTextField2.setBounds(newRectangle(100,105,80,30)); jLabel3.setFont(newjava.awt.Font("楷体",Font.BOLD,14)); jLabel3.setBounds(newRectangle(190,105,80,30)); jTextField3.setBounds(newRectangle(270,105,80,30)); jLabel4.setFont(newjava.awt.Font("楷体",Font.BOLD,14)); jLabel4.setBounds(newRectangle(20,145,80,30)); jTextField4.setBounds(newRectangle(100,145,80,30)); jLabel5.setFont(newjava.awt.Font("楷体",Font.BOLD,14)); jLabel5.setBounds(newRectangle(190,145,80,30)); jTextField5.setBounds(newRectangle(270,145,80,30)); jLabel6.setFont(newjava.awt.Font("楷体",Font.BOLD,14)); jLabel6.setBounds(newRectangle(20,185,80,30)); jTextField6.setBounds(newRectangle(100,185,80,30)); jLabel7.setFont(newjava.awt.Font("楷体",Font.BOLD,14)); jLabel7.setBounds(newRectangle(190,185,80,30)); jTextField7.setBounds(newRectangle(270,185,80,30)); jButton2.setBounds(newRectangle(120,240,150,30)); //添加按钮动作事件 jButton1.addActionListener(this); jButton2.addActionListener(this); //添加组件到面板 this.add(jLabel1); this.add(jTextField1); this.add(jButton1); this.add(jLabel2); this.add(jTextField2); jTextField2.setEditable(false); this.add(jLabel3); this.add(jTextField3); this.add(jLabel4); this.add(jTextField4); this.add(jLabel5); this.add(jTextField5); this.add(jLabel6); this.add(jTextField6); this.add(jLabel7); this.add(jTextField7); this.add(jButton2); } //点击按钮事件 publicvoidactionPerformed(ActionEventactionevent) { //点击”查找该员工”按钮 if(actionevent.getSource()==jButton1) { try{ //利用st对象执行SQL语句,返回结果集对象 ResultSetrs=st.executeQuery("select*fromEmployeewhere员工号='"+jTextField1.getText()+"'"); //处理结果集 if(rs.next()) { jTextField2.setText(rs.getString("员工号")); jTextField3.setText(rs.getString("员工姓名")); jTextField4.setText(rs.getString("员工性别")); jTextField5.setText(rs.getString("员工年龄")); jTextField6.setText(rs.getString("部门名称")); jTextField7.setText(rs.getString("员工职业")); } else { JOptionPane.showMessageDialog(this,"没有这个员工号的员工!"); } } catch(Exceptionex){ //利用消息对话框提示查询失败 JOptionPane.showMessageDialog(this,"员工信息修改失败!"); } } //点击”修改工资”按钮 if(actionevent.getSource()==jButton2) { //获取用户更改的工资 try{ //利用st对象执行SQL语句,进行插入操作 st.executeUpdate("updateEmployeeset员工姓名='"+jTextField3.getText()+"'where员工号='"+jTextField2.getText()+"'"); st.executeUpdate("updateEmployeeset员工性别='"+jTextField4.getText()+"'where员工号='"+jTextField2.getText()+"'"); st.executeUpdate("updateEmployeeset员工年龄='"+jTextField5.getText()+"'where员工号='"+jTextField2.getText()+"'"); st.executeUpdate("updateEmployeeset部门名称='"+jTextField6.getText()+"'where员工号='"+jTextField2.getText()+"'"); st.executeUpdate("updateEmployeeset员工职业='"+jTextField7.getText()+"'where员工号='"+jTextField2.getText()+"'"); //利用消息对话框提示员工信息修改成功 JOptionPane.showMessageDialog(this,"员工信息修改成功!"); } catch(Exceptionex){ //利用消息对话框提示异常的信息 JOptionPane.showMessageDialog(this,"员工信息修改失败!"); ex.printStackTrace(); } } }}4.49删除员工代码//删除员工”面板类DeleteEmployee//导入系统的类包importjava.awt.*;importjava.sql.*;importjavax.swing.*;importjava.awt.event.*;//创立”删除员工”类publicclassDeleteEmployeeextendsJPanelimplementsActionListener{ //声明连接数据库对象 Connectioncon; //声明SQL语句对象 Statementst; //创立组件对象 JLabeljLabel1=newJLabel("请输入待删除的员工号"); JTextFieldjTextField1=newJTextField(); JButtonjButton1=newJButton("删除"); //构造方法 publicDeleteEmployee() { try{ //调用初始化方法 jbInit(); } catch(Exceptionexception){ exception.printStackTrace(); } } //界面初始化方法 privatevoidjbInit()throwsException { //连接数据库 con=DBConnect.getConn(); st=con.createStatement(); //框架的布局 this.setLayout(null); //设置各组件的大小 jLabel1.setFont(newjava.awt.Font("黑体",Font.BOLD,14)); jLabel1.setBounds(newRectangle(70,20,200,30)); jTextField1.setBounds(newRectangle(70,80,207,41)); jButton1.setBounds(newRectangle(70,175,205,36)); //添加按钮动作事件 jButton1.addActionListener(this); //添加组件到面板 this.add(jLabel1); this.add(jTextField1); this.add(jButton1); } //点击按钮事件 publicvoidactionPerformed(ActionEvente) { //获取用户输入的员工号 StringEmployeeID=jTextField1.getText(); //要求用户确认删除 if(JOptionPane.showConfirmDialog(this,"确认要删除吗?")==JOptionPane.YES_OPTION) { try{ //利用st对象执行SQL删除操作 st.executeUpdate("deletefromEmployeewhere员工号='"+EmployeeID+"'"); //利用消息对话框提示删除操作成功 JOptionPane.showMessageDialog(this,"员工删除操作,执行成功!"); //清空输入学号的文本行 jTextField1.setText(""); } catch(Exceptionex){ //利用消息对话框提示不能删除 JOptionPane.showMessageDialog(this,"员工删除操作,执行失败!"); } }}}4.50帮助互动代码://”帮助”面板类EmployeeHelp//导入系统的类包importjava.awt.*;importjava.sql.*;importjavax.swing.*;importjava.awt.event.*;//创立”帮助”面板类publicclassEmployeeHelpextendsJPanel{ //创立组件对象:标签 JLabeljLabel1=newJLabel("若有问题请联系:"); JLabeljLabel4=newJLabel("敬翰林"); JLabeljLabel2=newJLabel("QQ:81652794"); JLabeljLabel3=newJLabel("邮箱:"); //构造方法 publicEmployeeHelp() { tr
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024副食品保障供应合同
- 农产品采购合作协议书
- 社区物业管理服务合同
- 小额民间借款合同范本
- 建筑行业材料购销协议模板
- 2023年高考地理复习精题精练-区域发展对交通运输布局的影响(解析版)
- 2024年售房的合同范本
- 建筑工地物资租赁合同书
- 房产抵押担保协议参考
- 2024年劳务协议书样本
- 企业如何利用新媒体做好宣传工作课件
- 如何培养孩子的自信心课件
- 中医药膳学全套课件
- 颈脊髓损伤-汇总课件
- 齿轮故障诊断完美课课件
- 2023年中国盐业集团有限公司校园招聘笔试题库及答案解析
- 大班社会《特殊的车辆》课件
- 野生动物保护知识讲座课件
- 早教托育园招商加盟商业计划书
- 光色变奏-色彩基础知识与应用课件-高中美术人美版(2019)选修绘画
- 前列腺癌的放化疗护理
评论
0/150
提交评论