{"id":20704649,"url":"https://github.com/holon-platform/holon-jdbc","last_synced_at":"2026-03-15T21:37:53.788Z","repository":{"id":57725000,"uuid":"93081969","full_name":"holon-platform/holon-jdbc","owner":"holon-platform","description":"Holon Platform JDBC module. Provides Java DataBase Connectivity support, dealing with javax.sql.DataSource configuration and management in single or multiple persistence source enviroments.","archived":false,"fork":false,"pushed_at":"2023-11-14T14:10:33.000Z","size":363,"stargazers_count":4,"open_issues_count":0,"forks_count":3,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-03-29T20:51:09.374Z","etag":null,"topics":["database","datasource","datastore","hikaricp","holon-jdbc","holon-platform","jdbc","spring-boot"],"latest_commit_sha":null,"homepage":"https://holon-platform.com","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/holon-platform.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":"CODEOWNERS","security":null,"support":null,"governance":null}},"created_at":"2017-06-01T17:21:16.000Z","updated_at":"2024-01-14T12:44:25.000Z","dependencies_parsed_at":"2023-11-14T15:29:38.716Z","dependency_job_id":"5791bc52-03af-489c-a111-2aec8426e618","html_url":"https://github.com/holon-platform/holon-jdbc","commit_stats":null,"previous_names":[],"tags_count":23,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/holon-platform%2Fholon-jdbc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/holon-platform%2Fholon-jdbc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/holon-platform%2Fholon-jdbc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/holon-platform%2Fholon-jdbc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/holon-platform","download_url":"https://codeload.github.com/holon-platform/holon-jdbc/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250351607,"owners_count":21416350,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["database","datasource","datastore","hikaricp","holon-jdbc","holon-platform","jdbc","spring-boot"],"created_at":"2024-11-17T01:14:17.636Z","updated_at":"2026-03-15T21:37:53.780Z","avatar_url":"https://github.com/holon-platform.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Holon platform JDBC module\n\n\u003e Latest release: [6.0.2](#obtain-the-artifacts)\n\nThis is the __JDBC__ module of the [Holon Platform](https://holon-platform.com), which provides _Java DataBase Connectivity_ support, dealing with `javax.sql.DataSource` configuration and management in single or multiple persistence source enviroments.\n\nThe module main features are:\n\n* A `DataSourceBuilder` API to create and configure `javax.sql.DataSource` instances using a configuration property source and supporting the most popular and best performing _pooling_ DataSource implementations ([HikariCP](https://github.com/brettwooldridge/HikariCP), [Apache DBCP2](https://commons.apache.org/proper/commons-dbcp/) and  [Tomcat JDBC Connection Pool](https://tomcat.apache.org/tomcat-9.0-doc/jdbc-pool.html)).\n* A basic _multi-tenant_ DataSource implementation using the platform foundation `TenantResolver` interface.\n* __Spring__ integration for `javax.sql.DataSource` beans configuration and initialization (with Spring's transaction management support) using the `@EnableDataSource` configuration annotation.\n* __Spring Boot__ integration for single or multiple `javax.sql.DataSource` beans auto-configuration using `application.properties`/`application.yaml` configuration properties.\n\nSee the module [documentation](https://docs.holon-platform.com/current/reference/holon-jdbc.html) for details.\n\nJust like any other platform module, this artifact is part of the [Holon Platform](https://holon-platform.com) ecosystem, but can be also used as a _stand-alone_ library.\n\nSee [Getting started](#getting-started) and the [platform documentation](https://docs.holon-platform.com/current/reference) for further details.\n\n## At-a-glance overview\n\n_JDBC DataSource configuration:_\n```java\nDataSourceConfigProperties config = DataSourceConfigProperties.builder()\n\t.withPropertySource(\"datasource.properties\").build();\n\nDataSource dataSource = DataSourceBuilder.create().build(config);\n```\n\n_JDBC DataSource builder:_\n```java\nDataSource dataSource = DataSourceBuilder.builder() \n\t.type(DataSourceType.HIKARICP)\n\t.url(\"jdbc:h2:mem:testdb\")\n\t.username(\"sa\") \n\t.minPoolSize(5)\n\t.withInitScriptResource(\"init.sql\")\n\t.build();\n```\n\n_Spring Boot multiple DataSource auto-configuration:_\n```yaml\nholon: \n  datasource:\n    one:\n      url: \"jdbc:h2:mem:testdb1\"\n      username: \"sa\"\n    two:\n      url: \"jdbc:h2:mem:testdb2\"\n      username: \"sa\"\n```\n\nSee the [module documentation](https://docs.holon-platform.com/current/reference/holon-jdbc.html) for the user guide and a full set of examples.\n\n## Code structure\n\nSee [Holon Platform code structure and conventions](https://github.com/holon-platform/platform/blob/master/CODING.md) to learn about the _\"real Java API\"_ philosophy with which the project codebase is developed and organized.\n\n## Getting started\n\n### System requirements\n\nThe Holon Platform is built using __Java 21__, so you need a JRE/JDK version 21 or above to use the platform artifacts.\n\n### Releases\n\nSee [releases](https://github.com/holon-platform/holon-jdbc/releases) for the available releases. Each release tag provides a link to the closed issues.\n\n### Obtain the artifacts\n\nThe [Holon Platform](https://holon-platform.com) is open source and licensed under the [Apache 2.0 license](LICENSE.md). All the artifacts (including binaries, sources and javadocs) are available from the [Maven Central](https://mvnrepository.com/repos/central) repository.\n\nThe Maven __group id__ for this module is `com.holon-platform.jdbc` and a _BOM (Bill of Materials)_ is provided to obtain the module artifacts:\n\n_Maven BOM:_\n```xml\n\u003cdependencyManagement\u003e\n    \u003cdependency\u003e\n        \u003cgroupId\u003ecom.holon-platform.jdbc\u003c/groupId\u003e\n        \u003cartifactId\u003eholon-jdbc-bom\u003c/artifactId\u003e\n        \u003cversion\u003e6.0.2\u003c/version\u003e\n        \u003ctype\u003epom\u003c/type\u003e\n        \u003cscope\u003eimport\u003c/scope\u003e\n    \u003c/dependency\u003e\n\u003c/dependencyManagement\u003e\n```\n\nSee the [Artifacts list](#artifacts-list) for a list of the available artifacts of this module.\n\n### Using the Platform BOM\n\nThe [Holon Platform](https://holon-platform.com) provides an overall Maven _BOM (Bill of Materials)_ to easily obtain all the available platform artifacts:\n\n_Platform Maven BOM:_\n```xml\n\u003cdependencyManagement\u003e\n    \u003cdependency\u003e\n        \u003cgroupId\u003ecom.holon-platform\u003c/groupId\u003e\n        \u003cartifactId\u003ebom\u003c/artifactId\u003e\n        \u003cversion\u003e${platform-version}\u003c/version\u003e\n        \u003ctype\u003epom\u003c/type\u003e\n        \u003cscope\u003eimport\u003c/scope\u003e\n    \u003c/dependency\u003e\n\u003c/dependencyManagement\u003e\n```\n\nSee the [Artifacts list](#artifacts-list) for a list of the available artifacts of this module.\n\n### Build from sources\n\nYou can build the sources using Maven (version 3.3.x or above is recommended) like this: \n\n`mvn clean install`\n\n## Getting help\n\n* Check the [platform documentation](https://docs.holon-platform.com/current/reference) or the specific [module documentation](https://docs.holon-platform.com/current/reference/holon-jdbc.html).\n\n* Ask a question on [Stack Overflow](http://stackoverflow.com). We monitor the [`holon-platform`](http://stackoverflow.com/tags/holon-platform) tag.\n\n* Report an [issue](https://github.com/holon-platform/holon-jdbc/issues).\n\n* A [commercial support](https://holon-platform.com/services) is available too.\n\n## Examples\n\nSee the [Holon Platform examples](https://github.com/holon-platform/holon-examples) repository for a set of example projects.\n\n## Contribute\n\nSee [Contributing to the Holon Platform](https://github.com/holon-platform/platform/blob/master/CONTRIBUTING.md).\n\n[![Gitter chat](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/holon-platform/contribute?utm_source=share-link\u0026utm_medium=link\u0026utm_campaign=share-link) \nJoin the __contribute__ Gitter room for any question and to contact us.\n\n## License\n\nAll the [Holon Platform](https://holon-platform.com) modules are _Open Source_ software released under the [Apache 2.0 license](LICENSE).\n\n## Artifacts list\n\nMaven _group id_: `com.holon-platform.jdbc`\n\nArtifact id | Description\n----------- | -----------\n`holon-jdbc` | Core artifact, providing `DataSourceBuilder` API and _multi-tenancy_ support\n`holon-jdbc-spring` | __Spring__ integration using the `@EnableDataSource` annotation\n`holon-jdbc-spring-boot` | __Spring Boot__ integration for `DataSource` auto-configuration\n`holon-starter-jdbc` | __Spring Boot__ _starter_ for `DataSource` auto-configuration\n`holon-starter-jdbc-hikaricp` | __Spring Boot__ _starter_ for `DataSource` auto-configuration using the [HikariCP](https://github.com/brettwooldridge/HikariCP) _pooling_ DataSource implementation\n`holon-jdbc-bom` | Bill Of Materials\n`documentation-jdbc` | Documentation\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fholon-platform%2Fholon-jdbc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fholon-platform%2Fholon-jdbc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fholon-platform%2Fholon-jdbc/lists"}