数据库课程设计—企业工资管理系统(java版完整代码)

合集下载

java课程设计职工工资管理系统

java课程设计职工工资管理系统

目录一、设计目的 (2)二、功能介绍 (2)三、程序流程 (2)四、设计步骤 (3)五、设计总结 (7)六、程序清单 (8)七、参考文献 (17)一、设计目的通过课程设计,使学生提高理论联系实际解决实际问题的能力;也使学生对基于面向对象的理论进行系统设计过程中的诸多具体问题有感性的认识和深入的理解;进而提高学生的学习兴趣为其将来顺利进入毕业环节作必要的准备。

二、功能介绍(1)具有新用户注册功能。

(2)具有注册用户登录功能。

(3)具有职工工资的录入功能,要求只录入工资各项,自动计算每个职工工资总额。

(4)具有数据查询功能,可以实现查询全部信息和按条件执行查询。

(5)具有按条件删除数据功能。

三、程序流程四、设计步骤、登陆界面进入系统首先进入登陆界面,输入账号和密码,点击登录就会进入职工工资管理系统,点击注册进入新用户注册界面,定义了局部变量String类型的user,password和pass分别记录界面输入的账号,密码和数据库查找的密码,定义了成员变量boolean型的bool记录输入账号和密码是否匹配。

图、职工工资管理系统登陆成功后进入的界面如图,界面有增删改查的功能。

widgetSelected()方法创建button的点击事件,创建DBHelper类的对象db连接数据库,进行查找,删除修改功能,增删改用update()方法,查询用query()方法。

图、全部查找功能点击右边的查询按钮可以查找出所有员工的工资信息如图,通过自己封装的连接数据库的类DBHelper类的对象db,传递sql语句查找数据库的所有信息,用getString()方法导出从数据库中查找到的数据,所得工资=基本工资+职位提成-50*迟到天数-100*旷工天数,通过查找的数据和自己定义的公式得到所得工资。

图、按条件查找功能在文本框中输入职工号,点击查找能找到对应职工的工资情况,如图。

用getText ()方法获得text文本框中的的输入信息,定义局部变量boolean型的数据bool,记录数据库中是否有对应的职工号,如果查到则为true,并且在表格中先用removeAll()方法清空表的信息,然后用sql语句找出text中的职工号对应的数据。

数据库课程设计—企业工资管理系统(java版+完整代码)

数据库课程设计—企业工资管理系统(java版+完整代码)

课程设计报告企业工资管理系统姓名XXX班级XXXXX学号XXXXXX课程名称数据库原理及应用指导教师201X年X月X日目录一.工资管理系统需求分析…………………………………1.1功能需求…………………………………………………1.1.1功能划分………………………………………1.1.2功能描述……………………………………………1.2性能需求…………………………………………………1.3数据流图………………………………………………二.总体设计…………………………………………………2.1数据库概念设计…………………………………………2.2功能模块…………………………………………………三.系统详细设计……………………………………………3.1数据库逻辑设计…………………………………………3.2各模块功能………………………………………………3.2.1职工信息管理系统…………………………………3.2.2职工工资管理系统…………………………………3.2.3职工津贴管理系统…………………………………四.系统实现…………………………………………………4.1界面截图…………………………………………………4.1.1主界面及工资基本信息界面……………………4.1.2登录界面…………………………………………4.1.3系统主界面………………………………………4.1.4信息录入,修改,删除,查询界面…………4.2设计代码…………………………………………………五.实验总结…………………………………………………1、需求分析1.1功能需求1.1.1功能划分(1)、员工信息表;及时反映员工的基本信息(2)、员工津贴表,反映员工津贴(3)、员工基本工资表1.1.2 功能描述(1)、基本工资的设定(2)、津贴的设定(3)、计算出月工资(4)、录入员工工资信息(5)、添加员工工资信息(6)、更改员工工资信息1.2性能需求此工资管理系统对工资数据精度的计算能在默认情况之下精确到小数点后3位小数,即是精确到分的计算。

工资管理系统毕业设计附源码

工资管理系统毕业设计附源码

工资管理系统毕业设计附源码工资管理系统是一种用于管理和计算员工工资的软件系统。

它可以帮助企业自动化工资计算、发放和记录,提高工资管理的效率和准确性。

下面是一个简单的工资管理系统的毕业设计附源码的示例。

首先,我们需要设计数据库来存储员工信息和工资数据。

可以使用关系型数据库如MySQL或SQLite。

以下是一个简化的员工表和工资表的设计示例:员工表(employees):employee_id: 员工ID(主键)。

name: 员工姓名。

department: 所属部门。

position: 职位。

工资表(salaries):salary_id: 工资记录ID(主键)。

employee_id: 员工ID(外键)。

salary_date: 工资发放日期。

basic_salary: 基本工资。

bonus: 奖金。

deductions: 扣款。

total_salary: 总工资。

接下来,我们需要开发一个用户界面,让管理员可以输入员工信息和工资数据,并进行工资计算和管理。

可以使用Java编程语言和Swing图形用户界面库来实现。

