向java SQL Date添加小时,分钟和秒

我在使用Java计算数据库中的值时遇到了一些麻烦.我试图从数据库中按日期计算一些值,但它们有小时,分钟和秒.如果我用java.sql.Date搜索它只允许我输入年,月和日,所以带有日期的值:年“ – ”月“-31(小时:分钟:秒...

我在使用Java计算数据库中的值时遇到了一些麻烦.

我试图从数据库中按日期计算一些值,但它们有小时,分钟和秒.如果我用java.sql.Date搜索它只允许我输入年,月和日,所以带有日期的值:年“ – ”月“-31(小时:分钟:秒!= 00:00:00) “不会被计算在内.

有没有办法为java.sql.Date添加小时,分钟和秒?如果没有,那么它会有什么更好的方法呢?

我的代码:

public static int getAmountPos(Connection con, Integer month, Integer year) {

        java.sql.Date date1 = java.sql.Date.valueOf(year+"-"+month+"-01");
        java.sql.Date date2 = java.sql.Date.valueOf(year+"-"+month+"-31");

        Integer amount = null;
        String sql = "SELECT COUNT(*) AS 'cantidad' "
                + " FROM table.point_of_service "
                + " WHERE registration_date between ? AND ?";

        PreparedStatement ps = con.getPreparedStatement(sql);
        ps.setDate(1, date1);
        ps.setDate(2, date2);

        ResultSet rs = ps.executeQuery();

        if(rs.next()) {
            amount = rs.getInt("cantidad");
        }

        return amount;
    }

解决方法:

java.sql.Date类不用于保存有关时间的信息.它只包含日期(年,月,日).您应该使用java.sql.Timestamp来满足您的需求.

本文标题为:向java SQL Date添加小时,分钟和秒

基础教程推荐