如何在java中将日历转换为java.sql.date?

jyztefdp  于 2021-07-07  发布在  Java
关注(0)|答案(8)|浏览(401)
  1. Calendar cal;
  2. String sql = "INSERT INTO ttable (dt) values (?);"
  3. //dt is a dateTime field in ttable
  4. PreparedStatement stmt = connection.prepareStatement(sql);
  5. stmt = setDate(1,cal); //not working
  6. stmt.execute();
  7. stmt.close();

我想将cal转换为要插入表中的日期类型。

vjhs03f7

vjhs03f71#

使用 stmt.setDate(1, new java.sql.Date(cal.getTimeInMillis()))

mzaanser

mzaanser2#

有一个 getTime() 方法(不确定为什么不叫getdate)。
编辑:刚刚意识到你需要一个java.sql.date。其中一个答案是 cal.getTimeInMillis() 是你需要的。

raogr8fs

raogr8fs3#

stmt.setDate(1, new java.sql.Date(cal.getTime().getTime()));

odopli94

odopli944#

我发现这个代码是有效的:

  1. SimpleDateFormat sdf = new SimpleDateFormat("yyyy MMM dd HH:mm:ss");
  2. Calendar calendar = new GregorianCalendar(2013,0,31);
  3. System.out.println(sdf.format(calendar.getTime()));

您可以在本教程中找到其余内容:
http://www.mkyong.com/java/java-date-and-calendar-examples/

tzcvj98z

tzcvj98z5#

你试过了吗 cal.getTime() ? 这将获取日期表示。
您可能还想看看javadoc。

mfpqipee

mfpqipee6#

  1. Calendar cal = Calendar.getInstance(); //This to obtain today's date in our Calendar var.
  2. java.sql.Date date = new Date (cal.getTimeInMillis());
wmomyfyw

wmomyfyw7#

转换很容易,设置日期和时间有点棘手。举个例子:

  1. Calendar cal = Calendar.getInstance();
  2. cal.set(Calendar.YEAR, 2000);
  3. cal.set(Calendar.MONTH, 0);
  4. cal.set(Calendar.DAY_OF_MONTH, 1);
  5. cal.set(Calendar.HOUR_OF_DAY, 1);
  6. cal.set(Calendar.MINUTE, 1);
  7. cal.set(Calendar.SECOND, 0);
  8. cal.set(Calendar.MILLISECOND, 0);
  9. stmt.setDate(1, new java.sql.Date(cal.getTimeInMillis()));
llmtgqce

llmtgqce8#

下面是一个简单的转换方法 Calendar 价值观 Date 示例。

  1. Calendar C = new GregorianCalendar(1993,9,21);
  2. Date DD = C.getTime();
  3. System.out.println(DD);

相关问题