以下是一个简单的Java代码示例:java.import javax.swing.;import java.awt.;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;public class SalaryManagementSystem extends JFrame {。

// 声明界面组件。

private JTextField idField, nameField, departmentField, positionField;private JTextField dateField, basicSalaryField, bonusField, deductionsField;private JTextArea resultArea;private JButton calculateButton, saveButton;public SalaryManagementSystem() {。

JAVA工资管理系统

JAVA工资管理系统

关键词 工资管理系统,Access 数据库,Java
I
沈工程学院课程设计报告
目录
目 录
摘 要.............................................................................................................................I
课程设计任务书
课程设计题目:
工资管理系统


信息工程系 刘泉 15 王丹 02
班级 甘霖 25
计本 081 李芳 24
学生姓名 学 号
指导教师 孙宪丽、关颖 课程设计进行地点: 任 务 下 达 时 间: 2010
职称 副教授、讲师 实训 F 608 年 6 月 21 日
起止日期:2010 年 6 月 21 日起——至 2010 年 7 月 2 日止 教研室主任 费雅洁 2010 年 6 月 8 日批准
3.对设计说明书撰写内容、格式、字数的要求
⑴ 学生应撰写的内容为:中文摘要和关键词、目录、正文、参考文献等。课程设计说明 书(论文)的结构及各部分内容要求可参照《沈阳工程学院毕业设计(论文)撰写规范》执 行。应做到文理通顺,内容正确完整,书写工整,装订整齐。 ⑵ 装订格式 封面、任务书、成绩评审意见表、摘要和关键词、目录、正文、结论、致谢、参考文献。 ⑶ 课程设计说明书(论文)是体现和总结课程设计成果的载体,一般不应少于 3000 字。 打印时采用 A4 纸,页边距均为 20mm,正文采用宋体小四号字,行间距 18 磅。文中大标题 采用黑体小三号字,一级节标题采用黑体四号字,二级节标题采用黑体小四号字,三级节标 题采用黑体小四号字,表题与图题采用宋体五号字。沈 阳 工程 学 院课 程 设 计

工资管理系统数据库课程设计源码

工资管理系统数据库课程设计源码

一、课程设计主题介绍本次课程设计的主题为工资管理系统数据库,旨在通过设计一个完善的工资管理系统数据库,实现对公司员工工资信息的管理和查询功能。

工资管理系统是企业日常管理中不可或缺的一部分,良好的工资管理系统能够有效提高企业的管理效率和员工的工作积极性,具有重要的实际意义。

二、系统需求分析1. 用户需求:系统应具有权限管理、员工信息管理、薪资发放管理等功能,不同用户拥有不同的操作权限。

2. 数据需求:系统需要存储员工基本信息、薪资信息、考勤信息等数据。

3. 界面需求:系统应具有友好的操作界面,用户操作简单方便。

4. 安全需求:系统要保证数据的安全性,防止未授权人员获取敏感信息。

三、系统设计思路1. 数据库设计:设计员工表、薪资表、权限表等数据库表结构,确保数据存储的规范性和完整性。

2. 功能设计:设计权限管理模块、员工信息管理模块、薪资发放管理模块等系统功能。

3. 界面设计:设计简洁清晰的操作界面,使用户能够轻松上手。

4. 安全设计:采用加密算法保护用户信息,设置严格的权限控制,防止数据泄露和篡改。

四、系统技术选型本系统选用MySQL数据库存储数据,采用Python语言进行后台逻辑开发,使用Django框架进行Web应用开发,前端界面采用HTML、CSS和JavaScript技术实现。

五、系统功能实现1. 权限管理:管理员用户可以设置不同用户的权限,包括查看员工信息、修改薪资、导出报表等操作。

2. 员工信息管理:实现员工信息的增加、修改、删除、查询等功能,包括基本信息、通联方式、部门信息等。

3. 薪资发放管理:实现对员工薪资的发放、调整、查询等功能,包括工资条生成、导出等。

4. 数据统计报表:系统可以生成各类工资统计报表,包括月度工资报表、年度工资报表等。

六、系统调试和测试在系统开发完成后,对系统进行全面的功能测试和性能测试,确保系统稳定可靠、业务流程正常、响应速度合理等。

七、系统部署和运行系统部署到服务器上,对外提供访问服务,确保系统在日常运行中稳定运行。

数据库课程设计实验报告-工资管理系统

数据库课程设计实验报告-工资管理系统

延安大学计算机学院实验报告专用纸实验室:软件工程实验室学号:实验日期:2013年11月日(1)。

需求分析工资管理信息系统对企业加强工资管理有着极其重要的作用,就一般的大型企业来说,它的设计内容非常复杂而且繁多,比如拥有工资计算功能,工资统计功能,报表输出功能,而且设计的模块也很多,比如工资管理模块,工资统计模块,报表设计模块,打印输出模块,模糊查询模块等等.在做这个管理系统时,我们既咨询了父母又结合了教师等不同行业人士的工资情况,发现该系统受些许因素牵制比如说:公司大小,人员流动性,员工学历等通过我们的了解调查最终总结出系统功能如下:a。

整体结构合理, 模块化结构利于操作。

b。

完整的数据输入,输出,维护.c。

拥有不错的自检性,用户输错或误输均有提示。

d. 拥有较强的容错性,某个用户的错误操作不会引起系统的瘫痪。

e. 程序接口灵活,以便日后操作与维护。

f. 在不影响系统功能的前提下,美化操作界面.(2)。

概念设计○1E-R图错误!数据流图(3).逻辑设计基本信息(员工编号号,姓名,性别,毕业学校,所学专业,学历,电话,住址,从事岗位).考勤信息表(员工编号,姓名,请假天数,矿工天数,月迟到次数,月份).加班信息表(员工编号,姓名,晚班加班(天),周末加班(天),春节加班(天),节假日加班(天),月份)。

岗位信息表(员工编号,姓名,从事岗位,基本工资,部门名称)。

部门信息表(部门编号,部门名称,部门经理,部门人数)根据基本表创建了如下视图:加班津贴(员工编号,姓名,加班薪酬,月份)缺勤扣除表(员工编号,姓名,扣除工资,月份)月工资表(员工编号,姓名,基本工资,扣除工资,加班薪酬,实得工资,月份)年终奖(员工编号,姓名,奖(4).数据字典视图的创建:(5)。

系统的实现开发环境:SQL server 2005及eclipse○,1用SQL语言创建数据库Array 1.基本信息表(JBXX)Create table JBXX(Empno int not null primarykey,Emname varchar(8) not null,Sex char(2)check(Sex=’ 男’or Sex=’女’),School varchar(20)null,Profession varchar(20) null,Education varchar(6) null,Phone char(11) null,Address varchar(15)null)3.加班信息表(OVERTIMEINFORMA TION)Create table OVERTIMEINFORMATION(Empno int not null ,Night int null,Weekend int null,Festival int null,Special int null,Themonth int not null,5。

javaMySql数据库课程设计(员工工资管理系统)

javaMySql数据库课程设计(员工工资管理系统)

JavaMySQL数据库课程设计(员工工资管理系统)简介本文档是关于使用Java和MySQL数据库设计的员工工资管理系统的课程设计报告。

该系统旨在提供一个方便快捷的员工工资管理平台,帮助雇主轻松管理员工的工资信息。

功能概述•管理员功能1.登录/注销:管理员可以使用用户名和密码登录系统,并在不需要时注销账户。

2.添加员工:管理员可以添加新员工信息,包括姓名、性别、职位、工资等。

3.修改员工信息:管理员可以修改已有员工的个人信息,并更新工资等相关信息。

4.删除员工:管理员可以删除已有员工账号,同时删除与之相关的所有工资信息。

5.查询员工:管理员可以根据不同的条件查询员工信息,比如按部门、职位等。

6.导出工资表:管理员可以导出员工工资表,包括每个员工的姓名、工资、加班时长等信息。

•员工功能1.登录/注销:员工可以使用用户名和密码登录系统,并在不需要时注销账户。

2.查看个人信息:员工可以查看自己的个人信息,包括姓名、性别、职位、工资等。

3.修改个人信息:员工可以修改自己的个人信息,如联系方式、住址等。

4.查询工资信息:员工可以查询自己的工资信息,包括基本工资、奖金、扣款等。

5.查询加班记录:员工可以查询自己的加班记录,包括加班日期、加班时长等。

数据库设计本系统使用MySQL数据库管理员工工资信息,下面是数据库中的表格设计:表:员工信息表(employees)•字段:员工ID、姓名、性别、职位、工资•主键:员工ID•外键:无表:工资信息表(salaries)•字段:员工ID、基本工资、奖金、扣款、发放日期•主键:无(使用员工ID作为外键)•外键:员工ID(关联employees表)表:加班记录表(overtime_records)•字段:员工ID、加班日期、加班时长•主键:无(使用员工ID作为外键,与employees 表关联)•外键:员工ID(关联employees表)技术实现本系统采用Java作为开发语言,并使用MySQL作为后端数据库。

数据库课程设计—企业工资管理系统(java版+完整代码)经典.doc

数据库课程设计—企业工资管理系统(java版+完整代码)经典.doc

课程设计报告企业工资管理系统姓名XXX班级XXXXX学号XXXXXX课程名称数据库原理及应用指导教师201X年X月X日目录一.工资管理系统需求分析…………………………………1.1功能需求…………………………………………………1.1.1功能划分………………………………………1.1.2功能描述……………………………………………1.2性能需求…………………………………………………1.3数据流图………………………………………………二.总体设计…………………………………………………2.1数据库概念设计…………………………………………2.2功能模块…………………………………………………三.系统详细设计……………………………………………3.1数据库逻辑设计…………………………………………3.2各模块功能………………………………………………3.2.1职工信息管理系统…………………………………3.2.2职工工资管理系统…………………………………3.2.3职工津贴管理系统…………………………………四.系统实现…………………………………………………4.1界面截图…………………………………………………4.1.1主界面及工资基本信息界面……………………4.1.2登录界面…………………………………………4.1.3系统主界面………………………………………4.1.4信息录入,修改,删除,查询界面…………4.2设计代码…………………………………………………五.实验总结…………………………………………………1、需求分析1.1功能需求1.1.1功能划分(1)、员工信息表;及时反映员工的基本信息(2)、员工津贴表,反映员工津贴(3)、员工基本工资表1.1.2 功能描述(1)、基本工资的设定(2)、津贴的设定(3)、计算出月工资(4)、录入员工工资信息(5)、添加员工工资信息(6)、更改员工工资信息1.2性能需求此工资管理系统对工资数据精度的计算能在默认情况之下精确到小数点后3位小数,即是精确到分的计算。

(完整)java课程设计-----员工工资管理系统-

(完整)java课程设计-----员工工资管理系统-

(完整)java课程设计-----员工工资管理系统-编辑整理:尊敬的读者朋友们:这里是精品文档编辑中心,本文档内容是由我和我的同事精心编辑整理后发布的,发布之前我们对文中内容进行仔细校对,但是难免会有疏漏的地方,但是任然希望((完整)java课程设计-----员工工资管理系统-)的内容能够给您的工作和学习带来便利。

同时也真诚的希望收到您的建议和反馈,这将是我们进步的源泉,前进的动力。

本文可编辑可修改,如果觉得对您有帮助请收藏以便随时查阅,最后祝您生活愉快业绩进步,以下为(完整)java课程设计-----员工工资管理系统-的全部内容。

《JAVA程序语言设计》课程设计报告书设计题目:员工工资管理系统指导老师:学生班级:软工1602学生学号: 2016028学生姓名:同组人员:时间: 2018年12月一.引言1.1项目的名称员工工资管理系统1.2项目背景和目标职工工资信息管理系统主要能够对职工个人信息进行管理,对职工用户提供个人信息查询,工资查询等,对管理用户提供增加,修改,删除员工信息等操作.我们的目标就是为该系统提供后台连接数据库程序设计以及前台用户界面设计。

1.3项目的可行性研究设计此系统需要Java 面向对象编程基础,数据库应用知识以及功能分析。

根据目前所开设的课程,学生已经具备了这样的知识,有能力综合Java 编程知识和数据库应用知识做出一个这样的职工工资信息管理系统。

二.需求分析2.1 系统概述此系统提供给公司职工和管理者使用,职工登陆后可以对自己的信息进行查询,管理者登陆后可以对职工的信息进行修改,增加,删除等操作。

2.2 系统运行环境Java 程序运行在eclipse 软件上编译并且运行,数据库用MYSQL 数据库三. 系统设计3.1 开发与设计的总体思想职工方面:职工可以通过自己的职工号和密码登陆后,进入职工主界面,在这个主界面里,职工可以进行信息查询操作。

管理员方面:管理员通过自己的密码登陆后可以选择:查询功能,修改功能。

java工资管理系统代码

java工资管理系统代码

Java工资管理系统代码简介工资管理是企业人力资源管理中重要的一环,可以通过一个可靠的工资管理系统来方便地计算、调整、记录和管理员工工资信息。

本文将介绍一个基于Java语言开发的简单而实用的工资管理系统代码。

功能特点该工资管理系统代码具有以下功能特点:1.员工管理:可以添加、删除、修改和查询员工信息。

2.工资计算:可以根据员工的基本工资、绩效考核等因素来计算实际工资。

3.工资调整:可以根据业务需要进行工资调整,并记录调整日志。

4.工资报表:可以生成月度、季度或年度的工资报表,用于管理和分析工资情况。

系统框架该工资管理系统代码基于Java语言开发,采用MVC(Model-View-Controller)架构,方便代码的维护和扩展。

模型层(Model)模型层负责处理数据相关的逻辑,包括员工信息的增删改查、工资的计算和调整等。

视图层(View)视图层负责与用户的交互,展示员工信息、工资报表等内容,并接收用户的操作。

控制层(Controller)控制层负责处理用户操作的逻辑,根据用户的请求调用模型层的方法,并将结果返回给视图层。

代码示例下面是部分Java代码示例,展示了工资管理系统的主要功能:```java // 员工类 public class Employee { private int id; private String name; private double baseSalary; // 其他属性和方法省略// 获取员工实际工资public double getActualSalary() {// 根据基本工资、绩效考核等因素来计算工资// 省略具体实现}}// 工资管理类 public class SalaryManager { // 员工列表 private List employees; // 其他属性和方法省略// 添加员工public void addEmployee(Employee employee) {// 省略具体实现}// 删除员工public void deleteEmployee(int id) {// 省略具体实现}// 修改员工信息public void updateEmployee(Employee employee) {// 省略具体实现}// 查询员工信息public Employee findEmployee(int id) {// 省略具体实现}// 计算员工工资public double calculateSalary(Employee employee) {// 省略具体实现}// 调整员工工资public void adjustSalary(Employee employee, double newSalary) {// 省略具体实现}// 生成工资报表public void generateSalaryReport() {// 省略具体实现}}// 主程序 public class Main { public static void main(String[] args) { // 创建工资管理对象 SalaryManager salaryManager = new SalaryManager();// 添加员工Employee employee1 = new Employee(1, \。

javaMySql数据库课程设计(员工工资管理系统)

javaMySql数据库课程设计(员工工资管理系统)

Java MySql数据库课程设计 - 员工工资管理系统1. 引言在现代企业中,员工工资管理是一项非常重要的任务。

合理管理员工工资不仅可以激励员工的积极性,还可以提高企业的运营效率。

为了更好地管理员工工资,我们决定设计一个员工工资管理系统,使用Java编程语言与MySql数据库进行开发。

2. 功能需求该员工工资管理系统将包含以下功能模块: - 员工信息管理:包括添加员工、删除员工、查看员工信息、修改员工信息等功能。

- 工资管理:包括录入员工工资、计算员工工资、查询员工工资等功能。

- 统计分析:包括统计部门工资总和、统计员工工资平均值等功能。

3. 技术选型为了实现上述功能需求,我们选择使用Java编程语言与MySql数据库进行开发。

以下是我们选择这些技术的原因: - Java是一种面向对象的编程语言,具有良好的可读性和可维护性,适合开发大型项目。

- MySql是一种关系型数据库管理系统,具有高性能和可扩展性,适合处理大量的数据。

4. 数据库设计4.1 数据表设计我们将设计两个数据表来存储员工信息和工资信息。

4.1.1 员工信息表字段名称数据类型说明id int员工IDname varchar员工姓名age int员工年龄gender varchar员工性别department varchar员工部门4.1.2 工资信息表字段名称数据类型说明id int工资IDemployee_id int员工IDmonth varchar月份salary decimal工资金额4.2 数据库查询语句以下是一些常用的数据库查询语句,用于实现系统功能模块:4.2.1 添加员工INSERT INTO employee (id, name, age, gender, d epartment)VALUES (1001, '张三', 25, '男', '技术部');4.2.2 删除员工DELETE FROM employee WHERE id=1001;4.2.3 查看员工信息SELECT*FROM employee;4.2.4 修改员工信息UPDATE employee SET age =26WHERE id=1001;4.2.5 录入员工工资INSERT INTO salary (id, employee_id, month, sa lary)VALUES (1, 1001, '2021-01', 5000);4.2.6 计算员工工资SELECT SUM(salary) FROM salary WHERE employee_ id =1001;4.2.7 查询员工工资SELECT*FROM salary;4.2.8 统计部门工资总和SELECT department, SUM(salary) FROM employee JOIN salary ON employee.id= salary.employee_id GROUP BY department;4.2.9 统计员工工资平均值SELECT employee_id, AVG(salary) FROM salary GROUP BY employee_id;5. 系统架构为了提高系统的扩展性和灵活性,我们将采用三层架构来设计该员工工资管理系统。

小型企业工资管理系统java课程设计

小型企业工资管理系统java课程设计

小型企业工资管理系统java课程设计1.概述随着社会的发展,企业的规模越来越多样化。

小型企业也日益增加,而小型企业的存在为大多数人提供了就业机会。

然而,小型企业的管理也面临着诸多挑战,其中包括工资管理。

为了提高工资管理的效率和准确性,我们决定设计一个小型企业工资管理系统。

2.系统设计目标本课程设计的目标是设计一个基于java语言的小型企业工资管理系统,该系统应能够实现以下功能:- 实现员工信息的录入、修改和删除。

- 实现工资的计算、发放和管理。

- 实现员工考勤记录的管理。

- 实现员工与薪资的绑定。

- 实现数据的可视化统计和报表生成。

3.系统设计理念本系统的设计理念是简洁而高效。

我们希望通过精心设计的用户界面和清晰的操作流程,为小型企业提供一套方便、快捷、准确的工资管理方案。

4.系统实现方案为实现以上目标和理念,我们将采用以下技术方案:- 使用java语言进行系统开发,结合面向对象的设计思想。

- 使用MySQL数据库进行数据存储,确保数据的可靠性和安全性。

- 使用Swing框架进行用户界面设计,确保界面美观和易用。

- 使用JDBC技术进行数据库连接和操作,保证系统的数据操作能力。

- 使用Eclipse作为开发工具,提高开发效率和代码质量。

5.系统功能模块本系统将包括以下主要功能模块:- 员工信息管理模块:包括员工基本信息的录入、修改和删除。

- 工资管理模块:包括工资的计算、发放和管理。

- 考勤记录管理模块:包括员工考勤记录的管理和统计。

- 统计报表模块:包括员工工资和考勤情况的可视化统计和报表生成。

6.系统实现步骤开发该系统的步骤如下:- 分析需求:对系统功能和性能进行详细分析,明确需求。

- 数据库设计:设计合理的数据库表结构,保证数据的准确性和完整性。

- 系统架构设计:设计系统的整体架构和模块划分,明确模块之间的关系和交互。

- 编码实现:按照设计要求,使用java语言进行编码实现。

- 调试测试:对系统进行全面测试和调试,确保系统的稳定性和可靠性。

java课程设计工资管理系统

java课程设计工资管理系统

系统目标
实现工资管理的自动化
提供便捷的工资查询和统计功能
添加标题
添加标题
提高工资管理的效率和准确性
添加标题
添加标题
确保工资数据的安全性和保密性
系统功能
员工信息管理:添加、修改、删 除员工信息
考勤管理:记录、查询员工考勤 信息
添加标题
添加标题
添加标题
添加标题
工资管理:计算、发放、查询员 工工资
报表管理:生成、查询员工工资 报表和考勤报表
帮助文档:提供系统使用说明和常见 问题解答
业务逻辑实现
用户登录:用户输入用户名和密码,系统验证用户身份 工资管理:用户查看、修改、删除工资信息 考勤管理:用户查看、修改、删除考勤信息 报表生成:系统根据用户选择的条件生成报表 系统维护:管理员进行系统维护,包括用户管理、权限管理等
系统测试
界面设计
色彩搭配:协调统一,易于 阅读
界面布局:简洁明了,易于 操作
功能模块:清晰划分,易于 查找
交互体验:流畅自然,易于 使用
模块设计
用户模块: 用户注册、 登录、修改
密码等
工资模块: 工资查询、 工资发放、 工资调整等
统计模块: 工资统计、 考勤统计、 绩效统计等
管理模块: 用户管理、 权限管理、 系统设置等
接口模块: 与第三方系 统对接,如 财务系统、 人事系统等
数据库模块: 存储用户信 息、工资信 息、考勤信
息等数据
系统实现
章节副标题
数据库连接实现
使用JDBC(Java Database Connectivity)技术进 行数据库连接
导入JDBC驱动程序,如 MySQL Connector/J

工资管理系统java课程设计

工资管理系统java课程设计

工资管理系统java课程设计一、课程目标知识目标:1. 掌握Java语言面向对象编程的基本原理,包括类、对象、封装、继承和多态。

2. 学会使用Java集合框架,如List、Map等,存储和管理工资数据。

3. 理解数据库连接和SQL语句的基本使用,实现工资数据的持久化存储。

技能目标:1. 能够运用所学知识,设计并实现一个工资管理系统的基本功能,如添加、删除、修改和查询员工工资记录。

2. 通过实践,提升问题分析和解决能力,培养编程思维和逻辑思维能力。

3. 学会使用Java开发工具和调试技巧,提高程序开发效率。

情感态度价值观目标:1. 培养学生对计算机编程的兴趣和热情,激发自主学习动力。

2. 增强团队协作意识,学会在项目开发过程中与他人沟通和协作。

3. 培养良好的编程习惯,注重代码规范和注释,提高代码可读性。

本课程针对高年级学生,在掌握Java基础知识和面向对象编程原理的基础上,通过实际项目设计,让学生在实践中巩固和提高所学知识。

课程注重培养学生实际操作能力和团队协作精神,为将来从事软件开发工作打下坚实基础。

课程目标具体、可衡量,旨在帮助学生和教师明确课程预期成果,并为后续教学设计和评估提供依据。

二、教学内容1. Java面向对象编程基础:- 类与对象的概念- 封装、继承和多态- 抽象类和接口2. Java集合框架:- List、Set、Map的使用- 集合的遍历和操作3. 数据库连接与操作:- JDBC简介- 数据库连接和SQL语句执行4. 工资管理系统功能设计:- 系统需求分析- 功能模块划分- 数据模型设计5. 工资管理系统功能实现:- 添加、删除、修改和查询员工工资记录- 数据的持久化存储- 系统异常处理6. 编程规范与调试技巧:- 代码规范与注释- 调试方法与技巧- 优化程序性能教学内容参考教材相关章节,按照以下进度安排:1. 第1-2周:Java面向对象编程基础2. 第3周:Java集合框架3. 第4周:数据库连接与操作4. 第5-6周:工资管理系统功能设计5. 第7-8周:工资管理系统功能实现6. 第9周:编程规范与调试技巧教学内容科学性和系统性相结合,旨在帮助学生将所学知识应用于实际项目中,提高实践操作能力。

java课程设计-----职工工资管理系统

java课程设计-----职工工资管理系统

苏州科技学院电子信息实验中心面向对象技术课程设计报告--职工工资管理系统专业年级计算机科学与技术2014班级计算机1422学号1430107225姓名宋正伟成绩指导教师张宗杰2016 年4月一.引言1.1项目的名称职工工资信息管理系统1.2项目背景和目标职工工资信息管理系统主要能够对职工个人信息进行管理,对职工用户提供个人信息查询,工资查询等,对管理用户提供增加,修改,删除员工信息等操作。

我们的目标就是为该系统提供后台连接数据库程序设计以及前台用户界面设计。

1.3项目的可行性研究设计此系统需要Java面向对象编程基础,数据库应用知识以及功能分析。

根据目前所开设的课程,学生已经具备了这样的知识,有能力综合Java编程知识和数据库应用知识做出一个这样的职工工资信息管理系统。

二.需求分析2.1 系统概述此系统提供给公司职工和管理者使用,职工登陆后可以对自己的信息进行查询,管理者登陆后可以对职工的信息进行修改,增加,删除等操作。

2.2系统运行环境Java程序运行在eclipse软件上编译并且运行,数据库用MYSQL数据库三.系统设计3.1 开发与设计的总体思想职工方面:职工可以通过自己的职工号和密码登陆后,进入职工主界面,在这个主界面里,职工可以进行信息查询操作。

管理员方面:管理员通过自己的密码登陆后可以选择:查询功能,修改功能。

在查询功能里,可以选择查询职工个人信息或者工资情况。

在修改功能里,可以选择对职工的信息进行增加,删除和修改操作。

3.2 系统模块结构图3.3 数据库结构设计为了支持此职工档案管理系统,创建数据库employeemanage,在这个数据库里包含三个表:worker表,manager表,employee表,它们的截图如下:在worker表中,有八个属性列,分别为:id(职工号),wname(姓名),age(年龄),sex(性别),number(电话),salary(工资),dept(部门)。

数据库课程设计—企业工资管理系统java版完整代码

数据库课程设计—企业工资管理系统java版完整代码

课程设计报告企业工资管理系统姓名XXX班级XXXXX学号XXXXXX课程名称数据库原理及应用指导教师201X年X月X日目录一.工资管理系统需求分析…………………………………1.1功能需求…………………………………………………1.1.1功能划分………………………………………1.1.2功能描述……………………………………………1.2性能需求…………………………………………………1.3数据流图………………………………………………二.总体设计…………………………………………………2.1数据库概念设计…………………………………………2.2功能模块…………………………………………………三.系统详细设计……………………………………………3.1数据库逻辑设计…………………………………………3.2各模块功能………………………………………………3.2.1职工信息管理系统…………………………………3.2.2职工工资管理系统…………………………………3.2.3职工津贴管理系统…………………………………四.系统实现…………………………………………………4.1界面截图…………………………………………………4.1.1主界面及工资基本信息界面……………………4.1.2登录界面…………………………………………4.1.3系统主界面………………………………………4.1.4信息录入,修改,删除,查询界面…………4.2设计代码…………………………………………………五.实验总结…………………………………………………1、需求分析1.1功能需求1.1.1功能划分(1)、员工信息表;及时反映员工的基本信息(2)、员工津贴表,反映员工津贴(3)、员工基本工资表1.1.2 功能描述(1)、基本工资的设定(2)、津贴的设定(3)、计算出月工资(4)、录入员工工资信息(5)、添加员工工资信息(6)、更改员工工资信息1.2性能需求此工资管理系统对工资数据精度的计算能在默认情况之下精确到小数点后3位小数,即是精确到分的计算。

数据库课程设计——工资管理系统--职工考勤管理系统(java+sql-sever-2000)

数据库课程设计——工资管理系统--职工考勤管理系统(java+sql-sever-2000)

课程设计报告工资管理系统--职工考勤管理系统姓名LS班级学号QQ:1054180233 课程名称数据库原理及应用指导教师2011年12月15日目录1.工资管理系统需求分析 (1)1.1功能需求 (1)1.1.1功能划分 (1)1.1.2功能描述 (1)1.2性能需求 (1)1.3数据流图 (2)1.4 数据字典 (5)1.4.1 数据流的描述 (5)1.4.2处理逻辑的描述 (6)1.4.3数据存储的描述 (6)2.总体设计 (7)2.1数据库概念设计 (7)2.2功能模块 (8)3.系统详细设计 (9)3.1数据库逻辑设计 (9)3.2各模块功能 (10)3.2.1职工信息管理系统 (10)3.2.2职工工资管理系统 (10)3.2.3职工津贴管理系统 (10)3.2.4职工考勤管理系统 (10)4.系统实现 (11)4.1界面截图 (11)4.1.1主界面及工资基本信息界面 (11)4.1.2登录界面 (12)4.1.3系统主界面 (13)4.1.4考勤信息录入,修改,删除,查询界面 (14)4.2设计代码 (15)1、需求分析1.1功能需求1.1.1功能划分(1)、员工考勤情况表;及时反映员工的出勤,以及缺勤扣款情况(2)、员工津贴表,反映员工的加班时间,加班类别、加班天数、津贴情况等;(3)、员工基本信息表,反映员工的基本信息,反映员工的工种、等级,基本工资等信息;(4)、员工月工资表,计算月工资,生成打印清单。

(5)、银行表,用于员工工资的发放。

(6)、后勤部门表;反映员工的水电扣款信息等1.1.2 功能描述(1)、员工每个工种基本工资的设定(2)、加班津贴管理,根据加班时间和类型给予不同的加班津贴;(3)、按照不同工种的基本工资情况、员工的考勤情况产生员工的每月的月工资;(4)、员工年终奖金的生成,员工的年终奖金计算公式=(员工本年度的工资总和+津贴的总和)/12;(5)、企业工资报表。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

课程设计报告企业工资管理系统姓名XXX班级XXXXX学号XXXXXX课程名称数据库原理及应用指导教师201X年X月X日目录一.工资管理系统需求分析…………………………………1.1功能需求…………………………………………………1.1.1功能划分………………………………………1.1.2功能描述……………………………………………1.2性能需求…………………………………………………1.3数据流图………………………………………………二.总体设计…………………………………………………2.1数据库概念设计…………………………………………2.2功能模块…………………………………………………三.系统详细设计……………………………………………3.1数据库逻辑设计…………………………………………3.2各模块功能………………………………………………3.2.1职工信息管理系统…………………………………3.2.2职工工资管理系统…………………………………3.2.3职工津贴管理系统…………………………………四.系统实现…………………………………………………4.1界面截图…………………………………………………4.1.1主界面及工资基本信息界面……………………4.1.2登录界面…………………………………………4.1.3系统主界面………………………………………4.1.4信息录入,修改,删除,查询界面…………4.2设计代码…………………………………………………五.实验总结…………………………………………………1、需求分析1.1功能需求1.1.1功能划分(1)、员工信息表;及时反映员工的基本信息(2)、员工津贴表,反映员工津贴(3)、员工基本工资表1.1.2 功能描述(1)、基本工资的设定(2)、津贴的设定(3)、计算出月工资(4)、录入员工工资信息(5)、添加员工工资信息(6)、更改员工工资信息1.2性能需求此工资管理系统对工资数据精度的计算能在默认情况之下精确到小数点后3位小数,即是精确到分的计算。

但在用户使用过程中,能自行根据实际情况进行小数计算精度的设定,最大能允许保留小数点后5位的精度。

在时间特性上,当用户发出命令请求时的服务器的响应时间、对数据更新处理、工资数据的查询检索等上,同样要求系统响应时间不会超过0.5秒时间。

系统支持多种操作系统的运行环境,多不同操作系统,不同文件格式的磁盘上的数据均能实现信息的互通,及共享。

当服务器移植到其他的系统平台,如:Linux平台下时,同样能和其他的系统进行数据存取同步,不会出现系统之间互不兼容的情况,系统支持多系统之间的互连互通,系统有巨大的强健性。

本课程设计是用Java语言编写,mysql数据库。

1.3数据流图根据工资管理要求及用户需求调查分析,得到以下数据流图图1.1第一层数据流图图1.2职工信息的载入图1.4考勤的信息载入2.总体设计2.1数据库概念设计有了数据流图,用E-R图来说明工资信息管理系统的数据库概念模式,如图2.2功能模块3.系统详细设计3.1数据库逻辑设计将以上E-R转换成如下关系模式员工(职工号,姓名,密码)工资(职工号,姓名,基本工资,)津贴(职工号,姓名,奖金)其中,标有下划线的字段表示为该数据表的主码,即主关键字。

在上面的实体以及实体之间关系的基础上,形成数据库中的表格以及各个表格之间的关系。

工资信息管理系统数据库中各个表格的设计结果如下面的几个表格所示。

每个表格表示在数据库中的一个表。

表一:员工信息表:no Char ( 8 ) NOT NULL 职工号(主键)name Char(10)NOT NULL 职工姓名Jb money NOT NULL 基本工资列名数据类型可否为空备注说明no Char ( 8 ) NOT NULL 职工号(主键)name Char(10)NOT NULL 职工姓名Jt money NOT NULL 津贴3.2各模块功能3.2.1职工信息管理系统功能为:财务部门相关人员录入、修改、删除、查询员工个人信息3.2.2职工工资管理系统功能为:根据工资生成公式,按照员工的考勤情况及各种表现按月生成相应的工资;财务部门相关人员能录入、修改、删除、查询每个月每个员工的工资信息以及工资汇总;员工本人能查询自己的工资信息以及工资汇总;3.2.3职工登陆查询系统功能为:员工本人能通过用户名和密码查询自己的信息以及修改自己的密码;4.系统实现4.1界面截图4.1.1主界面4.1.2登录界面4.1.3管理员管理工资界面4.1.4信息录入,修改,删除,查询界面4.1.5职工信息查询界面4.1.6职工密码修改界面4.2设计代码DB.javapackage wage_management;import java.awt.*;import java.awt.event.*;import javax.swing.*;class DB extends JFrame implements ActionListener { JFrame frame = new JFrame("欢迎进入企业工资管理系统");JLabel label = new JLabel("", JLabel.CENTER);JButton button1 = new JButton("进入系统");JButton button2 = new JButton("退出系统");ImageIcon im = new ImageIcon("1.jpg");JLabel a1 = new JLabel(im);void Create() {JPanel pcontentPane = (JPanel) frame.getContentPane();pcontentPane.add(a1);pcontentPane.add(label);pcontentPane.setLayout(new FlowLayout());pcontentPane.add(button1);pcontentPane.add(button2);pcontentPane.setVisible(true);button1.addActionListener(this);button2.addActionListener(this);frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.pack();frame.setBounds(200, 100, 550, 180);frame.setVisible(true);}public static void main(String[] args) {DB dome = new DB();dome.Create();}public void actionPerformed(ActionEvent e) {if (button1.equals(e.getSource())) {DL dl = new DL();dl.create();frame.dispose();}if (button2.equals(e.getSource())) {// 退出System.exit(0);}}}登陆DL.javapackage wage_management;import java.awt.Color;import java.awt.FlowLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.Statement;import javax.swing.ImageIcon;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JOptionPane;import javax.swing.JPanel;import javax.swing.JPasswordField;import javax.swing.JTextField;import com.mysql.jdbc.PreparedStatement;import Query.Querypad;class DL extends JFrame implements ActionListener {ImageIcon im = new ImageIcon("2.jpg");JLabel a2 = new JLabel(im);JFrame frame = new JFrame("职工/管理员登陆");JLabel label1 = new JLabel("用户名");JLabel label2 = new JLabel("密码");JButton logonButton1 = new JButton("管理员登录");JButton logonButton2 = new JButton("职工登录");JButton cancelButton = new JButton("退出");JTextField username = new JTextField(9);JPasswordField password = new JPasswordField(9);static String t1;static String t2;void create(){JPanel p = (JPanel) frame.getContentPane();JPanel p1 = new JPanel();p.setLayout(new FlowLayout());p.add(a2);p.add(label1);p.setSize(5, 5);p.setLocation(4, 8);p.add(username);p.setSize(100, 200);p.setLocation(800, 800);p.add(label2);p.setSize(50, 20);p.setLocation(40, 80);p.add(password);p.setSize(100, 20);p.setLocation(80, 120);p.add(logonButton1);p.add(logonButton2);p.add(cancelButton);p.setBackground(Color.cyan);p.setVisible(true);logonButton1.addActionListener(this);logonButton2.addActionListener(this);cancelButton.addActionListener(this);frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.pack();frame.setBounds(200, 100, 500, 220);frame.setVisible(true);}public void actionPerformed(ActionEvent e){t1 = username.getText();t2 = password.getText();if(e.getSource()==logonButton1){if( username.getText().equals("admin") == true&& (password.getText().equals("admin") == true)){JOptionPane.showMessageDialog(this, "登录成功!");GZGLZJM gz = new GZGLZJM();gz.create();frame.dispose();}else {JOptionPane.showMessageDialog(null, "输入用户名或密码错误!");}}if (e.getSource()==logonButton2){try {Connection con;Statement ps;ResultSet rs;String sql = null;Class.forName("org.gjt.mm.mysql.Driver");Class.forName("org.gjt.mm.mysql.Driver").newInstance();con = DriverManager.getConnection("jdbc:mysql://localhost:3306/wage management","root","jxb");sql="select * from workerinfo where name='"+t1+"' and mi='"+t2+"'";ps=(PreparedStatement)con.prepareStatement(sql);rs = ps.executeQuery(sql);if(rs.next()){if(rs.getString("name").equals(t1) && rs.getString("mi").equals(t2)){YGDLJM yg = new YGDLJM();yg.create();frame.dispose();JOptionPane.showMessageDialog(this, "登录成功!");this.dispose();}}else {JOptionPane.showMessageDialog(this, "输入用户名或密码错误!");}}catch (Exception e1) {// TODO Auto-generated catch blocke1.printStackTrace();}}if (cancelButton.equals(e.getSource())) // 退出{System.exit(0);}}}GZGLZJM.java//工资管理主界面package wage_management;import java.awt.Color;import java.awt.FlowLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.ImageIcon;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JPanel;class GZGLZJM extends JFrame implements ActionListener {JFrame f = new JFrame("工资管理系统");JButton b1 = new JButton("工资管理");JButton b2 = new JButton("员工信息管理");JButton b3 = new JButton("返回");ImageIcon im = new ImageIcon("3.jpg");JLabel a1 = new JLabel(im);void create() {JPanel p = (JPanel) f.getContentPane();p.setLayout(new FlowLayout());p.add(a1);p.add(b1);p.add(b2);p.add(b3);p.setBackground(Color.cyan);p.setVisible(true);b1.addActionListener(this);b2.addActionListener(this);b3.addActionListener(this);f.setBounds(200, 100, 500, 200);f.setVisible(true);}public void actionPerformed(ActionEvent e) {if (b3.equals(e.getSource())) {// 返回DL d = new DL();d.create();f.dispose();}if (b2.equals(e.getSource())) {// 员工信息管理YGGL yg = new YGGL();yg.create();f.dispose();}if (b1.equals(e.getSource())) {// 工资管理GZGL gz = new GZGL();gz.create();f.dispose();}}}//////工资管理GZGL.javapackage wage_management;import java.awt.Color;import java.awt.FlowLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JOptionPane;import javax.swing.JPanel;import javax.swing.JScrollPane;import javax.swing.JSplitPane;import javax.swing.JTable;import javax.swing.JTextField;public class GZGL extends JFrame implements ActionListener {JFrame f = new JFrame("工资管理");JButton b1 = new JButton("录入");JButton b2 = new JButton("修改");JButton b3 = new JButton("删除");JButton b4 = new JButton("查询所有");JButton b5 = new JButton("返回");JTextField tf1 = new JTextField(4);JTextField tf2 = new JTextField(4);JTextField tf3 = new JTextField(4);JTextField tf4 = new JTextField(4);JTextField tf5 = new JTextField(6);JTextField tf6 = new JTextField(7);String[] cloum = { "职工号", "姓名", "津贴", "月基本工资","月薪"};Object[][] row = new Object[50][5];JTable table = new JTable(row, cloum);JScrollPane scrollpane = new JScrollPane(table);JSplitPane splitpane = new JSplitPane(JSplitPane.VERTICAL_SPLIT);void create() {JPanel p = (JPanel) f.getContentPane();p.setLayout(new FlowLayout());p.add(scrollpane);p.add(splitpane);JPanel p1 = new JPanel();p1.add(b1);p1.add(b2);p1.add(b3);p1.add(b4);p1.add(b5);JPanel p2 = new JPanel();p2.setBackground(Color.cyan);p2.add(scrollpane);JPanel p3 = new JPanel();p.setLayout(new FlowLayout());p.add(new JLabel(""));p.add(new JLabel("职工号"));p.add(tf1);p.add(new JLabel("姓名"));p.add(tf2);p.add(new JLabel("津贴"));p.add(tf3);p.add(new JLabel("月基本工资"));p.add(tf4);p.add(new JLabel("月薪"));p.add(tf5);p.add(new JLabel("在此处输入职工号点击查询删除"));p.add(tf6);splitpane.add(p1, splitpane.TOP);splitpane.add(p2, splitpane.BOTTOM);splitpane.setDividerLocation(50);p.setBackground(Color.CYAN);b1.addActionListener(this);b2.addActionListener(this);b3.addActionListener(this);b4.addActionListener(this);b5.addActionListener(this);f.setBounds(200, 100, 500, 600);f.setResizable(true);// 可以调整界面大小f.setVisible(true);}public void actionPerformed(ActionEvent e) {if (b1.equals(e.getSource())) { // 录入Connection con;Statement sql;try {Class.forName("org.gjt.mm.mysql.Driver");} catch (ClassNotFoundException e1) {System.out.println("" + e1);}try {con=DriverManager.getConnection("jdbc:mysql://localhost :3306/wage management","root","jxb");sql = con.createStatement();String insertStr = "INSERT INTO welfare (no,name,jt)VALUES('"+tf1.getText()+"','"+tf2.getText()+"' ,'"+tf3.getText()+"');";sql.executeUpdate(insertStr);String insertStr1 = "INSERT INTO wageinfo (no,name,jb)VALUES('"+tf1.getText()+"','"+tf2.getText()+"','"+tf4.getText()+"');";sql.executeUpdate(insertStr1);con.close();JOptionPane.showMessageDialog(this, "入录成功!");} catch (SQLException e1) {JOptionPane.showMessageDialog(this, "入录失败!");}}if (b2.equals(e.getSource())) {// 修改Connection con;Statement sql;try {Class.forName("org.gjt.mm.mysql.Driver");} catch (ClassNotFoundException e1) {System.out.println("" + e1);}try {con = DriverManager.getConnection("jdbc:mysql://localhost:3306/w age management","root","jxb");sql = con.createStatement();String updateStr = "UPDATE welfare SET jt='"+tf3.getText()+"',name='"+tf2.getText()+"'whereno='"+tf1.getText()+"';";sql.executeUpdate(updateStr);String updateStr1 = "UPDATE wageinfo SET jb='"+tf4.getText()+"',name='"+tf2.getText()+"'whereno='"+tf1.getText()+"';";sql.executeUpdate(updateStr1);JOptionPane.showMessageDialog(this, "修改成功!");con.close();} catch (SQLException e1) {JOptionPane.showMessageDialog(this, "信息不存在!");}}if (b3.equals(e.getSource())) {// 删除Connection con;Statement sql;ResultSet rs;try {Class.forName("org.gjt.mm.mysql.Driver");} catch (ClassNotFoundException e1) {System.out.println("" + e1);}try {con = DriverManager.getConnection("jdbc:mysql://localhost:3306/w age management","root","jxb");sql = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);sql.executeUpdate("DELETE FROM wageinfo where no='"+tf6.getText()+"';");sql.executeUpdate("DELETE FROM welfare where no='"+tf6.getText()+"';");JOptionPane.showMessageDialog(this, "删除成功!");con.close();} catch (SQLException e1) {JOptionPane.showMessageDialog(this, "删除失败!");}}if (b4.equals(e.getSource())) {// 查询全部Connection con;Statement sql;ResultSet rs;//Vector vector = new Vector();try {Class.forName("org.gjt.mm.mysql.Driver");} catch (ClassNotFoundException e1) {JOptionPane.showMessageDialog(this, "连接数据库失败!");}try {con = DriverManager.getConnection("jdbc:mysql://localhost:3306/w age management","root","jxb");sql = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);if (b4.equals(e.getSource())) {for (int i = 0; i < 50; i++)for (int j = 0; j < 4; j++)table.setValueAt("", i, j);rs = sql.executeQuery("select dist inct * from wageinfo ,welfare where =");int k = -1;while (rs.next()) {++k;String no = rs.getString(1);String name = rs.getString(2);String jb = rs.getString(3);String jt = rs.getString(6);int sum= rs.getInt(3)+rs.getInt(6);table.setValueAt(no, k, 0);table.setValueAt(name, k, 1);table.setValueAt(jb, k, 3);table.setValueAt(jt, k, 2);table.setValueAt(sum,k,4);}}} catch (SQLException e1) {JOptionPane.showMessageDialog(this, "查询失败!");}}if (b5.equals(e.getSource())) {// 返回GZGLZJM gl=new GZGLZJM();gl.create();f.dispose();}}}////////修改管理主界面YGGLZJM.javapackage wage_management;import java.awt.Color;import java.awt.FlowLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JOptionPane;import javax.swing.JPanel;import javax.swing.JScrollPane;import javax.swing.JSplitPane;import javax.swing.JTable;public class YGDLJM extends DL implements ActionListener { JFrame f = new JFrame("工资管理");JButton b1 = new JButton("查询个人工资");JButton b2 = new JButton("修改密码");JButton b3 = new JButton("返回");String[] cloum = { "职工号", "姓名", "津贴", "月基本工资","月薪"};Object[][] row = new Object[50][5];JTable table = new JTable(row, cloum);JScrollPane scrollpane = new JScrollPane(table);JSplitPane splitpane = new JSplitPane(JSplitPane.VERTICAL_SPLIT);void create() {JPanel p = (JPanel) f.getContentPane();p.setLayout(new FlowLayout());p.add(scrollpane);p.add(splitpane);JPanel p1 = new JPanel();p1.add(b1);p1.add(b2);p1.add(b3);JPanel p2 = new JPanel();p2.setBackground(Color.cyan);p2.add(scrollpane);JPanel p3 = new JPanel();p.setLayout(new FlowLayout());splitpane.add(p1, splitpane.TOP);splitpane.add(p2, splitpane.BOTTOM);splitpane.setDividerLocation(50);p.setBackground(Color.CYAN);b1.addActionListener(this);b2.addActionListener(this);b3.addActionListener(this);f.setBounds(200, 100, 500, 550);f.setResizable(true);// 可以调整界面大小f.setVisible(true);}public void actionPerformed(ActionEvent e) {if (b1.equals(e.getSource())) {// 查询个人工资Connection con;Statement sql;ResultSet rs;try {Class.forName("org.gjt.mm.mysql.Driver");} catch (ClassNotFoundException e1) {System.out.println("" + e1);}try {con = DriverManager.getConnection("jdbc:mysql://localhost:3306/w age management","root","jxb");sql = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);if (b1.equals(e.getSource())) {for (int i = 0; i < 50; i++)for (int j = 0; j < 4; j++)table.setValueAt("", i, j);//System.out.println(t1);rs = sql.executeQuery("select distinct * fromwageinfo ,welfare,workerinfo where wageinfo.no=welfare.no and wageinfo.no=workerinfo.no and ='"+t1+"' and workerinfo.mi='"+t2+"'");int k = -1;while (rs.next()) {++k;String no = rs.getString(1);String name = rs.getString(2);String jb = rs.getString(3);String jt = rs.getString(6);int sum= rs.getInt(3)+rs.getInt(6);table.setValueAt(no, k, 0);table.setValueAt(name, k, 1);table.setValueAt(jb, k, 3);table.setValueAt(jt, k, 2);table.setValueAt(sum,k,4);}}} catch (SQLException e1) {JOptionPane.showMessageDialog(this, "查询失败!");}}if (b2.equals(e.getSource())){// 修改密码XGMM xgmm=new XGMM();xgmm.create();}if (b3.equals(e.getSource())) {// 返回DL dl=new DL();dl.create();f.dispose();}}}///修改管理YGGL.javapackage wage_management;import java.awt.Color;import java.awt.FlowLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JOptionPane;import javax.swing.JPanel;import javax.swing.JScrollPane;import javax.swing.JSplitPane;import javax.swing.JTable;import javax.swing.JTextField;public class YGGL extends JFrame implements ActionListener {JFrame f = new JFrame("员工信息管理");JButton b1 = new JButton("添加新员工信息");JButton b2 = new JButton("修改员工信息");JButton b3 = new JButton("删除员工信息");JButton b4 = new JButton("查询所有员工信息");JButton b5 = new JButton("返回");JTextField tf1 = new JTextField(4);JTextField tf2 = new JTextField(4);JTextField tf3 = new JTextField(4);JTextField tf4 = new JTextField(4);JTextField tf5 = new JTextField(6);JTextField tf6 = new JTextField(7);String[] cloum = { "职工号", "姓名", "津贴", "月基本工资","月薪","登陆密码"};Object[][] row = new Object[50][6];JTable table = new JTable(row, cloum);JScrollPane scrollpane = new JScrollPane(table);JSplitPane splitpane = new JSplitPane(JSplitPane.VERTICAL_SPLIT);void create() {JPanel p = (JPanel) f.getContentPane();p.setLayout(new FlowLayout());p.add(scrollpane);p.add(splitpane);JPanel p1 = new JPanel();p1.add(b1);p1.add(b2);p1.add(b3);p1.add(b4);p1.add(b5);JPanel p2 = new JPanel();p2.setBackground(Color.cyan);p2.add(scrollpane);p.setLayout(new FlowLayout());p.add(new JLabel(""));p.add(new JLabel("职工号"));p.add(tf1);p.add(new JLabel("姓名"));p.add(tf2);p.add(new JLabel("津贴"));p.add(tf3);p.add(new JLabel("月基本工资"));p.add(tf4);p.add(new JLabel("登陆密码"));p.add(tf5);p.add(new JLabel(" 在此处输入职工号点击查询删除"));p.add(tf6);splitpane.add(p1, splitpane.TOP);splitpane.add(p2, splitpane.BOTTOM);splitpane.setDividerLocation(50);p.setBackground(Color.CYAN);b1.addActionListener(this);b2.addActionListener(this);b3.addActionListener(this);b4.addActionListener(this);b5.addActionListener(this);f.setBounds(200, 100, 600, 600);f.setResizable(true);// 可以调整界面大小f.setVisible(true);}public void actionPerformed(ActionEvent e) {if (b1.equals(e.getSource())) { // 添加新员工信息Connection con;Statement sql;try {Class.forName("org.gjt.mm.mysql.Driver");} catch (ClassNotFoundException e1) {JOptionPane.showMessageDialog(this, "连接数据库失败!");}try {con = DriverManager.getConnection("jdbc:mysql://localhost:3306/w age management","root","jxb");sql = con.createStatement();String insertStr = "INSERT INTO welfare (no,name,jt)VALUES('"+tf1.getText()+"','"+tf2.getText()+"' ,'"+tf3.getText()+"');";sql.executeUpdate(insertStr);String insertStr1 = "INSERT INTO wageinfo (no,name,jb)VALUES('"+tf1.getText()+"','"+tf2.getText()+"' ,'"+tf4.getText()+"');";sql.executeUpdate(insertStr1);String insertStr2 = "INSERT INTO workerinfo (no,name,mi)VALUES('"+tf1.getText()+"','"+tf2.getText()+"' ,'"+tf5.getText()+"');";sql.executeUpdate(insertStr2);JOptionPane.showMessageDialog(this, "添加成功!");con.close();} catch (SQLException e1) {JOptionPane.showMessageDialog(this, "添加失败!");}}if (b2.equals(e.getSource())) {// 修改员工信息Connection con;Statement sql;try {Class.forName("org.gjt.mm.mysql.Driver");} catch (ClassNotFoundException e1) {JOptionPane.showMessageDialog(this, "连接数据库失败!");}try {con = DriverManager.getConnection("jdbc:mysql://localhost:3306/wage management","root","jxb");sql = con.createStatement();con = DriverManager.getConnection("jdbc:mysql://localhost:3306/w age management","root","jxb");sql = con.createStatement();String updateStr = "UPDATE welfare SET jt='"+tf3.getText()+"',name='"+tf2.getText()+"'whereno='"+tf1.getText()+"';";sql.executeUpdate(updateStr);String updateStr1 = "UPDATE wageinfo SET jb='"+tf4.getText()+"',name='"+tf2.getText()+"'whereno='"+tf1.getText()+"';";sql.executeUpdate(updateStr1);sql.executeUpdate(updateStr1);String updateStr2 = "UPDATE workerinfo SET name='"+tf2.getText()+"',mi='"+tf5.getText()+"'whereno='"+tf1.getText()+"';";sql.executeUpdate(updateStr2);JOptionPane.showMessageDialog(this, "修改成功!");con.close();} catch (SQLException e1) {JOptionPane.showMessageDialog(this, "修改失败!");}}if (b3.equals(e.getSource())) {// 删除员工信息Connection con;Statement sql;try {Class.forName("org.gjt.mm.mysql.Driver");} catch (ClassNotFoundException e1) {JOptionPane.showMessageDialog(this, "连接数据库失败!");}try {con = DriverManager.getConnection("jdbc:mysql://localhost:3306/w age management","root","jxb");sql = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);sql.executeUpdate("DELETE FROM wageinfo where no='"+tf6.getText()+"';");sql.executeUpdate("DELETE FROM welfare where no='"+tf6.getText()+"';");sql.executeUpdate("DELETE FROM workerinfo where no='"+tf6.getText()+"';");JOptionPane.showMessageDialog(this, "删除成功!");con.close();} catch (SQLException e1) {JOptionPane.showMessageDialog(this, "删除失败!");}}if (b4.equals(e.getSource())) {// 查询全部员工信息Connection con;Statement sql;ResultSet rs;try {Class.forName("org.gjt.mm.mysql.Driver");} catch (ClassNotFoundException e1) {JOptionPane.showMessageDialog(this, "连接数据库失败!");}try {con = DriverManager.getConnection("jdbc:mysql://localhost:3306/w age management","root","jxb");sql = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);if (b4.equals(e.getSource())) {for (int i = 0; i < 50; i++)for (int j = 0; j < 4; j++)table.setValueAt("", i, j);rs = sql.executeQuery("select distinct * from wageinfo ,welfare,workerinfo where wageinfo.no=welfare.no and wageinfo.no=workerinfo.no ;");int k = -1;while (rs.next()) {++k;String no = rs.getString(1);String name = rs.getString(2);String jb = rs.getString(3);String jt = rs.getString(6);int sum= rs.getInt(3)+rs.getInt(6);String mi = rs.getString(9);table.setValueAt(no, k, 0);table.setValueAt(name, k, 1);table.setValueAt(jb, k, 3);table.setValueAt(jt, k, 2);table.setValueAt(sum,k,4);table.setValueAt(mi,k,5);}}} catch (SQLException e1) {JOptionPane.showMessageDialog(this, "查询失败!");}}if (b5.equals(e.getSource())) {// 返回GZGLZJM gl=new GZGLZJM();gl.create();f.dispose();}}}////修改密码XGMM.javapackage wage_management;import java.awt.Color;import java.awt.FlowLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;import java.sql.Statement;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JOptionPane;import javax.swing.JPanel;import javax.swing.JPasswordField;class XGMM extends DL implements ActionListener{JFrame frame = new JFrame("密码修改");JLabel label1 = new JLabel("原密码");JLabel label2 = new JLabel("新密码");JButton Button1 = new JButton("确定");JButton cancelButton = new JButton("返回");JPasswordField password = new JPasswordField(9);JPasswordField newpassword = new JPasswordField(9);void create(){JPanel p = (JPanel) frame.getContentPane();p.setLayout(new FlowLayout());p.add(label1);p.setSize(5, 5);p.setLocation(4, 8);p.add(password);p.setSize(100, 200);p.setLocation(600, 600);p.add(label2);p.setSize(50, 20);p.setLocation(40, 80);p.add(newpassword);p.setSize(100, 20);p.setLocation(80, 120);p.add(Button1);p.add(cancelButton);p.setBackground(Color.cyan);p.setVisible(true);Button1.addActionListener(this);cancelButton.addActionListener(this);frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.pack();frame.setBounds(200, 100, 500, 220);frame.setVisible(true);。

相关文档
最新文档