NOTE: This tutorial is using outdated as it's using Spring Boot 2, here is a link to the newest tutorial using Spring Boot 3 and deployment using Kubernetes - ruclips.net/p/PLSVW22jAG8pDeU80nDzbUgr8qqzEMppi8&si=01qr9Fw0O8S-0Nbw
Hi Sai @ProgrammingTechie When w will be launching updated version of this tutorial using spring 3 and also please add jwt tokens add one more service like user service that would be very helpful bcz of in springboot 3 majority was changes in jwt and tokens
I don't know about Notification service that got publish event from order service using ApplicationEventPublisher why not using kafka publisher and why you use @PostConstruct in configuration class
I have been searching, reading and passing through courses, videos and blogs on microservices and architectures for the past week - this is by far the best tutorial for now which I have came across. Good job and thank you for the quality content!
Tbh the best tutorial found online. Your skills in explaining, presenting all of the key concepts, good practices and steps are amazing. You've earn my respect. Love from Romania
Camaba KKKK Você explica muito bem. EU tinha comprado um curso na Udemy sobre microsserviços, mas eu não gostei da didática do professor. Pedi reembolso e achei essa maravilha no youtube HAHAHA Parabéns pela playlist criada. Você com certeza ajudou muitas pessoas.
A very ambitious project and a comprehensive presentation too. From 2 different database services, where the first is a docker image and the next a physical one, stateful and stateless services, inter service communication, Junit and integration testing, pre-configuring data in the tables and dto and much more; all in Part-1 of the video itself. That would take a large volume book to present to cover. And your clarity of presentation is amazing. Could all these be accomplished in just 95 minutes. I am in awe! Thanks a lot!!👋👋
I have done the playlist from this channel for Microservices architecture, and it immensely helped me in clearing my design round in the interview and I successfully able to clear the interview. Thank you so much my dear for the amazing content and efforts. Love🤗💝
@@ProgrammingTechie I'm having a problem with Write Integration Tests in Product-Service. Can you help me? I sent the message through your Facebook Page.
Very usefull video but i think u forgot a little point that can make confused a programmer who hasn't experience so much about spring. The point is that you had created a db named "order-service" in mysql before running the order service but if i havn't missed you didn't show it in the video but you showed the right way of it while running the inventory-service. Summary: You should have created the database in mysql management interface with the same name in application.properties before running the API or you will be having an annoying error which isn't easy to solve without knowing this ))
Thank you 🙏 Despite knowing all these subject, still we love to hear from you bcoz of your product quality, & also bcoz we often get to learn something new from u😁
What a wonderful tutorial! Key concepts from A to Z levering high level knowledge to all of us. Thank you very much for sharing your knowledge, great teacher!
Just a hint: you don't need to create new package and then new class inside it. You can name your class packagename.Classname and the package will be create automatically. Quicker
Those who are facing problem recognizing inventory or order service module in intellij try following steps: go to File->project structure->click on modules tab on the left side-->click on the plus icon-->click Import Module --> and select module from the popup and hit OK. If your submodule is not visible then make sure you extracted in the right folder or reload project from disk. Hit like if it solve your problem so others can see it. I wasted 1 hour on this issue AND thanks for this course.
Instead of making ddl-auto to create-drop you can simply put condition in bean for Inventory service to check if table already has data using findAll() and if it's null only then insert data into table. That way you don't have to make any changes to properties file.
Thank you so much for the lecture. Btw I used the docker image for mongo and used the properties like below: spring: application: name: product-service data: mongodb: auto-index-creation: 'true' authentication-database: admin database: product-service username: root password: root port: '27017' host: localhost instead of defining uri. That's why I'm little confused especially in the integration test(because you are using uri there but i don't have). Still it is going well please keep going. Appreciated...
This is too good do add kubernates and docker here to deploy to gke and then I do not have to buy any other courses or visit anyone other tech coding channel
Hey!! This is great, thanks a lot! I just started studying microservices. Of course, there is a lot of theory... Having a more practical approach it sure helps a lot! Thanks
Sai,I am getting this error "com.mongodb.MongoSocketReadException: Prematurely reached end of stream" while running tests using testcontainer (41:27 timestamp in video).Can you please help how we can fix it as I can see few people mentioned same error below comments.I followed the steps which you have mentioned in the video. Installed Mongo compass and docker is also up and running. Also getting this error also "java.io.IOException: java.nio.channels.ClosedChannelException" -Not sure if both errors are interlinked
Can someone explain why in Product Controller we need to get product body using productRequest? 15:20 Can't we just do this way public ResponseEntity addproduct(@RequestBody Product p){ Product p1=prorepo.savePro(p); return ResponseEntity.ok(p); }...I am a newbie so plz dont mind if the question is dumb.
You didn't explain that we need to have running our Docker instance in order to be able to use TestContainers, and other things that you take for granted, I guess that we should have experience on that kind of subtleties.
This is more like look at what I do and how I do it than explaining with the intention of giving the audience a chance to learn. It seems the only way is to play the video at half speed.
Great video with in depth explanation of concepts. If anyone can help me it would be great, I am actually facing an issue where on compiling the project the tomcat port and connection is not showing up the messages like it did in the video at 22:09 minute. I have downloaded the plugins, and tested the connection.
1:28:48 I recently downloaded my projects from Spring Initializers. While it gave me spring-boot-maven-plugin .. there was no compiler plugin in the code generated by initializr. So as it wasn't there in single module projects, i'm not adding it in multi module project's root pom.
Hi Sir , Firstly Thank you for your great work !! As a Beginner It is helping alot !! Can you also please share the Database scripts for creating the Table structure as well . So that it would be easy to execute and run the application . Like Order service , Inventory service scripts.
Hi @Programming Techie, Thank you for the great content, i have some questions please: how many parts gonna be in this series ? when you gonna release the next video ? Can't wait to see how you gonna implement spring cloud gateway with Oauth 2 capabilities.
adding the inventory serivce to the parent you might not get the application as runnable class. to fix that go the the "project structure -> modules -> click on + button -> select the inventory-service" this will do the job
1:19:25 I get an error like: Error creating bean with name 'inventoryController' It was all problem with InventoryRepository as in Inventory service implementation section of this video Optional data type is used for InventoryRepository method called findBySkuCode. But, once again, on github page, findBySkuCode is changed to findBySkuCodeIn and implementation is also changed with usage of List. Anyway, everything worked for me, when I followed the github. But, once again you have to be smart on where to follow on github. Thanks for the video.
I have just started the series, definitely enjoying your content. Thank you. Quick question: At 43:13, I was expecting that the size of the products should be 2 because you already created an object before. Do the mock post request to create object does not actually creates the product, or did you deleted it previously?
Test containers are using db from the docker image which is online. But other services are using Mongodb from the system(computer). That’s why used 1 as it was empty from the beginning.
NOTE: This tutorial is using outdated as it's using Spring Boot 2, here is a link to the newest tutorial using Spring Boot 3 and deployment using Kubernetes -
ruclips.net/p/PLSVW22jAG8pDeU80nDzbUgr8qqzEMppi8&si=01qr9Fw0O8S-0Nbw
Thank you for update i was trying to figure out testcontainer but seems like they have changed too looking forward for updated video
Hi Sai @ProgrammingTechie
When w will be launching updated version of this tutorial using spring 3 and also please add jwt tokens add one more service like user service that would be very helpful bcz of in springboot 3 majority was changes in jwt and tokens
What is the name of the theme in ur intillia
Hi ,
Could you please tell when will the updated version of the course will come out. please add jwt tokens
I don't know about Notification service that got publish event from order service using ApplicationEventPublisher why not using kafka publisher and why you use @PostConstruct in configuration class
I have been searching, reading and passing through courses, videos and blogs on microservices and architectures for the past week - this is by far the best tutorial for now which I have came across. Good job and thank you for the quality content!
Tbh the best tutorial found online. Your skills in explaining, presenting all of the key concepts, good practices and steps are amazing.
You've earn my respect. Love from Romania
I am not someone who writes a comment regularly or likes a video. But I have to say about this video: well job done!
Thank you
Camaba KKKK Você explica muito bem. EU tinha comprado um curso na Udemy sobre microsserviços, mas eu não gostei da didática do professor. Pedi reembolso e achei essa maravilha no youtube HAHAHA Parabéns pela playlist criada. Você com certeza ajudou muitas pessoas.
谢谢!
A very ambitious project and a comprehensive presentation too. From 2 different database services, where the first is a docker image and the next a physical one, stateful and stateless services, inter service communication, Junit and integration testing, pre-configuring data in the tables and dto and much more; all in Part-1 of the video itself. That would take a large volume book to present to cover. And your clarity of presentation is amazing. Could all these be accomplished in just 95 minutes. I am in awe! Thanks a lot!!👋👋
Thanks!
So much detail never seen video like before, Hats for the patience and teaching.
Easily the best tutorial. Cheers from USA. Thank you!
I have done the playlist from this channel for Microservices architecture, and it immensely helped me in clearing my design round in the interview and I successfully able to clear the interview. Thank you so much my dear for the amazing content and efforts. Love🤗💝
Wow that's great to hear 👍
@@ProgrammingTechie I'm having a problem with Write Integration Tests in Product-Service. Can you help me? I sent the message through your Facebook Page.
@@BryanPham027 Send me an email at programmingtechie@gmail.com
@@ProgrammingTechie Thank you. I sent the email
@dineshreddy1822 Have you put the same project in ur resume please reply 🙏
Bro this is our exact stack, like the exact application. Thanks I learned a lot and helped me progress in my job
Hope this would be one of my favorite channels. Great stuff. Request you to publish more videos
Hii Bro .. I m getting Could not find a valid Docker environment after writing integration test and running test please help
I, too, hope so. I found this playlist and channel just now.
@@ayushkumarsone4401
Same here, it's saying could not find valid docker environment after running the code
Very usefull video but i think u forgot a little point that can make confused a programmer who hasn't experience so much about spring.
The point is that you had created a db named "order-service" in mysql before running the order service but if i havn't missed you didn't show it in the video but you showed the right way of it while running the inventory-service.
Summary: You should have created the database in mysql management interface with the same name in application.properties before running the API or you will be having an annoying error which isn't easy to solve without knowing this ))
teşekkürler
Best tutorial of Micro Service found till now
I appreciate the course and I shared it across all my social media outlets. Thank you for the free content. 🙏🏾
Thank you 🙏 Despite knowing all these subject, still we love to hear from you bcoz of your product quality, & also bcoz we often get to learn something new from u😁
Thank you. This is going to be in-depth tutorial than the previous series 🙂
I always learn new thing on each video. very helpful and impactful.
What a wonderful tutorial! Key concepts from A to Z levering high level knowledge to all of us. Thank you very much for sharing your knowledge, great teacher!
Just a hint: you don't need to create new package and then new class inside it. You can name your class packagename.Classname and the package will be create automatically. Quicker
Thanks for the hint
Those who are facing problem recognizing inventory or order service module in intellij try following steps:
go to File->project structure->click on modules tab on the left side-->click on the plus icon-->click Import Module --> and select module from the popup and hit OK.
If your submodule is not visible then make sure you extracted in the right folder or reload project from disk.
Hit like if it solve your problem so others can see it. I wasted 1 hour on this issue
AND thanks for this course.
Thanks for your help, it happened to me :)
One of the best content ever. Highly practical. Thanks man. Really appricated.
Thank you very much! Been learning spring but not certain about putting it together so simple.
Fantastic walk through into key concepts in microservices touching the most important points and straight to the point. Keep up!
Thanks. The video is very helpful for me. Hope to see part 2 soon.
Woah !! Much awaited . Thank you for all the efforts sir 🙂 Really looking forward to this learning curve
Thanks man!!! 😊
Just started learning about Microservices and found ur channel. It's really helpful.
Explanation technique is very nice.. and all the small thing which you have used .. explained nicely 🙏
Thanks, bro, nice explanation waiting for the second part of the video
superb.. this is what I was looking for.. thanks a lot sir g
You channel has been amazing. I have learnt a lot from this.
Instead of making ddl-auto to create-drop you can simply put condition in bean for Inventory service to check if table already has data using findAll() and if it's null only then insert data into table. That way you don't have to make any changes to properties file.
Thank you very much from Russia! Go on brother
Awesome 🙏 Thanks to support with live project
wow ... this is one awesome tutorial ... fantastic and much much appreciated. 👍 Thank you very much.
Simply superb... 👏
Detailed yet crisp presentation.
Thank you so much for the lecture. Btw I used the docker image for mongo and used the properties like below:
spring:
application:
name: product-service
data:
mongodb:
auto-index-creation: 'true'
authentication-database: admin
database: product-service
username: root
password: root
port: '27017'
host: localhost
instead of defining uri. That's why I'm little confused especially in the integration test(because you are using uri there but i don't have). Still it is going well please keep going. Appreciated...
You can use both ways, just make sure you don't MIX them lol
Thanks bro, I learned a lot. Learning is a series and Series is also a learning. 😀
Nice presentation. Learned a lot here. Thanks
Thanks for this wonderfull tutorial. This helped me a lot.
I extremely appriciate What You have done, Great. From King Vietnam
Very useful tutorial, helped a lot! Keep on filming these wonderful videos!!!
Really nice I was looking for the same tutorial thanks a lot
This is too good do add kubernates and docker here to deploy to gke and then I do not have to buy any other courses or visit anyone other tech coding channel
Exactly what I was looking for, great content 🙌
At 57:30 it shoud be called mapToEntity rather than mapToDto. Excellent tutorial.
This is a gem. Thank you so much!
Excellent sir. Thank you
This videos is so helpful to me .Pls where is the kubernetes deployments tutorial ?
For Orders, you could have used UUID for the Primary key (especially when you're using microservices), and for DTO could have used ModelMapper.
Thanks for covering docker Nd kubernetes please make series I'll do along with you
Thank you for your great efforts, really good tutorial
That's a really insane content. Thank you so much
Thanks for the amazing content..!!
Perfect. Keep up the excelent work sir.
Thank you so much for the multi-module section❤
That a good content man. Keep it up !
Excellent One. Thanks for the video.
Thank you!Nice project on Micro services .
An effort much appreciated, Hats off @ProgrammingTechie
Awesome tutorial thanks
Thank you for this amazing content.
Hi Can you implement a CICD piple line to this at the end? Thank you for implementing all the technologies your tutorials are awesome.
Fantastic video. Really appreciated. for the work
Merci bcp c'est super bien expliquer 🙏🙏
thanks sir this is the great one..
Hey!! This is great, thanks a lot!
I just started studying microservices.
Of course, there is a lot of theory... Having a more practical approach it sure helps a lot!
Thanks
This is really osm the way he is delivering the content superb his communication is super se uper we will follow u dear ...stay blessed 👏 Subscribed
Sai,I am getting this error "com.mongodb.MongoSocketReadException: Prematurely reached end of stream" while running tests using testcontainer (41:27 timestamp in video).Can you please help how we can fix it as I can see few people mentioned same error below comments.I followed the steps which you have mentioned in the video. Installed Mongo compass and docker is also up and running. Also getting this error also "java.io.IOException: java.nio.channels.ClosedChannelException" -Not sure if both errors are interlinked
I still didn't check this issue, will fix it as part of the final video part
Have you resolved the problem please ?
Can someone explain why in Product Controller we need to get product body using productRequest? 15:20 Can't we just do this way public ResponseEntity addproduct(@RequestBody Product p){
Product p1=prorepo.savePro(p);
return ResponseEntity.ok(p);
}...I am a newbie so plz dont mind if the question is dumb.
You didn't explain that we need to have running our Docker instance in order to be able to use TestContainers, and other things that you take for granted, I guess that we should have experience on that kind of subtleties.
Nice presentation, to the point . thanks a lot .
Waiting for part 2 . Already subscribed.
Greate explanation, can. you please share which theme/color scheme you are using in IntelliJ and how to configure this
Would be nice to have a chat feature too for learning the web Sockets, but overall impressive stuff.
Excellent!
Nice tutorial, many thanks
This is more like look at what I do and how I do it than explaining with the intention of giving the audience a chance to learn.
It seems the only way is to play the video at half speed.
Thank you for this!
Can you please explain how token relay works in microservices?
Thank you. This is great.
13:26 Is there any specific reason for choosing constructor injection instead of @Autowired in this case? Or both are same?
thank you bro, it is very good.
Great video with in depth explanation of concepts. If anyone can help me it would be great, I am actually facing an issue where on compiling the project the tomcat port and connection is not showing up the messages like it did in the video at 22:09 minute. I have downloaded the plugins, and tested the connection.
thank you, nice video
1:28:48 I recently downloaded my projects from Spring Initializers. While it gave me spring-boot-maven-plugin .. there was no compiler plugin in the code generated by initializr. So as it wasn't there in single module projects, i'm not adding it in multi module project's root pom.
Hi Sir , Firstly Thank you for your great work !! As a Beginner It is helping alot !! Can you also please share the Database scripts for creating the Table structure as well . So that it would be easy to execute and run the application . Like Order service , Inventory service scripts.
Hi @Programming Techie, Thank you for the great content, i have some questions please:
how many parts gonna be in this series ?
when you gonna release the next video ?
Can't wait to see how you gonna implement spring cloud gateway with Oauth 2 capabilities.
This is going to be 8-9 part series, next video is going to be released on Saturday.
@@ProgrammingTechie Are you sleeping?
adding the inventory serivce to the parent you might not get the application as runnable class. to fix that go the the "project structure -> modules -> click on + button -> select the inventory-service" this will do the job
1:19:25 I get an error like: Error creating bean with name 'inventoryController'
It was all problem with InventoryRepository as in Inventory service implementation section of this video Optional data type is used for InventoryRepository method called findBySkuCode. But, once again, on github page, findBySkuCode is changed to findBySkuCodeIn and implementation is also changed with usage of List.
Anyway, everything worked for me, when I followed the github. But, once again you have to be smart on where to follow on github.
Thanks for the video.
thank you very much
Hi,If Iam using Lombok in my project it is not supporting ,it is throwing an error what might be the reason can you tell me
install lombok in your IDE
@abhishekjain9103 installed but same problem
Why are you using the required args constructor annotation instead of just using the Autowired annotation?
Please make some videos on spring reactive
Thanks big bro
Excellent. Thank you so much
I have just started the series, definitely enjoying your content. Thank you.
Quick question: At 43:13, I was expecting that the size of the products should be 2 because you already created an object before. Do the mock post request to create object does not actually creates the product, or did you deleted it previously?
Test containers are using db from the docker image which is online. But other services are using Mongodb from the system(computer). That’s why used 1 as it was empty from the beginning.
Thank you :)
All communication between between inventory and order service then what is the use of product service can you explain sir
How to configure intilij idea to show compile error while missing autoconfigiremvc , when we added mockmvc ? Please explain setting for that
Hello, @Testcontainers annotation is not working. Could you please help with the solution?