{"id":19656309,"url":"https://github.com/daggerok/spring-boot-runtime-datasource-initialization","last_synced_at":"2026-04-12T15:03:46.617Z","repository":{"id":151042048,"uuid":"128146180","full_name":"daggerok/spring-boot-runtime-datasource-initialization","owner":"daggerok","description":"This repository contains example how to initialize different data-sources in runtime and using them to querying SQL statements","archived":false,"fork":false,"pushed_at":"2018-04-08T21:34:13.000Z","size":2690,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-01-10T00:42:21.622Z","etag":null,"topics":["docker","gradle","kotlin","maven","oracle","postgresql","spring-boot","webflux"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/daggerok.png","metadata":{"files":{"readme":"README.adoc","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-04-05T01:42:55.000Z","updated_at":"2024-08-15T19:57:50.000Z","dependencies_parsed_at":null,"dependency_job_id":"8c41e683-86d8-45dd-a8d3-5a5ce0a90e6b","html_url":"https://github.com/daggerok/spring-boot-runtime-datasource-initialization","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/daggerok%2Fspring-boot-runtime-datasource-initialization","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/daggerok%2Fspring-boot-runtime-datasource-initialization/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/daggerok%2Fspring-boot-runtime-datasource-initialization/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/daggerok%2Fspring-boot-runtime-datasource-initialization/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/daggerok","download_url":"https://codeload.github.com/daggerok/spring-boot-runtime-datasource-initialization/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240964683,"owners_count":19885790,"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":["docker","gradle","kotlin","maven","oracle","postgresql","spring-boot","webflux"],"created_at":"2024-11-11T15:27:24.034Z","updated_at":"2026-04-12T15:03:41.570Z","avatar_url":"https://github.com/daggerok.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"= spring-boot-runtime-datasource-initialization image:https://travis-ci.org/daggerok/spring-boot-runtime-datasource-initialization.svg?branch=master[\"Build Status\", link=\"https://travis-ci.org/daggerok/spring-boot-runtime-datasource-initialization\"]\n\n//tag::content[]\n== Runtime datasource initialization using spring-boot\n\nThis repository contains my trying to initialize different data-sources in runtime and use them to querying / handling SQL data.\nTo do so, my starting point is in-memory h2 database.\nI have implemented two rest resources (GET and POST).\nGET resource basically showing current (by default in-memory h2) dataSource bean containing from application context.\nPOST resource allows you create new DataSource bean in runtime and add it to dataSourcesHolder bean.\nlastly we are executing a SQL query to verify if that dataSource is working properly\n\n.prepare databases using docker (hope you have enough RAM) and start app\n----\n./gradlew composeUp -Pprofile=all\nbash build/libs/*.jar\n\n# ora\nhttp :8080/ \\\n  query=\"select 1 from dual\" \\\n  springJpaDatabase=ORACLE \\\n  springDatasourceUrl=\"jdbc:oracle:thin:@//127.0.0.1:1521/xe\" \\\n  springDatasourceUsername=system \\\n  springDatasourcePassword=oraclepassword \\\n  springDatasourceClassName=\"oracle.jdbc.OracleDriver\"\n\n{\n    \"databaseProductVersion\": \"Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Production\",\n    \"driverName\": \"Oracle JDBC driver\",\n    \"driverVersion\": \"11.2.0.4.0\",\n    \"holdingDataSources\": \"{ORACLE=HikariDataSource (HikariPool-2)}\",\n    \"result\": {\n        \"columnCount\": 1\n    },\n    \"url\": \"jdbc:oracle:thin:@//127.0.0.1:1521/xe\",\n    \"userName\": \"SYSTEM\"\n}\n\n# pg\nhttp :8080/ \\\n  query=\"select 1\" \\\n  springJpaDatabase=POSTGRESQL \\\n  springDatasourceUrl=\"jdbc:postgresql://0.0.0.0:5432/postgresdatabase\" \\\n  springDatasourceUsername=postgresuser \\\n  springDatasourcePassword=postgrespassword \\\n  springDatasourceClassName=\"org.postgresql.Driver\"\n\n{\n    \"databaseProductVersion\": \"9.4.17\",\n    \"driverName\": \"PostgreSQL Native Driver\",\n    \"driverVersion\": \"PostgreSQL 9.4.1212.jre7\",\n    \"holdingDataSources\": \"{ORACLE=HikariDataSource (HikariPool-2), POSTGRESQL=HikariDataSource (HikariPool-3)}\",\n    \"result\": {\n        \"columnCount\": 1\n    },\n    \"url\": \"jdbc:postgresql://0.0.0.0:5432/postgresdatabase\",\n    \"userName\": \"postgresuser\"\n}\n\n./gradlew composeDown -Pprofile=all\n# or: docker-compose -f docker-compose-all.yaml down -v; docker-compose -f docker-compose-all.yaml rm -v\n----\n\n////\n=== basic (default) README\n.gradle\n----\n./gradlew\njava -jar build/libs/*.jar\nbash build/libs/*.jar\n\n./gradlew build composeUp\n./gradlew composeDown\n----\n\n.maven\n----\n./mvnw\njava -jar target/*.jar\nbash target/*.jar\n\n./mvnw; ./mvnw com.dkanejs.maven.plugins:docker-compose-maven-plugin:1.0.1:up\n./mvnw com.dkanejs.maven.plugins:docker-compose-maven-plugin:1.0.1:down\n----\n////\n\ngenerated by link:https://github.com/daggerok/generator-jvm/[jvm] yeoman generator\n//end::content[]\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdaggerok%2Fspring-boot-runtime-datasource-initialization","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdaggerok%2Fspring-boot-runtime-datasource-initialization","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdaggerok%2Fspring-boot-runtime-datasource-initialization/lists"}