我在我的 servlet 中的单独整数变量中获得了日期、月份和年份。现在我想从中创建一个 java.sql.Date,这样我就可以使用
将它设置为我的存储过程的参数callableStatement.setDate(arrDate);
那么我怎样才能创建一个名为 arrDate 的 sql 日期变量呢?
最佳答案
首先创建一个Calendar
实例。并使用它来创建 SQL Date 的实例。
示例:
Calendar cal = Calendar.getInstance();
cal.set( Calendar.YEAR, 2014 );
cal.set( Calendar.MONTH, Calendar.FEBRUARY );
cal.set( Calendar.DATE, 24 );
cal.set( Calendar.HOUR, 0 );
cal.set( Calendar.MINUTE, 0 );
cal.set( Calendar.SECOND, 0 );
System.out.println( "Cal Date: " + cal.getTime() );
java.sql.Date sqlDate = new java.sql.Date( cal.getTimeInMillis() );
System.out.println( "SQL Date: " + sqlDate );
结果:
Cal Date: Mon Feb 24 00:00:00 IST 2014
SQL Date: 2014-02-24
现在使用sqlDate
设置为PreparedStatement的查询参数。
示例:
pst.setDate( paramNumber, sqlDate );
引用:
关于mysql - 从整数年、月和日期构造 java.sql.Date,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22539055/