Spring Boot Microservices Project Example - Part 1 | Building Services

  Рет қаралды 403,213

Programming Techie

Programming Techie

Күн бұрын

Source Code
github.com/SaiUpadhyayula/spr...
00:00 - Introduction
02:38 - Solution Architecture of Microservices
05:16 - Logical Architecture of Services
06:17 - Your First Microservice
07:39 - Implement Product Service
22:07 - Manual Testing through Postman
23:24 - Implement Automated Tests
24:19 - Test Containers
29:28 - Write Integration Tests
44:50 - Generate Order Service
47:19 - Implement Order Service
01:03:35 - Test Order Service
01:05:58 - Generate Inventory Service
01:06:50 - Implement Inventory Service
01:19:44 - Migrate to Maven Multi-Module Project
01:32:45 - Bugfix in Inventory Service
⭐️⭐️You can check out other Full Stack Project Oriented Tutorials in my Channel ⭐️⭐️
Spring Data MongoDB Tutorial: • Spring Boot Testing Tu...
Spring Boot Testing Crash Course Tutorial: • Spring Boot Testing Tu...
⭐️⭐️ You can follow me on Social Media through the below Links⭐️⭐️
Twitter: / sai90_u
Blog: programmingtechie.com/
Dev.to: dev.to/saiupadhyayula
Facebook Page: / programmingtechie

