You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
| Transaction Support | Early versions of the driver only **simulated** transaction support, which could have unexpected results. |
25
+
| Response Column Renaming | ResultSets were mutable - for efficiency sake they're now read-only |
26
+
| Multi-Statement SQL | Multi-statement support was only **simulated**, now it strictly follows 1:1 |
27
+
| Named Parameters | Not part of the JDBC spec |
28
+
| Stream-based PreparedStatements | Early version of the driver allowed for non-jdbc usage of PreparedStatements - if you desire such options, we recommend looking at [Client-V2](/docs/en/integrations/language-clients/java/client-v2.md) and its [examples](https://github.com/ClickHouse/clickhouse-java/tree/main/examples/client-v2). |
29
+
30
+
### Handling Dates, Times, and Timezones
31
+
java.sql.Date, java.sql.Time, and java.sql.Timestamp can complicate how Timezones are calculated - though they're of course supported,
32
+
you may want to consider using the [java.time](https://docs.oracle.com/javase/8/docs/api/java/time/package-summary.html) package for new code. [ZonedDateTime](https://docs.oracle.com/javase/8/docs/api/java/time/ZonedDateTime.html) and
33
+
[OffsetDateTime](https://docs.oracle.com/javase/8/docs/api/java/time/OffsetDateTime.html) are great replacements for java.sql.Timestamp,
34
+
and [LocalDateTime](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDateTime.html) could be used for java.sql.Date and java.sql.Time (though the JDBC driver will assume local
35
+
timezone if no calendar is provided).
36
+
37
+
:::note
38
+
`Date` is stored without timezone, while `DateTime` is stored with timezone. This can lead to unexpected results if you're not careful.
39
+
:::
40
+
19
41
## Environment requirements
20
42
21
43
-[OpenJDK](https://openjdk.java.net) version >= 8
22
44
23
-
24
45
### Setup
25
46
26
47
<TabsgroupId="jdbc-base-dependencies">
@@ -71,20 +92,13 @@ Where possible methods will return an `SQLFeatureNotSupportedException` if the f
| Transaction Support | Early versions of the driver only **simulated** transaction support, which could have unexpected results. |
132
-
| Response Column Renaming | ResultSets were read/write - for efficiency sake they're now read-only |
133
-
| Multi-Statement SQL | Statements would split multi-statements and execute, now it strictly follows 1:1 |
134
-
| Named Parameters ||
135
-
| Stream-based PreparedStatements | Early version of the driver allowed for non-jdbc usage of PreparedStatements - if you desire such options, we recommend looking to [Client-V2](/docs/en/integrations/language-clients/java/client-v2.md). |
136
140
141
+
## Hikari
142
+
143
+
```java showLineNumbers
144
+
// connection pooling won't help much in terms of performance,
145
+
// because the underlying implementation has its own pool.
146
+
// for example: HttpURLConnection has a pool for sockets
0 commit comments