The Couchbase Java SDK is the default choice for languages running on the JVM. The SDK 3.x version is a complete rewrite of the 2.x API, providing a simpler surface area and adding support for future Couchbase Server features like Collections and Scopes.
The (reactive) API also migrated from RxJava to Reactor, along with other improvements to performance, logging, debugging and timeout troubleshooting. If you’re upgrading your application from Java SDK 2.x, please read our Migrating 2.x code to SDK 3.x Guide.
Spring Data for Couchbase is part of the umbrella Spring Data projectwhich aims to provide a familiar and consistent Spring-based programming model for new datastores while retaining store-specific features and capabilities.
The Spring Data Couchbase project provides integration with the Couchbase Server database. Key functional areas of Spring Data Couchbase are a POJO centric model for interacting with Couchbase Buckets and easily writing a Repository style data access layer.
This is a sample application for getting started with Couchbase Server 6.5. The application runs a single page UI and demonstrates SQL for Documents (N1QL) and Full Text Search (FTS) querying capabilities. It uses Couchbase Server 6.5.0 together with Spring Boot, Vue and Bootstrap.
Reactor - You want to consider an asynchronous, reactive API if the blocking API does not suit your needs. Using the reactive API over the `CompletableFuture` counterpart provides everything to build scalable asynchronous stacks.
You can also use Couchbase Lite with Java. It is a very good fit for offline-first desktop or standalone applications enabling development and deployment of Couchbase Lite applications to a JVM environment or a desktop or web server, including embedded Tomcat deployments.
List of projects developed/maintained by the community.
This library allows you to execute multi-document distributed ACID transactions on the top of Couchbase
A transparent framework which allows you to store the HttpSession of your Java application in Couchbase
Testcontainers is a Java library that supports JUnit tests, providing lightweight, throwaway instances of common databases, Selenium web browsers, or anything else that can run in a Docker container
JHipster is a development platform to quickly generate, develop, & deploy modern web applications & microservice architectures
Couchmove can help you track, manage and apply changes in your Couchbase buckets. The concept is very similar to other database migration tools such as Liquibase, Flyway, mongeez and mongobee
This library adds support for Field-Level Encryption (FLE) to the Couchbase Java SDK. It includes cryptographic algorithms and keyrings you can use out of the box, and provides a framework for implementing your own crypto components
This tutorial shows how you can build a User Profile microservice which Couchbase