Thanks for the step by step execution dear Friend! Actually, I have downloaded a copy but it was not working for me. when I watched this video I corrected a few things in the code and it was working fantastically.
However, I would like to know how to send data as a JSON to the endpoint? because what I could see is that passing the values to Model classes in a program itself. I want to know how to do it dynamically at run time with postman?
@@vijayakumarkrishnan9269 this is backend code that's why I tried with postman but if you want data in real time scenario then it should be pass through client (angular, Ajax)
@@Javatechie Yes, exactly, I have a client app which submits the data from a web form to backend endpoint via Ajax post. but would like to know how to process Ajax data in backend repository code or in the controller.
Nice Video could you please clarify the below points 1. (23:24) in persistanceUnit("Book") we configure for one table entity, what if the db have some 10 tables how to configure all of them 2. And you created Repository by extending Jparepository what if we want to interact with 10 tables in that Db. 3. is there any way to configure EntityManager per datasource so that we can interact with all tables in that datasource? Please explain these points.
i didn't understand onepoint; there are two entityManagerFactory in 2 db config class. What if we have so many entity classes and repo classes in the project? do we need to create config file for every single model class that we have ?
Thank you so much sir for your hard efforts for us to make us with easy learn. Awesome and very helpful videos and you also explain the concept very well. Thanks , i took reference of your this code and videos to implement my task, now i need to connect my API with 3 database as @primary will help for between two database .. as for three database i am getting , how i can mange it with qualifier or any other ways for the same. Thanks for your hard efforts as you bring knowledgeable videos. Thanks.
Nice video basanth.. How @configurationproperties() working here.. because in properties file the prefix is (spring. User........) but in your config class you mentioned pring.user... how the data source were created in your application. Check at time about 12:19 .. nice video..
@@nageswararaopalchuri3003 you can ignore it ,I just used it to disable all the database related auto configuration as I configured manually using java base config approach
We are manually creating datasource specific to database then we are adding required configuration stuff Once our datasource created we are mapping it to entity manager .
Very nice Explanation.. Requesting you to pl. make a similar 30 minute video including code example for distributed transaction management using Spring Boot microservice. Thanks!
@@Javatechie You have used persistent Unit name as "User' . So my question was what if there are 10 entitites. ? Should should write configuration for all 10 entities as persistant Unit?
Very nice explanation. Keep it up. Can't we keep both user and book repository interfaces in a single package instead of keeping in 2 different packages??
Awesome :) Exactly what I am looking for :) Thanks a lot With the reference of this I am able to integrate Spring boot with MySQL and Neo4j repositories at the same time.
Thanks for the video. Can you please make a video showing Springboot Application which will be deployed to Weblogic Server and connect to a JNDI datasource which is already created in weblogic server. Thanks in advance.
Hi sir good explanation, I am having a doubt I need to connect different schemas like user model has separate user schema and book model has separate book schema but both are in sql database , may i use this same configuration for this task and also should i create a separate separate packages for both "pls reply "
@@Javatechie Is there any way we can pass dynamic schema name rather than hardcoding in application.properties? let's say adding new schema for any new client enrolled to system. Thanks in advance!
Hi, Java Techi, Thank you for your video, I have a doubt I configured just like you with customer and order in two different DB and they are in one to many relation so when I set scan packages to com.example in config I'am able to create table but all tables are getting created in both DB how do I resolve that and make to create only one table in each DB
@@Javatechie what is that persistent()?. There you mentioned entity name. But what about if we have multiple entities. How do I mention entities to that persistent.
Hi, Can we join two tables from different databses? Say employee is in oracle DB and Department in mysql DB. I dont want to join inside service but want to join in repo using jpql.
I have one doubt? I have two schemas work -> customer_table work2 -> customer_table how can I call dynamically for different schemas? I have one POJO class and one repository, how to change the table name dynamically.
@@artnum-rdc2015 am not sure but yes I did something like below Take DB dump of your remote DB then import it in your local or just point your local DB to remote host . So that both info can be on sync
Yes it's on table level. But what If I have to achieve a common/ global transaction on two diff tables... Example: a distributed Trx mgmt, if there are two tables(say db1.table1 and db2.table2).. but using single Trx. Like, if amount debited from db1.SBI table is successful. But credit in db2.hdfc table is failed. Then it should rollback. And SBI refund should be there. so if you can demo using Hibernate Jpa and spring boot. It would be great.
Hi, I Need your advice here. I’m building a web application which allows users to choose database (HK,UK,US) from the UI. Based on his selection of databases, I need to connect to respective DB instance in the spring boot + Jpa. Please share your thoughts!
We can do one thing Based on UI input we will enable profile for region rather than environment Let's se I chooses UK then from application we will setActiveprofile to UK so that corresponding datasource properties will be loaded . Do let me know if you have any issue. Very interesting concept
Thanks for this wonderful video..it's so helpful.. Awesome way of explaining.. thanks for your efforts for us learners... Sir I have one question... without @Entity class we can connect to data base..as I need to fire queries..having different table...how I can do that.. please suggest.. I don't want to create table in db ..but want to retrieve data from different table...in case..I don't need that that Entity class created..I made dto..to fetch the data....but..how I can do..can you please suggest
Hi @Java Techie Can we Datasource-1 for Multiple repositories? Example: I am having two Data Sources DS-1, DS-2 DS-1 contains Books, NewsPaper, Notes, Ref-Materials, etc tables, Whereas DS-2 contains transactions of users. It's Possible to connect DS-1 with Multiple Repo?
I have 2 schemas, and both are identical (they are just replicas), do I still need to maintain 2 different models and repositories? Or can the basePackages be the same?
we have created two data sources each data source has one table, what if we have more tables in each data source, how we create entities and how we bind to particular data source?
Why separate config for each entity ... can't it be done on single config class .. as in real time we will be having multiple entities so i don't think it's good practise to create separate config for each entity. Any suggestion on that
Hi, I have downloaded the code from git and tried to execute. Its creating both the tables in one schema only. Any idea why so? I also have to add few properties in POM.xml to make it work
Nice video ... Can we able to join two entities from different datasources and fetching selected columns from both the entities ? is it possible ? Eg : joining User with Book with foreign key and fetching username,bookname after joining.
Hi, really nice video. Is this also the way to achieve dynamic data source routing? If in the payload we getting which database we require to query/update. Will this be an optimum way to do it?
Getting error: Parameter 0 of method studentEntityManagerFactory in com.school.config.StudentsDataSourceConfig required a bean of type 'org.springframework.boot.orm.jpa.EntityManagerFactoryBuilder' that could not be found. Action: Consider defining a bean of type 'org.springframework.boot.orm.jpa.EntityManagerFactoryBuilder' in your configuration.
U give input like user and book to the value of the persistence unit So is it means name of the model class If it is yes how can I give all model for that..
Dude please watch from begin I mentioned there as I don't have multiple databases install in my machine am giving example using two different entity Let's say I have Oracle and MySQL Oracle db I can configure N number of entity similarly for Oracle I can configure N number of entity Because in one database we xan have multiple entity If you have multiple DB in your machine then please try configure it and see I Just configure 2 schema to show demo how to configure in case data source .
@@Javatechie @Akshat Pandey, could you please send share your code how u configured mysql and mongo in single application. I'm facing problem with mysql+mongodb databases combination
You want to update record ? If any field changed right ? So first you need to get existing object from dB then set the new value to object next save it
Thank you, brother, on July 25th, 2023 at 2:15 AM in the United States you solved my problem. Thanks for this video. Wish you all good.
interview point of view this video is very important , those who wants the Resume Spring Boot
Sir, you can put a payment link for donation, you are doing a lot good for free and you deserve something in return.
Agreed with you and .. hands up to his efforts 🙏
Awesome this is exactly what i was looking for. This question asked me in interview repeatedly
Thank you, 4 years old but still works
Datasource are mapped using keys with domain-name (from 7.09)
Syntax: "spring...url = xxx"
instead of "spring..url = xxx"
Thanks for the step by step execution dear Friend! Actually, I have downloaded a copy but it was not working for me. when I watched this video I corrected a few things in the code and it was working fantastically.
Thanks Vijaya , Could you please update here if you found any issue with same code
@@Javatechie I have downloaded some different Code friend. Not your code. Your code works seamlessly fine :)
However, I would like to know how to send data as a JSON to the endpoint? because what I could see is that passing the values to Model classes in a program itself. I want to know how to do it dynamically at run time with postman?
@@vijayakumarkrishnan9269 this is backend code that's why I tried with postman but if you want data in real time scenario then it should be pass through client (angular, Ajax)
@@Javatechie Yes, exactly, I have a client app which submits the data from a web form to backend endpoint via Ajax post. but would like to know how to process Ajax data in backend repository code or in the controller.
Thank you so much for sharing the knowledge on multiple datasource usage in MS.
Nice Video could you please clarify the below points
1. (23:24) in persistanceUnit("Book") we configure for one table entity, what if the db have some 10 tables how to configure all of them
2. And you created Repository by extending Jparepository what if we want to interact with 10 tables in that Db.
3. is there any way to configure EntityManager per datasource so that we can interact with all tables in that datasource?
Please explain these points.
For each table you need to create separate repo that's what database per service pattern in microservices
@@Javatechie ok so i need to create 10 interfaces(Repositories).
and is there any way to configure EntityManager per datasource?
Just for the readers, hbm2ddl.auto=update is discouraged in production. Better use dbProperties.put("hibernate.hdm2ddl.auto", "validate");
i didn't understand onepoint; there are two entityManagerFactory in 2 db config class. What if we have so many entity classes and repo classes in the project? do we need to create config file for every single model class that we have ?
No if Entity belongs from same Database then in one entityManager configuration you can add those entity
thanks for sharing the valueble info..How to connect with Maria DB and Mssql DB
Just change datasource properties that's it
Thank you so much sir for your hard efforts for us to make us with easy learn. Awesome and very helpful videos and you also explain the concept very well. Thanks , i took reference of your this code and videos to implement my task, now i need to connect my API with 3 database as @primary will help for between two database .. as for three database i am getting , how i can mange it with qualifier or any other ways for the same. Thanks for your hard efforts as you bring knowledgeable videos. Thanks.
Thanks Veena ,
What difficulty you are facing while connect to 3 different datasource however approach is same
This tutorial actually i am looking for.Thanku.
Nice video basanth.. How @configurationproperties() working here.. because in properties file the prefix is (spring. User........) but in your config class you mentioned pring.user... how the data source were created in your application. Check at time about 12:19 .. nice video..
Hey Narendra yeah it should be spring ,latter I changed spell before run
@@Javatechie ohh.. Okay
What is the use of writing the spring.autoconfigure.exclude in properties file
@@nageswararaopalchuri3003 you can ignore it ,I just used it to disable all the database related auto configuration as I configured manually using java base config approach
Thank you for this tutorial I am very happy
That's what I did here , two database means definitely we need to configure two different datadource .
Let me know your doubts with more info
@@Javatechie my Question is how you can create a new datasource at runtime by controller web by generated code . " programmatically and dynamic "
We are manually creating datasource specific to database then we are adding required configuration stuff
Once our datasource created we are mapping it to entity manager .
@@Javatechie Thanks sir, I know what I did but can you help me do this work? Or guide me something in this problem
Very nice Explanation..
Requesting you to pl. make a similar 30 minute video including code example for distributed transaction management using Spring Boot microservice. Thanks!
thanks so much for your tutorial.
now i have question, if i have more than one entity in both datasource, what changes i need to do and where?
You only need to create additional repository later that's it
@@Javatechie Nice, this works for me, i love you
Do we have to add configuration class for every entity in the project? Lets say there are 10 entity classes?
Only configuration required for data source not for entity pavan
@@Javatechie You have used persistent Unit name as "User' . So my question was what if there are 10 entitites. ? Should should write configuration for all 10 entities as persistant Unit?
Pavan in one configuration we can mention multiple entity . this what the small poc .
Thanks for this video. One small query, if i have one more entity, say UserAddress, then how would i indicate this in the userconfig class?
We can setClasses in spring config class only as I can't remember the syntax now .
Love java tikki.. Great job
Typo javatechie 🤪, anyway thanks
Very nice explanation. Keep it up. Can't we keep both user and book repository interfaces in a single package instead of keeping in 2 different packages??
No not possible you will get exptception so we should follow the hierarchy
@@JavatechieThank You so much for your quick response 😊👍. may I know the reason....why it's not possible?
Awesome :) Exactly what I am looking for :) Thanks a lot With the reference of this I am able to integrate Spring boot with MySQL and Neo4j repositories at the same time.
Thanks for the video. Can you please make a video showing Springboot Application which will be deployed to Weblogic Server and connect to a JNDI datasource which is already created in weblogic server. Thanks in advance.
Mind-blowing. Can you make a tutorial on Mule
Great tutorial, it has helped me with one of the most important tasks I had to do.
Thanks for the video it's clear and useful for attending interviews
Bhai mast heichhi video ta
Bro. Please do a tutorial on Multi-tenancy in spring boot.
Thanks. Awesome and helpful
Good stuff! It seems like multiple schemas are also accessible with the same datasource only by putting different usernames. Thanks.
Not by username , you can say schema name
Hi sir good explanation, I am having a doubt I need to connect different schemas like user model has separate user schema and book model has separate book schema but both are in sql database , may i use this same configuration for this task and also should i create a separate separate packages for both "pls reply "
Yes you can follow the same only change the schema name in the URL in the application.properties
@@Javatechie Is there any way we can pass dynamic schema name rather than hardcoding in application.properties? let's say adding new schema for any new client enrolled to system. Thanks in advance!
Excellent, it really helped a lot.
Can you please give explanation for distributed transactions in spring microservices
Already i uploaded videos on it . check saga choreography
very helpful. thank you for video
Hi, Java Techi, Thank you for your video, I have a doubt I configured just like you with customer and order in two different DB and they are in one to many relation so when I set scan packages to com.example in config I'am able to create table but all tables are getting created in both DB how do I resolve that and make to create only one table in each DB
Very helpful Basant super
There you mentioned persistent entity as User And Book. What should I mention of I have more than 5 entities in that model packages.
Can you explain your complete scenario
@@Javatechie what is that persistent()?. There you mentioned entity name. But what about if we have multiple entities. How do I mention entities to that persistent.
Hi, Can we join two tables from different databses? Say employee is in oracle DB and Department in mysql DB.
I dont want to join inside service but want to join in repo using jpql.
I don't think we can do that but let me try and update you
I have one doubt?
I have two schemas
work -> customer_table
work2 -> customer_table
how can I call dynamically for different schemas?
I have one POJO class and one repository, how to change the table name dynamically.
Is both schema comes under same datasource?
@@Javatechie Yes, But we have to write two resources,
such as localhost:8080/work/customer1
and localhost:8080/work/customer2
@@saadmohammed6062 hi could you please elaborate bit more
With this 2 resource what you want to achieve
@@Javatechie I have two schemas in MySQL.
work1 and work2 each have a customer table.
How to call them dynamically at runtime.
thank you basant bhaiya
How to get all suggestions like you did when write classes name...?
I am also using Eclips
hi, you tightly coupled specific model/entity class .If we have more than one table/entity how to configure.?
How about using different database vendors? How would you set then multiple data bases? And database dialects?
very good! how about synchronisation between remote database and local db?
Hi John , didn't get you
@@Javatechie if i have a remote database and the same database is on localhost how to synchronise data between the remote and locahost!
@@artnum-rdc2015 am not sure but yes I did something like below
Take DB dump of your remote DB then import it in your local or just point your local DB to remote host .
So that both info can be on sync
@@Javatechie thanks you!
What about rollback Trx 1 on failure of Trx 2 in two different databases.
As far I understand we can't apply transaction on database level it should be Table level correct me if am wrong
Yes it's on table level. But what If I have to achieve a common/ global transaction on two diff tables...
Example: a distributed Trx mgmt, if there are two tables(say db1.table1 and db2.table2).. but using single Trx.
Like, if amount debited from db1.SBI table is successful. But credit in db2.hdfc table is failed. Then it should rollback. And SBI refund should be there.
so if you can demo using Hibernate Jpa and spring boot. It would be great.
@@pncabhsiek3311 I was also searching this pattarn but didn't succeed yet .I will update you once I do
@@Javatechie Hello dear, have you find any valuable information of the @pnc abhsiek question ?
Hi, I Need your advice here.
I’m building a web application which allows users to choose database (HK,UK,US) from the UI. Based on his selection of databases, I need to connect to respective DB instance in the spring boot + Jpa. Please share your thoughts!
We can do one thing
Based on UI input we will enable profile for region rather than environment
Let's se I chooses UK then from application we will setActiveprofile to UK so that corresponding datasource properties will be loaded .
Do let me know if you have any issue.
Very interesting concept
Thanks for this wonderful video..it's so helpful.. Awesome way of explaining.. thanks for your efforts for us learners... Sir I have one question... without @Entity class we can connect to data base..as I need to fire queries..having different table...how I can do that.. please suggest.. I don't want to create table in db ..but want to retrieve data from different table...in case..I don't need that that Entity class created..I made dto..to fetch the data....but..how I can do..can you please suggest
How I can connect to multiple database without..@Entity class creation..as we don't need any creations
Thanks man , Need to check this
@@Javatechie thanks sir..heads up to your efforts
Hi @Java Techie
Can we Datasource-1 for Multiple repositories?
Example:
I am having two Data Sources DS-1, DS-2
DS-1 contains Books, NewsPaper, Notes, Ref-Materials, etc tables,
Whereas DS-2 contains transactions of users.
It's Possible to connect DS-1 with Multiple Repo?
Yes we can
@JavaTechie Thanks for the quick reply. If possible can you share any demo projects or video for reference.
I have 2 schemas, and both are identical (they are just replicas), do I still need to maintain 2 different models and repositories? Or can the basePackages be the same?
we have created two data sources each data source has one table, what if we have more tables in each data source, how we create entities and how we bind to particular data source?
Hi, i am also using the same context. could you let me know how shall i handle the exception if any one of the db is down or table not exist?
Excellent!!
Why separate config for each entity ... can't it be done on single config class .. as in real time we will be having multiple entities so i don't think it's good practise to create separate config for each entity. Any suggestion on that
As there is two datasource we need to configure that in different config . As one of them we are making primary
So can't we configure more than 1 datasources in 1 config file only ... that's my question
No we can't Hitesh
Thanks a lot, you are the best!!!
Hi. how can I Sync the two databases? when database A is updated then Database B gets automatically updated?
Not sure will check and update
@@Javatechie that would be gladly appreciated, thank you.
Thank you for this video, but how i can use three data source ? the anotation @Primary don't work if we have three data source
Hi Tarik , thank you
Yes it will work with N number of DB , but at same time I don't think we can use it
Hello Basant, how do we connect more than one table ? could you please answer my question
hi sir,
its more informative can u please share us for same as for NO SQL databases
I don't think we need datasource configuration for NoSQL DB
But I will show one demo with multiple NoSQL config in single application
@@Javatechie thanks for your response....
always your super sir
Hi, I have downloaded the code from git and tried to execute. Its creating both the tables in one schema only. Any idea why so? I also have to add few properties in POM.xml to make it work
Best 😘
Nice video ... Can we able to join two entities from different datasources and fetching selected columns from both the entities ? is it possible ?
Eg : joining User with Book with foreign key and fetching username,bookname after joining.
This is not valid scenario at all because wrong design
@@Javatechie ..sorry , i meant for different schemas in oracle from the same databse... is it possible ?
Yes absolutely possible , you can just follow this approach also please refer my onetomany association mapping tutorial
@@Javatechie Thank you ❤️ .
If I have 100+ tables in both the DB's then I have to make 100+ config classes for both DB ?
Is there any smart way of doing this ?
Configuration not required for table it need for database
Hi, really nice video.
Is this also the way to achieve dynamic data source routing?
If in the payload we getting which database we require to query/update.
Will this be an optimum way to do it?
Akshya that's why we created two repository right ?
Based on your payload choose the appropriate repository and populate the data
These are only fr specific 2 domain class user and book..if in case we need to use multiple domain class...then how can we maintain in package basis
Lombok is not working in my Eclipse ide although I have mentioned in dependencies sir. could you please tell me what may be the problem
You need to configure it in your IDE , adding dependency is not enough
Please go through my blog and search you will get steps to configure Lombok
Can we do Master slave data source configuration similar way for one is for write and other is for read
I have multiple entities in the same package. What should I do?
Thank you so much sir
Amazing 🙏
Any suggestions on how to connect to Postgres and MongoDB?
can you please instruct me how to set different Hikari properties for the different database
while adding Hikari config I am getting : HikariPool-1 - dataSource or dataSourceClassName or jdbcUrl is required.
Getting error: Parameter 0 of method studentEntityManagerFactory in com.school.config.StudentsDataSourceConfig required a bean of type 'org.springframework.boot.orm.jpa.EntityManagerFactoryBuilder' that could not be found.
Action:
Consider defining a bean of type 'org.springframework.boot.orm.jpa.EntityManagerFactoryBuilder' in your configuration.
找了很多教程都不行,这个ok,thanks!
great tutorial but where the oracle configration
Great JOb Basant BHi :)
Thanks!
how to connect h2 and my sql database in one spring boot application
Weather the same method will work ?
Did you tried it before ?
Are you getting any issue?
@@Javatechie till now not tried but in my project requirement i have to do it . So was asking weather this method will work for h2 database also .
@@Javatechie i have to integrate h2 and sql database in one application weather it will work ?
It will work in that case you don't need to configure this spring config class only you need to add in properties file .
Thank you, so much.
What is the persistence unit and if I have 20 model class in package
Can I work like this?
Yes you can no issues on that
U give input like user and book to the value of the persistence unit
So is it means name of the model class
If it is yes how can I give all model for that..
Dude please watch from begin
I mentioned there as I don't have multiple databases install in my machine am giving example using two different entity
Let's say I have Oracle and MySQL
Oracle db I can configure N number of entity similarly for Oracle I can configure N number of entity
Because in one database we xan have multiple entity
If you have multiple DB in your machine then please try configure it and see
I Just configure 2 schema to show demo how to configure in case data source .
It works!!!!!!
Great
I'm getting lots of exceptions - dependencies are missing. can you share the POM.xml for this application.
GitHub link mentioned in video description
Great! Thanks for sharing.
Can we migrate data from mysql to psql or psql to mysql.
Ofcourse we can
bro,can you do video on how to configure multiple datasources using JpaBaseConfiguration
Does it work the same if i have to MongoDB databases?
While configuring NoSQL DB (mongo,cassandra,neo4j) we are not giving datasource details
@@Javatechie Rest all is exactly same? Can i follow this tutorial and set up my mongodb connection successfully?
@@akshatpandey2256 yes you can , already I created one repo with MySQL and mongo .
@@Javatechie @Akshat Pandey, could you please send share your code how u configured mysql and mongo in single application. I'm facing problem with mysql+mongodb databases combination
@@bhanubill please refer below POC github.com/Java-Gyan-Mantra/multiple-db-connection
Use a separate DB Config for each domains and create separate EntityManagerFactoryBean using EntityManagerFactoryBuilder (as shown @ 15.36)
Yes it's not straight forward
Suppose there are two entities for a database and two entities for another...how to cater that
I want to update if there are any differences in data.is that possible??
You want to update record ? If any field changed right ?
So first you need to get existing object from dB then set the new value to object next save it
@@Javatechiethanks for the reply. there are 2 lakhs record in both tables. I have to compare every row right?if so Is jpa is the best way?
No for this jpa is not fisible solution to use .
You need to to customize your query.looks interesting scenario
Let me think if I can help you
How to add schema dynamically to DataSourceBuilder ??
Iam using Oracle it is throwing exception like jdbcurl is required with driver class name can u plz help me thanks in advance
Didn't you configure in your application.properies file
@@Javatechie I have used what u given everything I followed can plz help showing jdbc required driver class like that showing
For Oracle you need to configure valid
Datasource information in your application.properies am explained with two MySQL instance only
@@Javatechie can u tell those configurations sir
I have changed related to Oracle but showing driver class required jdbc url like that where I should change can u tell
How will add 3 DB, primary will be only one?
Thank you.
Can any one help .if i want create multiple table at time in multiple data source. then i how to use persistUnit.
Raj I will check and update
Cooolll
I am getting error executing ddl "alter table" via JDBC statement
nice tutorial