0

0

如何利用Java实现员工信息增删改查功能

P粉602998670

P粉602998670

发布时间:2025-10-13 19:25:01

|

699人浏览过

|

来源于php中文网

原创

实现员工信息的增删改查功能,需创建Employee实体类,设计数据库表,通过JDBC连接MySQL,编写EmployeeDAO类封装CRUD操作,并用测试类验证添加、查询、修改和删除功能。

如何利用java实现员工信息增删改查功能

要实现员工信息的增删改查(CRUD)功能,可以使用Java结合数据库来完成。下面是一个简单、实用的实现方案,适合初学者理解和上手。

1. 设计员工实体类(Employee)

创建一个Employee类,用于封装员工的基本信息,如编号、姓名、年龄、职位等。

public class Employee {
    private int id;
    private String name;
    private int age;
    private String position;
// 构造方法
public Employee() {}
public Employee(int id, String name, int age, String position) {
    this.id = id;
    this.name = name;
    this.age = age;
    this.position = position;
}

// Getter 和 Setter 方法
public int getId() { return id; }
public void setId(int id) { this.id = id; }

public String getName() { return name; }
public void setName(String name) { this.name = name; }

public int getAge() { return age; }
public void setAge(int age) { this.age = age; }

public String getPosition() { return position; }
public void setPosition(String position) { this.position = position; }

@Override
public String toString() {
    return "Employee{" +
            "id=" + id +
            ", name='" + name + '\'' +
            ", age=" + age +
            ", position='" + position + '\'' +
            '}';
}

}

2. 使用JDBC连接数据库

使用MySQL作为示例数据库。先创建一张员工表:

CREATE DATABASE employee_db;
USE employee_db;

CREATE TABLE employee ( id INT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(50), age INT, position VARCHAR(50) );

在项目中引入MySQL驱动(如mysql-connector-java),然后编写数据库工具类:

立即学习Java免费学习笔记(深入)”;

25175企业客户管理系统2.5.1
25175企业客户管理系统2.5.1

25175企业客户管理系统能够方便的录入新的信息例如新的项目、新增客户等同时能够清楚的管理一些款项结算。由于功能的强大,用户可以在该系统上发表文章后让员工递交工作计划或工作报告。加强企业工作效率,为企业提高实力。因为该系统可由客户、程序员、负责人等身份登入 所以适合广大企业使用。管理首页:{信息录入|信息修改|信息查询}1信息录入:你可以根据实际情况进行以下操作 1-1新的项目

下载

import java.sql.Connection;
import java.sql.DriverManager;

public class DBUtil { private static final String URL = "jdbc:mysql://localhost:3306/employee_db"; private static final String USER = "root"; private static final String PASSWORD = "your_password";

public static Connection getConnection() throws Exception {
    Class.forName("com.mysql.cj.jdbc.Driver");
    return DriverManager.getConnection(URL, USER, PASSWORD);
}

}

3. 实现增删改查操作(EmployeeDAO)

编写一个数据访问EmployeeDAO,封装对员工表的操作。

import java.sql.*;
import java.util.ArrayList;
import java.util.List;

public class EmployeeDAO {

// 添加员工
public void addEmployee(Employee emp) throws Exception {
    String sql = "INSERT INTO employee (name, age, position) VALUES (?, ?, ?)";
    try (Connection conn = DBUtil.getConnection();
         PreparedStatement ps = conn.prepareStatement(sql)) {
        ps.setString(1, emp.getName());
        ps.setInt(2, emp.getAge());
        ps.setString(3, emp.getPosition());
        ps.executeUpdate();
    }
}

// 删除员工
public void deleteEmployee(int id) throws Exception {
    String sql = "DELETE FROM employee WHERE id = ?";
    try (Connection conn = DBUtil.getConnection();
         PreparedStatement ps = conn.prepareStatement(sql)) {
        ps.setInt(1, id);
        ps.executeUpdate();
    }
}

// 修改员工
public void updateEmployee(Employee emp) throws Exception {
    String sql = "UPDATE employee SET name=?, age=?, position=? WHERE id=?";
    try (Connection conn = DBUtil.getConnection();
         PreparedStatement ps = conn.prepareStatement(sql)) {
        ps.setString(1, emp.getName());
        ps.setInt(2, emp.getAge());
        ps.setString(3, emp.getPosition());
        ps.setInt(4, emp.getId());
        ps.executeUpdate();
    }
}

// 查询所有员工
public List getAllEmployees() throws Exception {
    List employees = new ArrayList<>();
    String sql = "SELECT * FROM employee";
    try (Connection conn = DBUtil.getConnection();
         Statement stmt = conn.createStatement();
         ResultSet rs = stmt.executeQuery(sql)) {

        while (rs.next()) {
            Employee emp = new Employee(
                rs.getInt("id"),
                rs.getString("name"),
                rs.getInt("age"),
                rs.getString("position")
            );
            employees.add(emp);
        }
    }
    return employees;
}

// 根据ID查询员工
public Employee getEmployeeById(int id) throws Exception {
    String sql = "SELECT * FROM employee WHERE id = ?";
    try (Connection conn = DBUtil.getConnection();
         PreparedStatement ps = conn.prepareStatement(sql)) {
        ps.setInt(1, id);
        try (ResultSet rs = ps.executeQuery()) {
            if (rs.next()) {
                return new Employee(
                    rs.getInt("id"),
                    rs.getString("name"),
                    rs.getInt("age"),
                    rs.getString("position")
                );
            }
        }
    }
    return null;
}

}

