Skip to content

rdbc-io/rdbc

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.

Travis Codecov Maven Central Gitter license

What is rdbc?

rdbc is a SQL-level relational database connectivity API targeting Scala and Java programming languages. The API is fully asynchronous and provides a possibility to leverage Reactive Streams' stream processing capabilities.

Documentation

See the documentation at http://rdbc.io.

Goals

Following list outlines the goals of the API:

  1. Provide vendor neutral access to most commonly used database features.

    The API is meant to be vendor neutral in a sense that if clients stick to using only standard SQL features no vendor-specific code should be needed and database backends can be switched with no client code changes.

  2. Be asynchronous and reactive.

    All methods that can potentially perform I/O actions don't block the executing thread so the API fits well into non-blocking application design. rdbc allows building applications according to the Reactive Manifesto by using Reactive Streams for asynchronous streaming results with a back-pressure.

  3. Provide a foundation for higher-level APIs.

    rdbc is a rather low-level API enabling clients to use plain SQL queries and get results back. While it can be used directly it's also meant to provide a foundation for higher-level APIs like functional or object relational mapping libraries.

About

Asynchronous database access for Scala and Java

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages