基于java的员工工资管理系统

   一系统截图

二系统架构

系统架构:

本系统使用Java作为主要的编程语言编程开发,后台以Servlet作为主要的技术支撑,数据库采用采用MySQL,前端采用JSP的页面技术配合JavaScript语言,同时引入百度的Ueditor编辑器丰富页面的内容。

开发环境:

        JDK7+eclipse+tomcat7+mysql5.0

三源码下载

源码下载

四伪代码展示

基于Java的员工工资管理系统的源代码示例:

java
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

class Employee {
    private int id;
    private String name;
    private double salary;

    public Employee(int id, String name, double salary) {
        this.id = id;
        this.name = name;
        this.salary = salary;
    }

    public int getId() {
        return id;
    }

    public String getName() {
        return name;
    }

    public double getSalary() {
        return salary;
    }

    public void setSalary(double salary) {
        this.salary = salary;
    }
}

class SalaryManagementSystem {
    private List<Employee> employeeList;

    public SalaryManagementSystem() {
        employeeList = new ArrayList<>();
    }

    public void addEmployee(Employee employee) {
        employeeList.add(employee);
    }

    public List<Employee> getAllEmployees() {
        return employeeList;
    }

    public void deleteEmployee(int employeeId) {
        for (Employee employee : employeeList) {
            if (employee.getId() == employeeId) {
                employeeList.remove(employee);
                break;
            }
        }
    }

    public void updateEmployeeSalary(int employeeId, double newSalary) {
        for (Employee employee : employeeList) {
            if (employee.getId() == employeeId) {
                employee.setSalary(newSalary);
                break;
            }
        }
    }

    public void displayAllEmployees() {
        System.out.println("Employee Details:");
        for (Employee employee : employeeList) {
            System.out.println("ID: " + employee.getId());
            System.out.println("Name: " + employee.getName());
            System.out.println("Salary: " + employee.getSalary());
            System.out.println("-------------------------");
        }
    }
}

public class Main {
    public static void main(String[] args) {
        SalaryManagementSystem salarySystem = new SalaryManagementSystem();
        Scanner scanner = new Scanner(System.in);
        boolean isRunning = true;

        while (isRunning) {
            System.out.println("1. Add an employee");
            System.out.println("2. Delete an employee");
            System.out.println("3. Update employee salary");
            System.out.println("4. Display all employees");
            System.out.println("5. Exit");
            System.out.print("Enter your choice: ");
            int choice = scanner.nextInt();

            switch (choice) {
                case 1:
                    System.out.print("Enter employee ID: ");
                    int id = scanner.nextInt();
                    System.out.print("Enter employee name: ");
                    scanner.nextLine(); // Consume newline character
                    String name = scanner.nextLine();
                    System.out.print("Enter employee salary: ");
                    double salary = scanner.nextDouble();
                    Employee employee = new Employee(id, name, salary);
                    salarySystem.addEmployee(employee);
                    System.out.println("Employee added successfully!");
                    break;
                case 2:
                    System.out.print("Enter employee ID to delete: ");
                    int deleteId = scanner.nextInt();
                    salarySystem.deleteEmployee(deleteId);
                    System.out.println("Employee deleted successfully!");
                    break;
                case 3:
                    System.out.print("Enter employee ID to update salary: ");
                    int updateId = scanner.nextInt();
                    System.out.print("Enter new salary: ");
                    double newSalary = scanner.nextDouble();
                    salarySystem.updateEmployeeSalary(updateId, newSalary);
                    System.out.println("Employee salary updated successfully!");
                    break;
                case 4:
                    salarySystem.displayAllEmployees();
                    break;
                case 5:
                    isRunning = false;
                    System.out.println("Exiting the program...");
                    break;
                default:
                    System.out.println("Invalid choice! Please try again.");
                    break;
            }
        }

        scanner.close();
    }
}
这段代码实现了一个简单的员工工资管理系统。用户可以使用菜单来添加新员工、删除员工、更新员工工资以及显示所有员工的详细信息。

通过创建Employee对象,员工信息包括ID、姓名和薪资。SalaryManagementSystem类负责管理员工列表,并提供相应的功能方法来操作员工信息。

在主程序的循环中,用户可以选择不同的选项来执行相应的操作。根据用户输入的选择,程序将调用适当的方法来处理。

请注意,以上只是一个简化示例,实际的员工工资管理系统可能需要更多的功能和数据验证。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
"得分: " " " " " 课程设计报告 "企业工资管理系统 " " "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)、员工信息表;及时反映员工的基本信息 (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图来说明工资信息管理系统的数据库概念模式,如图 1 n m 图2.1实体之间关系E-R图 2.2功能模块 3.系统详细设计 3.1数据库逻辑设计 将以上E-R转换成如下关系模式 员工(职工号,,密码) 工资(职工号,,基本工资,) 津贴(职工号,,奖金) 其中,标有下划线的字段表示为该数据表的主码,即主关键字。在上面的实体以及实 体之间关系的基础上,形成数据库中的表格以及各个表格之间的关系。 工资信息管理系统数据库中各个表格的设计结果如下面的几个表格所示。每个表格表 示在数据库中的一个表。 表一:员工信息表: "列名 "数据类型 "可否取空 "备注说明 " "no " Char ( 8 ) "NOT NULL "职工号(主键) " "name "Char(10) "NOT NULL "职工 " "mi "Smallint "NOT NULL "登录密码 " 表二:基本工资表: "列名 "数据类型 "可否取空 "备注说明 " "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职工信息管理系统 功能为:财务部门相关
JavaSwing工资管理系统代码采用Java语言开发,使用Swing作为图形用户界面工具包,实现了一个基本的工资管理系统功能。该系统主要包括员工信息管理、工资计算、工资发放等模块。 在员工信息管理模块中,可以对员工的基本信息进行录入、修改和查询,包括姓名、工号、部门、职位等。工资计算模块实现了根据员工的基本工资、绩效奖金、加班补贴等信息自动生成工资条,并提供了工资统计和查询功能。在工资发放模块中,可以进行工资的发放和记录,并生成相应的工资单。 在源代码中先定义了员工信息类,包括姓名、工号、部门、职位等属性,然后实现了员工信息的增删改查功能。工资计算部分主要涉及对员工工资的计算公式和规则的设计,以及与员工信息的关联和计算结果的展示。工资发放模块包括工资的发放和记录功能,通过记录实现对工资的管理和查询。 源代码中使用了JavaSwing提供的各种组件和布局管理器来构建用户界面,实现了员工信息录入表单、工资计算页面、工资发放记录等功能界面,同时还实现了一些交互和校验功能,如输入合法性检查、按钮事件监听等。 通过源代码的分析和实践可以帮助学习者了解JavaSwing的基本使用和界面设计方法,以及对工资管理系统开发思路和实现技巧有更深入的认识。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员阿达

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值