我的servlet中有单独的整数变量的日期,月份和年份。现在我想从它创建一个java.sql.Date,以便我可以使用
将其设置为我的存储过程的参数callableStatement.setDate(arrDate);
那么如何创建一个名为arrDate的SQL日期变量?
答案 0 :(得分:2)
首先创建一个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 );
请参阅: