Files
turso/bindings/java
Pekka Enberg 400dd6dd42 Merge 'bindings/java: Implement custom logger ' from Kim Seon Woo
## Purpose of the PR
- As bindings/java is just a library, we shouldn't have to add specific
library dependency(such as slf4j) to itself
- In order to load bindings/java to 3rd party software(such as
Datagrip), we shouldn't provide a library with slf4j included
## Changes
- Remove slf4j, logback dependency and files
- Add custom logger implementation
## ETC
We can now connect to Datagrip(but there are some errors though)
![image](https://github.com/user-
attachments/assets/ec8becf1-b9a8-415a-8943-74edee9b29c3)
## Reference
[Issue](https://github.com/tursodatabase/limbo/issues/615)

Closes #915
2025-02-07 12:37:56 +02:00
..
2025-02-06 20:54:13 +09:00
2025-01-05 10:28:05 +02:00
Nit
2025-02-07 13:50:00 +09:00
2025-01-05 10:28:05 +02:00
2025-01-05 10:28:05 +02:00
2025-01-05 10:28:05 +02:00

Limbo JDBC Driver

The Limbo JDBC driver is a library for accessing and creating Limbo database files using Java.

Project Status

The project is actively developed. Feel free to open issues and contribute.

To view related works, visit this issue.

How to use

Currently, we have not published to the maven central. Instead, you can locally build the jar and deploy it to maven local to use it.

Build jar and publish to maven local

$ cd bindings/java 

# Please select the appropriate target platform, currently supports `macos_x86`, `macos_arm64`, `windows`
$ make macos_x86

# deploy to maven local 
$ make publish_local

Now you can use the dependency as follows:

dependencies {
  implementation("org.github.tursodatabase:limbo:0.0.1-SNAPSHOT") 
}

Development

How to Run Tests

To run tests, use the following command:

$ make test

Code Formatting

To unify Java's formatting style, we use Spotless. To apply the formatting style, run:

$ make lint_apply

To apply the formatting style for Rust, run the following command:

$ cargo fmt 

Concepts

Note that this project is actively developed, so the concepts might change in the future.

  • LimboDB represents a Limbo database.
  • LimboConnection represents a connection to LimboDB. Multiple LimboConnections can be created on the same LimboDB.
  • LimboStatement represents a Limbo database statement. Multiple LimboStatements can be created on the same LimboConnection.
  • LimboResultSet represents the result of LimboStatement execution. It is one-to-one mapped to LimboStatement.