funcool / funcool/clojure.jdbc

java.time interop

未关闭
#46 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
主要语言
Clojure
星标
106
派生
23
PR 合并指标
30 天内没有已合并 PR

描述

Would be great to have a file like

```
;; clojure.java-time

(:require
[java-time]
[jdbc.proto :refer [ISQLType ISQLResultSetReadColumn]])

; java.time.LocalDate - java.sql.Date
; java.time.LocalDateTime - java.sql.Timestamp
; java.time.LocalTime - java.sql.Time

(extend-protocol ISQLType
;
java.time.LocalDate
(as-sql-type [this conn]
(java-time/sql-date this))
(set-stmt-parameter! [this conn stmt index]
(.setDate stmt index
(java-time/sql-date this)))

java.time.LocalTime
(as-sql-type [this conn]
(java-time/sql-time this))
(set-stmt-parameter! [this conn stmt index]
(.setTime stmt index
(java-time/sql-time this)))

java.time.LocalDateTime
(as-sql-type [this conn]
(java-time/sql-timestamp this))
(set-stmt-parameter! [this conn stmt index]
(.setTimestamp stmt index
(java-time/sql-timestamp this))))
;
;

(extend-protocol ISQLResultSetReadColumn
;
java.sql.Timestamp
(from-sql-type [this conn metadata index]
(java-time/local-date-time this))
;
java.sql.Date
(from-sql-type [this conn metadata index]
(java-time/local-date this))
;
java.sql.Time
(from-sql-type [this conn metadata index]
(java-time/local-time this)))
;
```
to make `java.time` support easier.

贡献指南

这个仓库没有索引到贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。