// https://mvnrepository.com/artifact/com.xtdb/xtdb-jdbc
implementation("com.xtdb:xtdbjdbc:$XTDB_VERSION")
Using XTDB from Kotlin
In Kotlin, you can talk to a running XTDB node using standard Java JDBC tooling, using XTDB’s Postgres wire-compatibility.
Install
To install the XTDB JDBC driver, add the following dependency to your Gradle build.gradle.kts
:
Or, for Maven:
<dependency>
<groupId>com.xtdb</groupId>
<artifactId>xtdbjdbc</artifactId>
<version>$XTDB_VERSION</version>
</dependency>
Connect
Once you’ve started your XTDB node, you can use the following code to connect to it:
import java.sql.DriverManager
// This is using relatively raw JDBC - you can also use standard connection pools
// and JDBC abstraction libraries.
fun main() {
DriverManager.getConnection("jdbc:xtdb://localhost:5432/xtdb").use { connection ->
connection.createStatement().use { statement ->
statement.execute("INSERT INTO users RECORDS {_id: 'jms', name: 'James'}, {_id: 'joe', name: 'Joe'}")
statement.executeQuery("SELECT * FROM users").use { rs ->
println("Users:")
while (rs.next()) {
println(" * ${rs.getString("_id")}: ${rs.getString("name")}")
}
}
}
}
}
/* Output:
Users:
* jms: James
* joe: Joe
*/
Notes:
-
XTDB currently ignores the username and password arguments.