Merge pull request #2 from MichaelKofler/master

documentation update
This commit is contained in:
Andrey.Tarashevskiy
2020-05-03 12:12:22 +03:00
committed by GitHub
2 changed files with 46 additions and 4 deletions

View File

@@ -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")
```
```

View File

@@ -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"
}
```