看这个对你是否有帮助?
    /**
     * 把一般格式的时间数据转化到符合在SQL语句中使用的Date格式<br>
     * 当时间不含有时:分:秒时,自动加上时分秒,此时由isEnd指定本日期是代表
     * 本日的开始,还是本日的结束<br>
     * 示例:" and news.readtime &lt;= " + to_date("2003-9-1", true)
     * @param time 需转化的时间数据
     * @param isEnd true代表本日的结束
     * @return 转化后的可用于SQL时间比较的子句
     */
    public static String to_date(String time, boolean isEnd) {
        time = time.trim();
        if (isEnd && time.indexOf(":") < 0)
            return " to_date('" + time + " 23:59:59','YYYY-MM-DD HH24:MI:SS') ";
        return " to_date('" + time + "','YYYY-MM-DD HH24:MI:SS') ";
    }

解决方案 »

  1.   

    javascript控制其输入固定格式的日期
      

  2.   

    在oralce中有格式化日期的函数。
      

  3.   

    1.可以限制用户输入。
    2.针对这两种格式,可以转换成一种。不会有影响。
       java.text.SimpleDateFormat format = new java.text.SimpleDateFormat("yyyy-MM-dd");
       java.util.Date date = format.parse("2003-7-30"); //or 2003-07-30
       String strDate = format.format(date);
    3.或者直接用oracle或其他数据库的日期函数。