Пікірлер: 321
@ProgrammingTechie
@ProgrammingTechie 3 ай бұрын
NOTE: This tutorial is using outdated as it's using Spring Boot 2, I am working on an update for this tutorial. Please refer to the github repo, whenever you are facing any issue with the dependency or compilation errors: github.com/SaiUpadhyayula/spring-boot-microservices
@Garchomp10501
@Garchomp10501 3 ай бұрын
Thank you for update i was trying to figure out testcontainer but seems like they have changed too looking forward for updated video
@prasadnaik2701
@prasadnaik2701 3 ай бұрын
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
@liongh8994
@liongh8994 28 күн бұрын
What is the name of the theme in ur intillia
@arunabhtiwari4771
@arunabhtiwari4771 28 күн бұрын
Hi , Could you please tell when will the updated version of the course will come out. please add jwt tokens
@wecode9424
@wecode9424 Жыл бұрын
Fantastic walk through into key concepts in microservices touching the most important points and straight to the point. Keep up!
@jaymartinez311
@jaymartinez311 Жыл бұрын
I appreciate the course and I shared it across all my social media outlets. Thank you for the free content. 🙏🏾
@shwetabhat9981
@shwetabhat9981 2 жыл бұрын
Woah !! Much awaited . Thank you for all the efforts sir 🙂 Really looking forward to this learning curve
@fvagvTV
@fvagvTV 4 ай бұрын
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!
@cosmin_anton3995
@cosmin_anton3995 4 ай бұрын
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
@mostainahmed3125
@mostainahmed3125 Жыл бұрын
One of the best content ever. Highly practical. Thanks man. Really appricated.
@peterbarts8351
@peterbarts8351 6 ай бұрын
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!
@maneshipocrates2264
@maneshipocrates2264 2 жыл бұрын
Thank you very much! Been learning spring but not certain about putting it together so simple.
@abhishekgowlikar
@abhishekgowlikar 4 ай бұрын
So much detail never seen video like before, Hats for the patience and teaching.
@vivianfreitas9726
@vivianfreitas9726 2 ай бұрын
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.
@jimbo5437
@jimbo5437 4 ай бұрын
Easily the best tutorial. Cheers from USA. Thank you!
@kantanaik1822
@kantanaik1822 2 жыл бұрын
Thanks man!!! 😊 Just started learning about Microservices and found ur channel. It's really helpful.
@xuaniennguyen6573
@xuaniennguyen6573 2 жыл бұрын
Thanks. The video is very helpful for me. Hope to see part 2 soon.
@danicazdravkovic8127
@danicazdravkovic8127 Жыл бұрын
Very useful tutorial, helped a lot! Keep on filming these wonderful videos!!!
@kandaswamygopinath6490
@kandaswamygopinath6490 Жыл бұрын
You channel has been amazing. I have learnt a lot from this.
@beaumontmuni4294
@beaumontmuni4294 Жыл бұрын
wow ... this is one awesome tutorial ... fantastic and much much appreciated. 👍 Thank you very much.
@utkarshk2
@utkarshk2 Жыл бұрын
Nice presentation, to the point . thanks a lot . Waiting for part 2 . Already subscribed.
@anjanik7053
@anjanik7053 Жыл бұрын
Explanation technique is very nice.. and all the small thing which you have used .. explained nicely 🙏
@Siva_n1505
@Siva_n1505 Жыл бұрын
Hope this would be one of my favorite channels. Great stuff. Request you to publish more videos
@ayushkumarsone4401
@ayushkumarsone4401 Жыл бұрын
Hii Bro .. I m getting Could not find a valid Docker environment after writing integration test and running test please help
@rishiraj2548
@rishiraj2548 Жыл бұрын
I, too, hope so. I found this playlist and channel just now.
@ajumobimunira3999
@ajumobimunira3999 9 ай бұрын
​@@ayushkumarsone4401 Same here, it's saying could not find valid docker environment after running the code
@TechJunc
@TechJunc Жыл бұрын
I am not someone who writes a comment regularly or likes a video. But I have to say about this video: well job done!
@ProgrammingTechie
@ProgrammingTechie Жыл бұрын
Thank you
@huseyinturkmen06
@huseyinturkmen06 Жыл бұрын
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 ))
@muadgra3545
@muadgra3545 Жыл бұрын
teşekkürler
@sriplano748
@sriplano748 Жыл бұрын
Detailed yet crisp presentation.
@dakshdeepak7732
@dakshdeepak7732 Жыл бұрын
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
@dhineshr8918
@dhineshr8918 2 жыл бұрын
Thanks, bro, nice explanation waiting for the second part of the video
@aadiraj6126
@aadiraj6126 2 жыл бұрын
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😁
@ProgrammingTechie
@ProgrammingTechie 2 жыл бұрын
Thank you. This is going to be in-depth tutorial than the previous series 🙂
@codegeek8256
@codegeek8256 2 жыл бұрын
I always learn new thing on each video. very helpful and impactful.
@firozgg7524
@firozgg7524 Жыл бұрын
Thank you so much for the multi-module section❤
@ToiBroCode
@ToiBroCode 7 ай бұрын
Thanks bro, I learned a lot. Learning is a series and Series is also a learning. 😀
@augustomartins2008
@augustomartins2008 Жыл бұрын
Perfect. Keep up the excelent work sir.
@dineshreddy1822
@dineshreddy1822 Жыл бұрын
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
@ProgrammingTechie Жыл бұрын
Wow that's great to hear 👍
@nh0zheo413
@nh0zheo413 Жыл бұрын
@@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.
@ProgrammingTechie
@ProgrammingTechie Жыл бұрын
​@@nh0zheo413 Send me an email at programmingtechie@gmail.com
@nh0zheo413
@nh0zheo413 Жыл бұрын
@@ProgrammingTechie Thank you. I sent the email
@pawanverma2575
@pawanverma2575 Жыл бұрын
@dineshreddy1822 Have you put the same project in ur resume please reply 🙏
@surendrasahni8725
@surendrasahni8725 Жыл бұрын
Awesome 🙏 Thanks to support with live project
@saketsourav31
@saketsourav31 Ай бұрын
Exactly what I was looking for, great content 🙌
@AmareshHD
@AmareshHD 2 жыл бұрын
Really nice I was looking for the same tutorial thanks a lot
@victorcreed8989
@victorcreed8989 9 ай бұрын
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.
@nandkumarjawale9919
@nandkumarjawale9919 Жыл бұрын
This is a gem. Thank you so much!
@sajeeshkumar4510
@sajeeshkumar4510 Жыл бұрын
Nice presentation. Learned a lot here. Thanks
@tutosolve
@tutosolve 3 ай бұрын
I extremely appriciate What You have done, Great. From King Vietnam
@Yourmothersmuff
@Yourmothersmuff Жыл бұрын
Hi Can you implement a CICD piple line to this at the end? Thank you for implementing all the technologies your tutorials are awesome.
@IvanRandomDude
@IvanRandomDude 2 жыл бұрын
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
@ProgrammingTechie
@ProgrammingTechie 2 жыл бұрын
Thanks for the hint
@shivambaghel9668
@shivambaghel9668 8 күн бұрын
Best tutorial of Micro Service found till now
@tippabatinisantoshkumar2931
@tippabatinisantoshkumar2931 Жыл бұрын
Simply superb... 👏
@ChandlerBing11
@ChandlerBing11 2 жыл бұрын
That's a really insane content. Thank you so much
@tomasagustinpadilla3227
@tomasagustinpadilla3227 2 жыл бұрын
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
@ghislaincabrel3880
@ghislaincabrel3880 2 жыл бұрын
Thank you for this amazing content.
@senthilmurugangsm
@senthilmurugangsm Жыл бұрын
Thanks for the clear and detailed real time project. What's the benefit of using RequiredArgsConstructor instead of Autowired annotation to inject repo class?
@neerajrajak6150
@neerajrajak6150 4 ай бұрын
Thanks for this wonderfull tutorial. This helped me a lot.
@krishnasmusicchart4897
@krishnasmusicchart4897 Жыл бұрын
Excellent sir. Thank you
@AshbelReinhard
@AshbelReinhard 2 жыл бұрын
An effort much appreciated, Hats off @ProgrammingTechie
@aviator9728
@aviator9728 2 жыл бұрын
Thanks for covering docker Nd kubernetes please make series I'll do along with you
@user-dt9nn6ri9s
@user-dt9nn6ri9s 15 күн бұрын
Thank you very much from Russia! Go on brother
@anithak6650
@anithak6650 Жыл бұрын
Thank you!Nice project on Micro services .
@coderkamath7394
@coderkamath7394 Жыл бұрын
Would be nice to have a chat feature too for learning the web Sockets, but overall impressive stuff.
@vaishnavepranav7394
@vaishnavepranav7394 9 ай бұрын
Excellent One. Thanks for the video.
@arivan-amin
@arivan-amin 4 ай бұрын
Thank you for your great efforts, really good tutorial
@SampathkumarP
@SampathkumarP 9 ай бұрын
Fantastic video. Really appreciated. for the work
@tarunsoni6971
@tarunsoni6971 Жыл бұрын
Great tutorial, One thing which I noticed right after 1hr in the video that when you were creating repository and service references in the Service and Controller classes you wrote it like you were going to use the @Autowired annotation there but instead you went with a constructor injection which means reference will be initialized at construction time but then didn't use the annotation which left me wondering that now spring won't be managing that object neither creating and nor destroying and won't inject and inside that constructor which will be created by lombok will have a new key word in it to initialize the object?
@samirpanchal5883
@samirpanchal5883 Жыл бұрын
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.
@NodyRiskyPratomo
@NodyRiskyPratomo Жыл бұрын
Thanks for your help, it happened to me :)
@dominus360
@dominus360 2 жыл бұрын
That a good content man. Keep it up !
@umasg8621
@umasg8621 Жыл бұрын
Thanks for the amazing content..!!
@user-ne1be6td2y
@user-ne1be6td2y 2 жыл бұрын
Thank you for this!
@samahmahdi5511
@samahmahdi5511 7 ай бұрын
Nice tutorial, many thanks
@udhayachandhar4770
@udhayachandhar4770 Жыл бұрын
Excellent. Thank you so much
@SuperAkifraza
@SuperAkifraza Жыл бұрын
Awesome tutorial thanks
@deanclancy6448
@deanclancy6448 2 жыл бұрын
Thank you. This is great.
@pr.badritijane1316
@pr.badritijane1316 Жыл бұрын
Merci bcp c'est super bien expliquer 🙏🙏
@paragsarkar6327
@paragsarkar6327 2 жыл бұрын
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
@tabrezshaikh7705
@tabrezshaikh7705 2 жыл бұрын
Excellent!
@Satishkumar-rx7oy
@Satishkumar-rx7oy 2 жыл бұрын
thanks sir this is the great one..
@turgaycabalak9712
@turgaycabalak9712 2 жыл бұрын
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...
@IvanRandomDude
@IvanRandomDude 2 жыл бұрын
You can use both ways, just make sure you don't MIX them lol
@kennedydre8074
@kennedydre8074 Жыл бұрын
Also, is there some way to run validation on the request object in the API layer (I would like to fail early)? Something like Joi but for Java? This is also to ensure that all required fields are passed.
@ascar66
@ascar66 2 жыл бұрын
thank you, nice video
@codegeek8256
@codegeek8256 2 жыл бұрын
Hi @Programming Techie i hope you are well. Thanks for this part 2 series, I can already see it is going to be exciting. Please introduce docker and kubernetes so that we can at a go orchestrate the services as they grow. And Please use Kafka this time around. I wish we could also add a UI service. Thanks very much. Your work is helpful and Impactful, Looking forward to what is coming.
@ProgrammingTechie
@ProgrammingTechie 2 жыл бұрын
Hi, there is no plan to add UI also this time, but I am going to use docker and Kubernetes in this tutorial.
@ysairamkrishna6936
@ysairamkrishna6936 2 жыл бұрын
Thanks for the video
@antonvovk8867
@antonvovk8867 Ай бұрын
Thanks for this wonderful content! Could you please advice why Ide does not allow me to Autowire Mock MVC and ObjectMapper in my ProductService tests? Autoriwing works fine for Product repository but not for the above ( Test cannot not run because of this I assume.
@sebastiansilvavidal452
@sebastiansilvavidal452 Жыл бұрын
hi, in the minute 14:00 when you add the anotation "RequiredArgsConstructor" to the ProductService class; is that the same as putting @Autowired on top of "private ProductRepository productRepository" ? (without the modifier 'final'), or is there any difference? thanks for your videos.
@khoa-hd
@khoa-hd Жыл бұрын
When you add @RequredArgsConstructor above the class and declare private final ProductRepository productRepository, that means you are using Constructor injection.
@melihcankilic5918
@melihcankilic5918 Жыл бұрын
thank you bro, it is very good.
@user-uw8eq1xw3h
@user-uw8eq1xw3h 5 ай бұрын
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.
@rockdynamics7766
@rockdynamics7766 Жыл бұрын
This videos is so helpful to me .Pls where is the kubernetes deployments tutorial ?
@rajatverma1688
@rajatverma1688 4 ай бұрын
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?
@Mallikarjundev-mh6ge
@Mallikarjundev-mh6ge 3 ай бұрын
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.
@miajia5151
@miajia5151 Жыл бұрын
谢谢!
@SergioGonzalez-pq3gc
@SergioGonzalez-pq3gc 4 ай бұрын
Hi! Great video, I just wanted to know if you could shed some light into this warning of vulnerability within the dependencies of springframework that are highlighted by the IDE saying: vulnerability info for maven:ch.qos.logback:logback-classic:1.4.11. Is it something we should be concerned about? Is it exploitable? Thank you.
@catty1020
@catty1020 8 күн бұрын
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.
@MilsonPazienza
@MilsonPazienza 2 жыл бұрын
Thanks big bro
@safouenegharbi3133
@safouenegharbi3133 Жыл бұрын
Thank you sir for this course ! Can you please add the diagram to the github repository. Or provide a link to get it please ? Thank you
@prog_ramming_brains
@prog_ramming_brains 2 жыл бұрын
Hi sir,your videos are really good,they are the best in the internet..Is this a different microservices series from the earlier one?
@world4376
@world4376 11 ай бұрын
Hi when creating maven Project which options I have to select either webapp or simple j2ee
@amrabdelhady
@amrabdelhady 6 ай бұрын
Thanks!
@elyorkarimov2203
@elyorkarimov2203 Жыл бұрын
thank you very much
@calssamyaparm3053
@calssamyaparm3053 Жыл бұрын
Thank you :)
@salah-eddinesalam2518
@salah-eddinesalam2518 2 жыл бұрын
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.
@ProgrammingTechie
@ProgrammingTechie 2 жыл бұрын
This is going to be 8-9 part series, next video is going to be released on Saturday.
@amarnathkumar2564
@amarnathkumar2564 Жыл бұрын
@@ProgrammingTechie Are you sleeping?
@user-cf7bi1tx1h
@user-cf7bi1tx1h 5 ай бұрын
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.
@user-cf7bi1tx1h
@user-cf7bi1tx1h 5 ай бұрын
13:26 Is there any specific reason for choosing constructor injection instead of @Autowired in this case? Or both are same?
@ngocanhhoang7522
@ngocanhhoang7522 Жыл бұрын
good job bro
@DaniilShevchuk
@DaniilShevchuk 2 жыл бұрын
If I had to separate the model class from the product module, what is the best way to do it so that Springs sees the model?
@woistdasniveau8290
@woistdasniveau8290 Жыл бұрын
A small Question from my understanding so far the Database in the ProductService will be mainly used just for storing Data right? Why do we use MongoDB here since normally SQL Databases are considered better for storing data right? Or did i misunderstand something here?
@shreyasvaghasia7175
@shreyasvaghasia7175 Жыл бұрын
Best Video, Can u pls make videos on Docke,k8s and AWS?
@yuuuya3236
@yuuuya3236 2 жыл бұрын
thx, bro
@amanjain4410
@amanjain4410 Жыл бұрын
Just one question why didn't you add @autowired annotated in controller or service to inject?
@testingdave7629
@testingdave7629 Жыл бұрын
If I decided to deploy this in AWS, what web service should I use? There is a lot of server/microservice created in this tutorial would these microservice deployed in different instances? Sorry if I have a lot of questions maybe you can create an article/guide on how will this be deployed in the AWS? THANK YOU
@hernanjavieraguilarcruz3400
@hernanjavieraguilarcruz3400 Жыл бұрын
Hello! Could you please tell me what JDK version are you using? Thanks
@karthikeyanrm3446
@karthikeyanrm3446 2 жыл бұрын
Hi - Do we need to go through your earlier Spring-Microservices playlist before learning this current one or can we start from this one itself ? Please let me know.
@ProgrammingTechie
@ProgrammingTechie 2 жыл бұрын
Hi, no need, you can directly start with this series
Spring Boot Microservice Project Full Course in 6 Hours 🔥🔥🔥
6:06:44
Programming Techie
Рет қаралды 679 М.
FOUND MONEY 😱 #shorts
00:31
dednahype
Рет қаралды 9 МЛН
顔面水槽がブサイク過ぎるwwwww
00:58
はじめしゃちょー(hajime)
Рет қаралды 117 МЛН
OMG 😨 Era o tênis dela 🤬
00:19
Polar em português
Рет қаралды 6 МЛН
Spring Boot Microservices Project Example - Part 3 | Service Discovery
30:59
Microservices Explained in 5 Minutes
5:17
5 Minutes or Less
Рет қаралды 676 М.
Spring Boot Microservices Tutorial - Part 1 - Building Services
39:00
Programming Techie
Рет қаралды 11 М.
The New ‘AI Windows’ Will Change How We Use Computers Forever
14:12
I tried Unraid for the FIRST time in 2024
21:05
Techno Tim
Рет қаралды 56 М.
Microservices explained - the What, Why and How?
18:30
TechWorld with Nana
Рет қаралды 792 М.