Skip to main content
Version: 2.0.0

Oracle NoSQL Database

Oracle NoSQL Database provides managed JSON, table, and key-value storage with flexible transaction guarantees.

Dependency Coordinates

Maven

<dependency>
<groupId>com.oracle.cloud.spring</groupId>
<artifactId>spring-cloud-oci-starter-nosql</artifactId>
</dependency>

Gradle

dependencies {
implementation("com.oracle.cloud.spring:spring-cloud-oci-starter-nosql")
}

Using NoSQL Repositories

The starter auto-configures NosqlDBConfig so you can use repository-based access.

spring:
cloud:
oci:
config:
type: file
region:
static: us-ashburn-1

Enable repositories:

import com.oracle.nosql.spring.data.config.AbstractNosqlConfiguration;
import com.oracle.nosql.spring.data.repository.config.EnableNosqlRepositories;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
@EnableNosqlRepositories
public class MyApp extends AbstractNosqlConfiguration {
public static void main(String[] args) {
SpringApplication.run(MyApp.class, args);
}
}

Define repository and entity types:

public interface BookRepository extends NosqlRepository<Book, Long> {
Iterable<Book> findByAuthor(String author);
Iterable<Book> findByTitle(String title);
}
@NosqlTable(tableName = "books")
public class Book {
@NosqlId(generated = true)
long id;
String title;
String author;
double price;
}

Configuration

NameDescriptionRequiredDefault
spring.cloud.oci.nosql.enabledEnables the NoSQL DB configurationNotrue

Sample

See spring-cloud-oci-nosql-sample.