4. 编写测试类验证功能

通过一个简单的测试类来验证CRUD功能是否正常工作。

public class EmployeeTest {
    public static void main(String[] args) {
        EmployeeDAO dao = new EmployeeDAO();
    try {
        // 添加员工
        Employee emp1 = new Employee(0, "张三", 28, "开发工程师");
        dao.addEmployee(emp1);
        System.out.println("员工添加成功");

        // 查询所有
        System.out.println("所有员工:");
        for (Employee e : dao.getAllEmployees()) {
            System.out.println(e);
        }

        // 修改员工
        emp1.setAge(29);
        dao.updateEmployee(emp1);
        System.out.println("员工更新成功");

        // 删除员工
        dao.deleteEmployee(emp1.getId());
        System.out.println("员工删除成功");

    } catch (Exception e) {
        e.printStackTrace();
    }
}

}

基本上就这些。这个结构清晰、易于扩展,适合学习和小型项目使用。你可以在此基础上加入界面(如Swing或Web页面),或者使用Spring Boot进一步简化开发。

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
mysql修改数据表名
mysql修改数据表名

MySQL修改数据表:1、首先查看数据库中所有的表,代码为:‘SHOW TABLES;’;2、修改表名,代码为:‘ALTER TABLE 旧表名 RENAME [TO] 新表名;’。php中文网还提供MySQL的相关下载、相关课程等内容,供大家免费下载使用。

668

2023.06.20

MySQL创建存储过程
MySQL创建存储过程

存储程序可以分为存储过程和函数,MySQL中创建存储过程和函数使用的语句分别为CREATE PROCEDURE和CREATE FUNCTION。使用CALL语句调用存储过程智能用输出变量返回值。函数可以从语句外调用(通过引用函数名),也能返回标量值。存储过程也可以调用其他存储过程。php中文网还提供MySQL创建存储过程的相关下载、相关课程等内容,供大家免费下载使用。

247

2023.06.21

mongodb和mysql的区别
mongodb和mysql的区别

mongodb和mysql的区别:1、数据模型;2、查询语言;3、扩展性和性能;4、可靠性。本专题为大家提供mongodb和mysql的区别的相关的文章、下载、课程内容,供大家免费下载体验。

281

2023.07.18

mysql密码忘了怎么查看
mysql密码忘了怎么查看

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS 应用软件之一。那么mysql密码忘了怎么办呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

516

2023.07.19

mysql创建数据库
mysql创建数据库

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS 应用软件之一。那么mysql怎么创建数据库呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

256

2023.07.25

mysql默认事务隔离级别
mysql默认事务隔离级别

MySQL是一种广泛使用的关系型数据库管理系统,它支持事务处理。事务是一组数据库操作,它们作为一个逻辑单元被一起执行。为了保证事务的一致性和隔离性,MySQL提供了不同的事务隔离级别。php中文网给大家带来了相关的教程以及文章欢迎大家前来学习阅读。

386

2023.08.08

sqlserver和mysql区别
sqlserver和mysql区别

SQL Server和MySQL是两种广泛使用的关系型数据库管理系统。它们具有相似的功能和用途,但在某些方面存在一些显著的区别。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

533

2023.08.11

mysql忘记密码
mysql忘记密码

MySQL是一种关系型数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。那么忘记mysql密码我们该怎么解决呢?php中文网给大家带来了相关的教程以及其他关于mysql的文章,欢迎大家前来学习阅读。

602

2023.08.14

clawdbot ai使用教程 保姆级clawdbot部署安装手册
clawdbot ai使用教程 保姆级clawdbot部署安装手册

Clawdbot是一个“有灵魂”的AI助手,可以帮用户清空收件箱、发送电子邮件、管理日历、办理航班值机等等,并且可以接入用户常用的任何聊天APP,所有的操作均可通过WhatsApp、Telegram等平台完成,用户只需通过对话,就能操控设备自动执行各类任务。

15

2026.01.29

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Kotlin 教程
Kotlin 教程

共23课时 | 3万人学习

C# 教程
C# 教程

共94课时 | 7.9万人学习

Java 教程
Java 教程

共578课时 | 52.9万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号