3c59d5fb70
* Add proper documentation * Adds `asciidoc` documentation * `documentation` module added * Collects generated docs from all projects (e.g. settings.adoc from driver) * Generates HTML “User Guide” & “Release Notes” using `asciidoctor`. * Generated HTML docs pushed to `gh-pages` * Add aggregated javadoc to gh-pages push * Update release notes * Point READMEs to Website and/or User Guide |
||
---|---|---|
.idea | ||
.travis | ||
buildSrc | ||
config | ||
documentation | ||
driver | ||
gradle/wrapper | ||
settings-gen | ||
shared/src/build | ||
spy | ||
udt-gen | ||
.gitignore | ||
.travis.yml | ||
LICENSE | ||
README.md | ||
SETTINGS.md | ||
build.gradle.kts | ||
gradlew | ||
gradlew.bat | ||
settings.gradle.kts |
README.md
General
A great place to start is the Website.
For comprehensive documentation see the User Guide
For quick reference, here are some useful details
Dependencies
Gradle
compile "com.impossibl.pgjdbc-ng:pgjdbc-ng:LATEST"
Maven
<dependency>
<groupId>com.impossibl.pgjdb-ng</groupId>
<artifactId>pgjdb-ng</artifactId>
<version>LATEST</version>
</dependency>
JDBC URL
The driver accepts basic URLs in the following format
jdbc:pgsql://localhost:5432/db
See the User Guide for complete details on the accepted URL syntax.
Data sources
The javax.sql.DataSource class is
com.impossibl.postgres.jdbc.PGDataSource
, the javax.sql.ConnectionPoolDataSource class is
com.impossibl.postgres.jdbc.PGConnectionPoolDataSource
and the XADataSource class is
com.impossibl.postgres.jdbc.xa.PGXADataSource
License
pgjdbc-ng is released under the 3 clause BSD license.
Building
The driver is built with Gradle. To build & test, execute:
./gradlew clean build.
This will produce, in the driver/build/libs
directory, two JAR files. One with dependencies
packaged inside (pgjdbg-nc-<VERSION>-all
) and another without (pgjdbc-ng-VERSION
).
NOTE: Building requires a working install of Docker and Docker Compose as the unit tests are executed against a PostgreSQL instance in a private test container that is automatically started. If you wish to execute the tests against a specific instance of PostgreSQL outside of Docker see Testing.
Alternatively, to build the driver without testing you can execute:
./gradlew clean assemble
Testing
The unit tests need a PostgreSQL database to execute against. The build will start a Docker container and setup the test environment to execute against that container automatically.
If you don't have Docker installed or, wish to execute the tests against a specific instance of PostgreSQL, you
can execute the build
or test
tasks with the noDocker
property set to true. For example:
./gradle -PnoDocker=true test
For this to work the unit tests need to locate your selected PostgreSQL instance. The unit tests attempt a connection assuming theses defaults:
SERVER: localhost
PORT: 5432
DATABASE: test
USERNAME: test
PASSWORD: test
The following system properties are supported in order to customize the setup
pgjdbc.test.server
pgjdbc.test.port
pgjdbc.test.db
pgjdbc.test.user
pgjdbc.test.password