mirror of
https://github.com/jlengrand/exposed-wiki.git
synced 2026-03-10 08:11:18 +00:00
@@ -37,12 +37,27 @@ Database.connect("jdbc:pgsql://localhost:12346/test", driver = "com.impossibl.po
|
||||
//Gradle
|
||||
compile("com.impossibl.pgjdbc-ng", "pgjdbc-ng", "0.8.3")
|
||||
```
|
||||
* MySQL
|
||||
* MySQL/MariaDB
|
||||
```kotlin
|
||||
Database.connect("jdbc:mysql://localhost:3306/test", driver = "com.mysql.jdbc.Driver",
|
||||
user = "root", password = "your_pwd")
|
||||
//Gradle
|
||||
compile("mysql:mysql-connector-java:5.1.46")
|
||||
compile("mysql:mysql-connector-java:5.1.48")
|
||||
```
|
||||
* MySQL/MariaDB with latest JDBC driver + Hikari pooling
|
||||
```kotlin
|
||||
val config = HikariConfig().apply {
|
||||
jdbcUrl = "jdbc:mysql://localhost/dbname"
|
||||
driverClassName = "com.mysql.cj.jdbc.Driver"
|
||||
username = "username"
|
||||
password = "secret"
|
||||
maximumPoolSize = 10
|
||||
}
|
||||
val dataSource = HikariDataSource(config)
|
||||
Database.connect(dataSource)
|
||||
// Gradle
|
||||
implementation "mysql:mysql-connector-java:8.0.19"
|
||||
implementation "com.zaxxer:HikariCP:3.4.2"
|
||||
```
|
||||
* Oracle
|
||||
```kotlin
|
||||
@@ -57,11 +72,18 @@ Database.connect("jdbc:jdbc:oracle:thin:@//localhost:1521/test", driver = "oracl
|
||||
Database.connect("jdbc:sqlite:/data/data.db", "org.sqlite.JDBC")
|
||||
// In memory
|
||||
Database.connect("jdbc:sqlite:file:test?mode=memory&cache=shared", "org.sqlite.JDBC")
|
||||
// For both: set SQLite compatible isolation level, see
|
||||
// https://github.com/JetBrains/Exposed/wiki/FAQ
|
||||
TransactionManager.manager.defaultIsolationLevel =
|
||||
Connection.TRANSACTION_SERIALIZABLE
|
||||
// or Connection.TRANSACTION_READ_UNCOMMITTED
|
||||
//Gradle
|
||||
compile("org.xerial:sqlite-jdbc:3.21.0.1")
|
||||
compile("org.xerial:sqlite-jdbc:3.30.1")
|
||||
```
|
||||
* H2
|
||||
```kotlin
|
||||
// Database in file, needs full path or relative path starting with ./
|
||||
Database.connect("jdbc:h2:./myh2file", "org.h2.Driver")
|
||||
// In memory
|
||||
Database.connect("jdbc:h2:mem:regular", "org.h2.Driver")
|
||||
// In memory / keep alive between connections/transactions
|
||||
@@ -75,4 +97,4 @@ Database.connect("jdbc:sqlserver://localhost:32768;databaseName=test", "com.micr
|
||||
user = "root", password = "your_pwd")
|
||||
//Gradle
|
||||
compile("com.microsoft.sqlserver:mssql-jdbc:6.4.0.jre7")
|
||||
```
|
||||
```
|
||||
|
||||
@@ -86,6 +86,11 @@ Dependencies mapping listed bellow is similar (by functionality) to the previous
|
||||
<artifactId>exposed-jodatime</artifactId>
|
||||
<version>0.23.1</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.jetbrains.exposed</groupId>
|
||||
<artifactId>exposed-java-time</artifactId>
|
||||
<version>0.23.1</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
```
|
||||
@@ -97,6 +102,8 @@ dependencies {
|
||||
compile 'org.jetbrains.exposed:exposed-dao:0.23.1'
|
||||
compile 'org.jetbrains.exposed:exposed-jdbc:0.23.1'
|
||||
compile 'org.jetbrains.exposed:exposed-jodatime:0.23.1'
|
||||
// or
|
||||
compile 'org.jetbrains.exposed:exposed-java-time:0.23.1'
|
||||
}
|
||||
```
|
||||
#### Gradle Kotlin DSL
|
||||
@@ -106,6 +113,19 @@ dependencies {
|
||||
compile("org.jetbrains.exposed", "exposed-dao", "0.23.1")
|
||||
compile("org.jetbrains.exposed", "exposed-jdbc", "0.23.1")
|
||||
compile("org.jetbrains.exposed", "exposed-jodatime", "0.23.1")
|
||||
// or
|
||||
compile("org.jetbrains.exposed", "exposed-java-time", "0.23.1")
|
||||
}
|
||||
```
|
||||
|
||||
### JDBC driver and logging
|
||||
You also need a JDBC driver for the database system you are using (see [[DataBase and DataSource|DataBase-and-DataSource]]) and a logger for `addLogger(StdOutSqlLogger)`. Example (Gradle syntax):
|
||||
```kotlin
|
||||
dependencies {
|
||||
// for H2
|
||||
implementation "com.h2database:h2:1.4.200"
|
||||
// for logging (StdOutSqlLogger), see
|
||||
// http://www.slf4j.org/codes.html#StaticLoggerBinder
|
||||
implementation "org.slf4j:slf4j-nop:1.7.30"
|
||||
}
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user