Getting started Clojure, jdbc, PostgreSQL
Apr 6, 2022
The first step is create a project directory
mkdir /tmp/foo
Add deps.edn
file with jdbc and PostgreSQL dependencies. jdbc — is a universal Java interface for connection to databases.
{:deps {org.clojure/java.jdbc {:mvn/version "0.7.12"}
org.postgresql/postgresql {:mvn/version "42.3.3"}}}
The second step is creating a main file src/main.clj
(ns main
(:require
[clojure.java.jdbc :as j]))(def pg-db {:dbtype "postgresql"
:port 5432
:user "admin"
:dbname "admin"
:password "admin"})(j/query pg-db ["SELECT current_database()"])
The third step — run PostgreSQL. We’ll use docker for this purpose.
docker run -v $(pwd)/pgdata:/var/lib/postgresql/data -p 5432:5432 --name pg -e POSTGRES_USER=admin -e POSTGRES_PASSWORD=admin postgres
Now we can run REPL and check that all works!