12.11

三、核心代码实现(全量可复用,含注释)

  1. 工具类:DBUtil.java(数据库连接)
    java
    运行
    package com.company.detection.util;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

/**

  • 数据库连接工具类

  • 考试要求:确保数据库连接正常(2分)
    */
    public class DBUtil {
    // 数据库驱动(MySQL8.0+专用)
    private static final String DRIVER = "com.mysql.cj.jdbc.Driver";
    // 数据库URL(替换为本地数据库名和密码)
    private static final String URL = "jdbc:mysql://localhost:3306/engineering_detection_db?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true";
    private static final String USER = "root"; // 本地MySQL用户名
    private static final String PASSWORD = "123456"; // 本地MySQL密码

    // 静态代码块:加载驱动
    static {
    try {
    Class.forName(DRIVER);
    } catch (ClassNotFoundException e) {
    e.printStackTrace();
    throw new RuntimeException("数据库驱动加载失败!");
    }
    }

    /**

    • 获取数据库连接
      */
      public static Connection getConnection() throws SQLException {
      return DriverManager.getConnection(URL, USER, PASSWORD);
      }

    /**

    • 关闭数据库资源
      */
      public static void close(ResultSet rs, PreparedStatement pstmt, Connection conn) {
      if (rs != null) {
      try {
      rs.close();
      } catch (SQLException e) {
      e.printStackTrace();
      }
      }
      if (pstmt != null) {
      try {
      pstmt.close();
      } catch (SQLException e) {
      e.printStackTrace();
      }
      }
      if (conn != null) {
      try {
      conn.close();
      } catch (SQLException e) {
      e.printStackTrace();
      }
      }
      }

    /**

    • 重载:无ResultSet时关闭资源
      */
      public static void close(PreparedStatement pstmt, Connection conn) {
      close(null, pstmt, conn);
      }
      }
  1. 实体类(对应数据库表)
    (1)User.java(人员实体)
    java
    运行
    package com.company.detection.entity;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.Date;

/**

  • 人员实体类:映射t_user表
    */
    @Data
    @NoArgsConstructor
    @AllArgsConstructor
    public class User {
    private String userId; // 人员ID(8位)
    private String userName; // 姓名
    private String userPwd; // 密码
    private Integer userCategory; // 人员类别(0=检测员,1=经理,2=总监)
    private Integer groupNo; // 组号
    private Date createTime; // 创建时间
    }
    (2)Task.java(任务实体)
    java
    运行
    package com.company.detection.entity;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.Date;

/**

  • 任务实体类:映射t_task表
    */
    @Data
    @NoArgsConstructor
    @AllArgsConstructor
    public class Task {
    private String id; // 任务编号(XT-YYYY-XXXXX)
    private String commitDate; // 委托时间(YYYYMMDD)
    private String clientName; // 委托单位
    private String itemName; // 项目名称
    private String itemContent; // 项目内容
    private String classType; // 检测类别(委托/自检)
    private String method; // 检测方法
    private String sampleName; // 样品名称及状态
    private Double dryDensity; // 干密度
    private Double moistDensity; // 湿密度
    private String state; // 任务状态
    private Date operatingTime; // 操作时间
    private String inspectorId; // 检测员ID
    private String manageId; // 项目经理ID
    private String rejectReason; // 退回意见
    }
posted @ 2026-01-14 19:45  muyuxiaxing  阅读(0)  评论(0)    收藏  举报