You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用JDBC在MySQL中获取count(*)结果并赋值给Java整数变量?

将MySQL COUNT查询结果存入Java整数变量的方法

方法一:原生JDBC实现

这是最基础的实现方式,直接用JDBC API完成查询与结果提取:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;

public class EmployeeCountQuery {
    public static void main(String[] args) {
        // 数据库连接参数
        String dbUrl = "jdbc:mysql://localhost:3306/your_db_name?useSSL=false&serverTimezone=UTC";
        String dbUser = "your_username";
        String dbPwd = "your_password";
        
        int employeeCount = 0; // 存储统计结果的整数变量
        
        // 用try-with-resources自动关闭连接、Statement、ResultSet,避免资源泄漏
        try (Connection conn = DriverManager.getConnection(dbUrl, dbUser, dbPwd);
             Statement stmt = conn.createStatement();
             ResultSet rs = stmt.executeQuery("select count(*) from employeedetails")) {
            
            // count(*)只会返回一行结果,调用next()移动到结果行
            if (rs.next()) {
                // 通过列索引(从1开始)获取结果,也可以用列名"count(*)"
                employeeCount = rs.getInt(1);
            }
        } catch (Exception e) {
            // 实际业务中可替换为自定义异常处理逻辑
            e.printStackTrace();
        }
        
        // 此时employeeCount已存入统计值
        System.out.println("员工总数:" + employeeCount);
    }
}

注意事项:

  • 必须确保数据库驱动(mysql-connector-java)已加入项目依赖
  • 不要省略异常处理,根据业务场景定制错误处理逻辑

方法二:Spring JdbcTemplate实现

如果项目基于Spring框架,用JdbcTemplate可以大幅简化代码,无需手动管理数据库资源:

import org.springframework.jdbc.core.JdbcTemplate;
import javax.sql.DataSource;

public class EmployeeCountService {
    private final JdbcTemplate jdbcTemplate;

    // 通过构造方法注入DataSource,初始化JdbcTemplate
    public EmployeeCountService(DataSource dataSource) {
        this.jdbcTemplate = new JdbcTemplate(dataSource);
    }

    public int getEmployeeTotalCount() {
        String sql = "select count(*) from employeedetails";
        // queryForObject直接返回单个整数结果
        return jdbcTemplate.queryForObject(sql, Integer.class);
    }
}

注意事项:

  • 需确保Spring容器中已正确配置DataSource(比如通过application.yml/properties配置连接参数)
  • 若极端情况下查询返回空结果(count(*)理论不会出现),queryForObject会抛出EmptyResultDataAccessException,可按需捕获处理

内容的提问来源于stack exchange,提问作者lord foul

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 05:41:19