Modules
Dependencies
Exposed modules are available from Maven Central repository. To use them you have to add appropriate dependency into your repositories mapping.
The Maven Central repository is enabled by default for Maven users.
Base Modules
Exposed 0.18.1 and higher
To move forward and support such features as Java 8 Time, async drivers, and so on, it was decided to split Exposed into more specific modules. It will allow you to take the only modules you need and will add flexibility in the future.
Exposed
consists of the following modules:
exposed-core - base module, which contains both DSL api along with mapping
exposed-crypt - provides additional column types to store encrypted data in DB and encode/decode it on client-side
exposed-dao - DAO api
exposed-java-time - date-time extensions based on Java8 Time API
exposed-jdbc - transport level implementation based on Java JDBC API
exposed-jodatime - date-time extensions based on JodaTime library
exposed-json - JSON and JSONB data type extensions
exposed-kotlin-datetime - date-time extensions based on kotlinx-datetime
exposed-money - extensions to support MonetaryAmount from "javax.money:money-api"
exposed-spring-boot-starter - a starter for Spring Boot to utilize Exposed as the ORM instead of Hibernate
Dependencies mapping listed below is similar (by functionality) to the previous versions:
JDBC driver and logging
You also need a JDBC driver for the database system you are using (see Working with Databases) and a logger for addLogger(StdOutSqlLogger)
. Example (Gradle syntax):
Exposed 0.17.x and lower
Prior Exposed 0.18.1 there was only one base module exposed
which contains everything you may need including JodaTime as date-time library. To add Exposed
framework of that version, you had to use: