温馨提示×

JDBC中如何处理日期

小云
97
2023-10-10 10:51:19
栏目: 编程语言

在JDBC中处理日期主要通过java.sql.Date和java.sql.Timestamp类来完成。

java.sql.Date类用于存储日期数据,其构造方法可以接受年、月、日作为参数,例如:
```java
java.sql.Date date = new java.sql.Date(2020, 1, 1);
```
可以通过PreparedStatement的setDate方法将日期参数设置到SQL语句中,例如:
```java
PreparedStatement ps = conn.prepareStatement("INSERT INTO table (date_column) VALUES (?)");
ps.setDate(1, date);
ps.executeUpdate();
```

java.sql.Timestamp类用于存储日期和时间数据,其构造方法可以接受年、月、日、时、分、秒作为参数,例如:
```java
java.sql.Timestamp timestamp = new java.sql.Timestamp(2020, 1, 1, 12, 0, 0);
```
可以通过PreparedStatement的setTimestamp方法将日期和时间参数设置到SQL语句中,例如:
```java
PreparedStatement ps = conn.prepareStatement("INSERT INTO table (timestamp_column) VALUES (?)");
ps.setTimestamp(1, timestamp);
ps.executeUpdate();
```

在查询数据库时,可以使用ResultSet的getDate或getTimestamp方法获取日期或日期和时间数据,例如:
```java
ResultSet rs = stmt.executeQuery("SELECT * FROM table");
while (rs.next()) {
   java.sql.Date date = rs.getDate("date_column");
   java.sql.Timestamp timestamp = rs.getTimestamp("timestamp_column");
   // 处理日期数据
}
```

需要注意的是,java.sql.Date只包含日期信息,时间信息将被忽略;而java.sql.Timestamp包含日期和时间信息。

0