我们有一个 Clojure Web 应用程序,它使用 jndi 创建到数据库的连接。查询数据库的代码如下所示:
(def jndi-name {:name "jndi name"})
(defn query [q]
(sql/with-connection {:name "jndi name"}
(sql/with-query-results rs q
(time (vec rs)))))
jndi 配置是在 jetty 启动时从 jetty.xml 文件加载的。但是它在 REPL 中不起作用,使得开发有些不切实际。
有没有办法构造代码,以便当不在服务器中运行时,当没有可用的 jndi 上下文时,从配置文件而不是 jetty.xml 加载 db 配置?