Java 转换为SqlDate后的输出不正确

Java 转换为SqlDate后的输出不正确,java,sql,oracle,Java,Sql,Oracle,输出: import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; public class Test { /** * @param args */ public static void main(String[] args) { SimpleDateFormat formatter = new SimpleDateF

输出:

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;


public class Test {

    /**
     * @param args
     */
    public static void main(String[] args) {
        SimpleDateFormat formatter = new SimpleDateFormat("yyyy-mm-dd");
        String dateInString = "2016-04-23";

        try {

            Date date = formatter.parse(dateInString);
            java.sql.Date sqlDate = new java.sql.Date(date.getTime());
            System.out.println("Date: -- "+date);
            System.out.println("FormatterDate : -- "+formatter.format(date));
            System.out.println("SQLDATE : -- "+sqlDate);
        } catch (ParseException e) {
            e.printStackTrace();
        }

    }

}
我的输出应该是2016-04-23,而不是2016-01-23

请注意,它代表分钟而不是月份。对于月份,您必须使用MM。

请注意,它代表分钟,而不是月份。对于月份,您必须使用
MM

根据javadocs

Date: -- Sat Jan 23 00:04:00 CST 2016
FormatterDate : -- 2016-04-23
SQLDATE : -- 2016-01-23
你想要

m   Minute in hour
根据javadocs

Date: -- Sat Jan 23 00:04:00 CST 2016
FormatterDate : -- 2016-04-23
SQLDATE : -- 2016-01-23
你想要

m   Minute in hour
从“小时分钟数”到“小时分钟数30”