This was hands down the best Dependency Injection on RUclips, I've seen this topic from literally every other RUclipsr and no teaches with this much simplicity and depth... Can not thank you enough for providing this level of quality!
Awesome video. One request to all viewers, please ask more and more questions in the comment section. It will help others and specially beginner to get more clear view of topics.
Wow, You are a great teacher as well, You way of teaching makes concepts easy, My humble reaquest to you sir, Please do make more videos on springboot it will help us, please!
This is an amazing lecture, far better than all the Udemy courses on Spring Boot. Please complete the Spring Boot series. btw this series is not available on Udemy business.
For those who think they mastered this video after one watch, you might be underestimating things! Take a couple more views to really soak it all in. Trust me, giving it a few extra rounds now could save you from a major 'uh-oh' moment in production later. So buckle up and get comfy with this video! By the way, awesome job on the video, @shrayansh
thank you so much for your valuable teaching, hope you will complete full stack java developer course, and please upload this complete spring boot course in udemy. good bless you bro.
hi can you please share some open source java projects links which are nicely written web apps (follows solids & desgin patterns ) or which industry teams look for standardisation and reference. I know there are many but can't figure out the quality .
In the previous video you mentioned we can use @Bean to tell spring what values to pass in the constructor when creating the object. So suppose we have the following User constructor : @Autowired public User( String name, IOrder order ) The order object is injected by using constructor injection. But how will spring know what value of name it has to pass? Do we need to define it using @Bean ( if yes then how will the code look like? ) or is there any other method?
@Shreyansh , at 20:30 i think using constructor injection also ensures that it first resolve all the injected class by creating the object of them and after that it initialize object of that class itself, as i can see in the screenshot , the example...first "Order Initialized" then "User Initialized" , please correct if i am wrong?
hi, if you are creating USER object using NEW , how ORDER member variable will get initialized. as its marked as AUTOWIRED. And spring will not initialize it automatically. there is Already 1 USER Bean present, which was initialized by Spring, but when you are creating using NEW, its creating new object. hope that clarifies.
Hi Shrayansh, can you reply on below 2 query? 1. As a Java dev who is responsible for adding cicd in project in corporate 2. In production, usually how logs are monitored
Hi Shrayansh, I have purchased the membership. The notes are visible for now, but I read in the perks that the notes will have 2 years of expiry. So, after one month, when I am no longer a member, how will I be able to access the notes?
Hi Sheyansh, very nice video. One confusion I have is regarding last example in the video. Had the "Order" been a base class rather an interface, did we have to use primary or qualifier annotation? And by using these primary or qualifer annotation are we not breaking dependency inversion rule as we are depending on 1 concrete implementation out of many?
good question buddy. Using @Qualifer, we do tell Spring to inject particular concrete class. But it does not break Dependency inversion principle. As our class still uses Abstraction only. But since we are not using @Bean and instead relying on @Primary or @Qualifier which tell spring, which dependency to use, when more than 1 bean present with same interface. (so its more of, that we are providing input to Spring, how to solve the dependency). But you can understand it better, if you try to use @Bean annotation in config class. And from there, you can control, which Bean to return whether OnlineOrder or OfflineOrder whenever Order Bean is requested. So now you will see that our class still follows dependency inversion, as no matter what concrete class object you will add, it will work. Hope that clarifies.
manual instantiation should be avoided in spring, right? if we do not instatiate the user class manually, then npe will not be raised. please correct me if i am wrong.
I have one question Suppose I have an Order Interface and I have two implementation i.e OnlineOrder and OfflineOrder Using the @Qualifier and @Primary I can decide at the start of the tomcat which one to use My question here is that Suppose when the request hit my controller and in the @PathVariable I put online then I need to use the OnlineOrder and if in @PathVariable I put the offline then I need to use OfflineOrder . So how at the runtime I can tell the Spring DI to use the desired bean depending on what is coming as Input . Is there a way to do this?
yea you can do it. For that you need to use @Bean in that method you can put custom logic (if else condition) and return the object of Online or Offline which you required
@@ConceptandCoding @Bean will also going to create the object at deployment time only and if i write the if else in controller method then Are we breaking the SOLID principal ?
Q1. @Qualifier("OnlineOrderName") : this is we are hard coding in the application write? let say we want now object of Offline Order in our User Object then how can we change that? Q2. Can we write this if we have multiple dependency in User class let say Order and Invoice @Autowired public User(Order order, Invoice invoice) { this.order = order; this.invoice = invoice; }
Yes, you need to use @Autowired on the setter method to enable setter injection in Spring. This annotation tells Spring to inject the dependency when it calls the setter method.
@@ConceptandCoding Hello sir, Thank u so much. Please upload in bulk if possible. This is really helping me a lot, specially the way you cover interview expected questions. Exactly those questions are only asked.
Bro why u did this? you are saying to watch #5 video, and that is Member-Only video, how will i see that, entire flow is broken now, i have watched all the other playlists... its really hard to find single channel with entire content... 😭
This was hands down the best Dependency Injection on RUclips, I've seen this topic from literally every other RUclipsr and no teaches with this much simplicity and depth...
Can not thank you enough for providing this level of quality!
thanks
Bro, you're crazy!!
You made the Spring DAMN easy!!
Love your content
Awesome video. One request to all viewers, please ask more and more questions in the comment section. It will help others and specially beginner to get more clear view of topics.
Sounds good. Will comment here if have any doubts
Wow, You are a great teacher as well, You way of teaching makes concepts easy, My humble reaquest to you sir, Please do make more videos on springboot it will help us, please!
Sir please continue this greatest spring boot playlist and hope to get more videos frequently...
This is an amazing lecture, far better than all the Udemy courses on Spring Boot. Please complete the Spring Boot series. btw this series is not available on Udemy business.
For those who think they mastered this video after one watch, you might be underestimating things! Take a couple more views to really soak it all in. Trust me, giving it a few extra rounds now could save you from a major 'uh-oh' moment in production later. So buckle up and get comfy with this video! By the way, awesome job on the video, @shrayansh
thanks man, was thinking like this only. after i watched again i realized it.
Excellent and amazing explanation. Big Thanks ........for the video
thank you so much for your valuable teaching, hope you will complete full stack java developer course,
and please upload this complete spring boot course in udemy.
good bless you bro.
hi can you please share some open source java projects links which are nicely written web apps (follows solids & desgin patterns ) or which industry teams look for standardisation and reference. I know there are many but can't figure out the quality .
If you get any please mention here
In the previous video you mentioned we can use @Bean to tell spring what values to pass in the constructor when creating the object.
So suppose we have the following User constructor :
@Autowired
public User( String name, IOrder order )
The order object is injected by using constructor injection. But how will spring know what value of name it has to pass?
Do we need to define it using @Bean ( if yes then how will the code look like? ) or is there any other method?
Did you find the answer to your problem?
We need to create a bean for String as well ..
Very nicely explained
In production i always use @Service instead of @component, @Bean …when it’s initialised ?
Thanks bro
Very Nice explanation
@Shreyansh , at 20:30 i think using constructor injection also ensures that it first resolve all the injected class by creating the object of them and after that it initialize object of that class itself, as i can see in the screenshot , the example...first "Order Initialized" then "User Initialized" , please correct if i am wrong?
Right
At 14:06, while creating new object for USER class, why we got NPE for order, as while initialization ORDER is being injected in user parameters,
Hi @naveentmyug did you get the answer for this?
@@suryabala6369 nopes
hi, if you are creating USER object using NEW , how ORDER member variable will get initialized.
as its marked as AUTOWIRED. And spring will not initialize it automatically.
there is Already 1 USER Bean present, which was initialized by Spring, but when you are creating using NEW, its creating new object.
hope that clarifies.
@@ConceptandCoding yes, now I am good with it. Thanks
for setter dependency injection it will inject dependency at startup time or we have to call setter function?
at application startup, if its not marked Lazy
Hi Shrayansh, can you reply on below 2 query?
1. As a Java dev who is responsible for adding cicd in project in corporate
2. In production, usually how logs are monitored
Bhaiya , i love your videos, it will be very helpfull if you make some videos on crypotography
i really need that
hi pls check this one :
ruclips.net/video/GtSUeAkPEP0/видео.html
Hello Shryansh,
Can we get more working examples of Dependency Injection.. May be used in some LLD Question, that will be even more helpful.
Hi Shrayansh, I have purchased the membership. The notes are visible for now, but I read in the perks that the notes will have 2 years of expiry. So, after one month, when I am no longer a member, how will I be able to access the notes?
Any idea ?
Will it be possible If you can provide link of the presentation you created in the description?
Can we please get a playlist on microservices
Hi Sheyansh, very nice video. One confusion I have is regarding last example in the video. Had the "Order" been a base class rather an interface, did we have to use primary or qualifier annotation? And by using these primary or qualifer annotation are we not breaking dependency inversion rule as we are depending on 1 concrete implementation out of many?
good question buddy.
Using @Qualifer, we do tell Spring to inject particular concrete class. But it does not break Dependency inversion principle. As our class still uses Abstraction only.
But since we are not using @Bean and instead relying on @Primary or @Qualifier which tell spring, which dependency to use, when more than 1 bean present with same interface. (so its more of, that we are providing input to Spring, how to solve the dependency).
But you can understand it better, if you try to use @Bean annotation in config class. And from there, you can control, which Bean to return whether OnlineOrder or OfflineOrder whenever Order Bean is requested. So now you will see that our class still follows dependency inversion, as no matter what concrete class object you will add, it will work.
Hope that clarifies.
Hi Shreyansh , i had one question, till when are you planning to cover up all the lectures , like by what month will all aspects be covered up
@shreyansh at time 19:31 the user class doesn't have any default constructor and we have @component added , the how is the object getting created?
22:01 - Not getting any exception when multiple constructors present without @Autowired and compile error is to be observed. Did anyone noticed this?
Hi why is this video suddenly a member only content
This concludes the Spring Boot tutorial. Are there additional tutorials planned for the future?
yes
manual instantiation should be avoided in spring, right? if we do not instatiate the user class manually, then npe will not be raised. please correct me if i am wrong.
right, manually we should not create, but sometimes we do where we don’t need bean creation
Hi Shreyansh
I am getting some issue while joining this channel, my payment is failing can you help me with this. I have tried several times now
Thanks
sir whats next after this playlist?
I have one question
Suppose I have an Order Interface and I have two implementation i.e OnlineOrder and OfflineOrder
Using the @Qualifier and @Primary I can decide at the start of the tomcat which one to use
My question here is that Suppose when the request hit my controller and in the @PathVariable I put online then I need to use the OnlineOrder and if in @PathVariable I put the offline then I need to use OfflineOrder . So how at the runtime I can tell the Spring DI to use the desired bean depending on what is coming as Input . Is there a way to do this?
yea you can do it. For that you need to use @Bean
in that method you can put custom logic (if else condition) and return the object of Online or Offline which you required
@@ConceptandCoding @Bean will also going to create the object at deployment time only
and if i write the if else in controller method then Are we breaking the SOLID principal ?
no, it will not break.
And Today its how done in Live application too.
choose object dynamically based on some input
Great doubt bro
Q1. @Qualifier("OnlineOrderName") : this is we are hard coding in the application write? let say we want now object of Offline Order in our User Object then how can we change that?
Q2. Can we write this if we have multiple dependency in User class let say Order and Invoice
@Autowired
public User(Order order, Invoice invoice) {
this.order = order;
this.invoice = invoice;
}
We can use PostConstruct if you have not set the Order as final, but that's not the best practice to follow.
when we get the next videos for the playlist?
i will work on weekend
Do we need @Autowired when doing setter injection ?
Yes, you need to use @Autowired on the setter method to enable setter injection in Spring. This annotation tells Spring to inject the dependency when it calls the setter method.
Can we inject more than one constructor in a class
Yes, internally spring will pick the constructor with most dependency resolved.
Try it out
How to become member? I see no join option
@@bilalshahid9714 at home page there should be join button or pls check description section
Hello Shryansh,
When will the next videos be uploaded?
i will work on this weekend, by next week
@@ConceptandCoding Hello sir, Thank u so much. Please upload in bulk if possible. This is really helping me a lot, specially the way you cover interview expected questions. Exactly those questions are only asked.
Hi Shreyansh, I cannot find the notes for java playlist
pls check member community post section buddy
@@ConceptandCoding got the notes thanks Shreyansh
❤
Hello how to get a membership of your channel being from pakistan?
pls check description section, you will find the joining link buddy.
dmp main 1 lakh ki internship mil rhi hai, video bana do
Bro why u did this?
you are saying to watch #5 video, and that is Member-Only video, how will i see that, entire flow is broken now, i have watched all the other playlists... its really hard to find single channel with entire content... 😭
awesome video
Best videos !!!