2013-02-09 44 views
2

存储配置数据在我的Clojure程序的开始,我做了:的Clojure ::在外部文件

(def db-coords 
    {:classname "org.postgresql.Driver" 
    :subprotocol "postgresql" 
    :subname (str "//" host ":" port "/" dbname) ;; host, port and dbname are defd above 
    :user  "foo" 
    :password "bar"}) 

我想在外部文件这些值(.clj或其他)存储在类路径并从那里加载它们。显然,一种方法是使用java.util.Properties,但我怀疑在Clojure中有一种惯用的方式。

回答

5

考虑使用spitslurpread-string

Clojure具有序列化和反序列化数据结构的内置功能。

要序列化到一个文件:

(read-string (slurp "./coords.txt"))