将Java String表单中的Date与JDBC DATE类型进行比较

时间:2013-04-25 04:16:27

标签: java date jdbc sqlmap

我需要在ibatis中定义一个SQL xml,其中比较日期。比较的日期是DATE jdbc对象,从java对象接收的日期是字符串。我应该如何将字符串转换为日期或如何比较两者?

由于

1 个答案:

答案 0 :(得分:0)

Java Date和SQL日期的字符串格式可能不同,因此比较此字符串可能不是一个好主意。

        Date d = new Date();
        java.sql.Date sqlDate = new java.sql.Date(d.getTime());
        Date javaDate = d;
        // Either get both java date and sql date to same format String and
        // compare
        String javaDateStr = DateFormat.getDateTimeInstance().format(javaDate);
        String sqlDateStr = DateFormat.getDateTimeInstance().format(sqlDate);
        System.out.println(javaDateStr);
        System.out.println(sqlDateStr);
        /*
         * Sysout console 
         * Apr 25, 2013 10:39:46 AM 
         * Apr 25, 2013 10:39:46 AM
         */
        // Do String compare
        // OR getMillis and compare
        long javaDateMillis = javaDate.getTime();
        long sqlDateMillis = sqlDate.getTime();

        System.out.println(javaDateMillis);
        System.out.println(sqlDateMillis);
        /*
         * Sysout console 
         * 1366866586716 
         * 1366866586716
         */