Spring Beans Showdown: Unraveling the Mystery of @Component vs @Bean!

Поділитися
Вставка
  • Опубліковано 2 лют 2025

КОМЕНТАРІ •

  • @satyarajawasthismart
    @satyarajawasthismart Рік тому +34

    Can you make a crash course on Microservices too ?
    Really love to learn from your experience and way of explaining things. You really inspire me to teach others. Thank you for being there Mr. Vega.

  • @SeTrous
    @SeTrous Рік тому +5

    This is an ABSOLUTE banger
    Finally i have no misunderstandings on beans, components and even spring container

  • @md.hossain693
    @md.hossain693 Місяць тому +1

    This video removed all my confusions. Thanks Dan. Great work.

  • @meilyn22
    @meilyn22 10 місяців тому +2

    Thank you. Best explanation. I've been hearing those terms and using them, but I never took the time to understand what they mean. Beans put methods in the application context, mostly used with the @Configuration annotation. @Component put classes into the application context. You are awesome!

  • @christopherreif3624
    @christopherreif3624 Рік тому +9

    I absolutely love your videos, please don’t stop making!

  • @shreypatel9379
    @shreypatel9379 Рік тому +1

    This is THE explanation. Like you explained everything in a much simpler way than all the other sources I have referred to. Thanks for such a wonderful tutorial!

  • @nikhilxxsharma
    @nikhilxxsharma Рік тому +1

    This is gold, brilliant Dan, you are amazing.

  • @connor8875
    @connor8875 9 місяців тому

    Finally! Finally a video that explains this without ramming meaningless jargon down my ears 😁 You've got yourself a new subscriber!

  • @samarthurs8000
    @samarthurs8000 Рік тому +2

    As always, very valuable content for free. Much Appreciated!

  • @peachezprogramming
    @peachezprogramming 10 місяців тому +2

    Great video. Thanks for making!

    • @DanVega
      @DanVega  10 місяців тому

      Thanks for watching

  • @donglaizhang7895
    @donglaizhang7895 9 місяців тому +1

    Hi Dan, this is fantastic!! A lot of of these detailed information is hard to be found easily. With most of the tutorials and examples online, they only tell you what/how to do, but not why. Thank you!!

    • @DanVega
      @DanVega  9 місяців тому

      I feel the same way and I am often trying to answer the questions that I have as well. Really glad you enjoyed it and thank you for the kind words.

  • @angelmotta
    @angelmotta 3 місяці тому

    Thanks Dan! your example was clear and helped me to solidify my knowledge!

  • @codingwithraphael
    @codingwithraphael Рік тому

    You are a true hero Dan!! You’ve just breakdown it so understandable that I’m very impressive.. thank you thank you

  • @moonly3781
    @moonly3781 Рік тому

    Finally!!! Thank you, Dan. You're the best✌

  • @enesb4797
    @enesb4797 Рік тому +1

    should we not use "new" keyword in classes even if they are just regular classes and not beans or components? let's say I have a helper class for math operations, shouldn't I use "new" keyword in its dependencies? (since you said you should stay away from using "new" keyword 6:54)

  • @flow_987
    @flow_987 Рік тому

    Incredibly illuminating. Thank you!

  • @libraniel
    @libraniel Рік тому +1

    You're great Dan, thank you and happy coding! 😃

  • @yasminaitmaksene5230
    @yasminaitmaksene5230 Рік тому

    Thank's a lot ! Your explanations really helped me to understand how Spring Beans work :D

  • @mustafatopcuogullar4364
    @mustafatopcuogullar4364 18 днів тому

    Awesome video. Thank you.

  • @itsjaylogan
    @itsjaylogan Рік тому

    Thank you so much. I’m just getting started with Spring and Spring Boot and this video helped me confirm some things I suspected! I will start your Spring training video 🎉

  • @Anonymous-zo9qr
    @Anonymous-zo9qr 3 місяці тому

    Understood clearly. Thanks!

  • @myst.youtube
    @myst.youtube Рік тому

    no joke this tutorial of bean and component 100% clear than water.

  • @rapasebastian5678
    @rapasebastian5678 Рік тому

    Great content Dan! I was pretty familiar with all the concepts mentioned here, still the content was refreshing. Love the way you dive into things. Keep it up!

  • @munnieswaroop
    @munnieswaroop 8 місяців тому

    Excellent explanation, got some things cleared

  • @mehnaazmohiuddin
    @mehnaazmohiuddin Рік тому

    Very Cool video @Dan ! For anyone who can't see spring plugin, Spring plugin is available in Ultimate Edition , not the free one.

  • @ddarkodev2923
    @ddarkodev2923 Рік тому

    Thank you, Dan!! So helpful 💪

  • @meysam.85
    @meysam.85 Рік тому

    Thanks @dan, i find it useful. Thanks

  • @FranklyTerrible
    @FranklyTerrible Рік тому +10

    Not going to lie, this example about beans only confused me more. How does Spring make that vague connection to the Resttemplate method? That seems like dark magic to me...

    • @ИвоСпасов-й5ш
      @ИвоСпасов-й5ш Рік тому +1

      I have been working on Spring projects and gathered some valuable knowledge! Spring basically has the so-called IoC container, which is associated with the dependency injection system it has been integrated with. In simple words, instead of trying to make new objects with the keyword "new" like "new User();", Spring will automatically inject this dependency for you. This can be done in 3 ways: through field, constructor or setter injection. That's it. Also, by default, the instances provided by spring are singleton, namely, only one instance is provided for the entire application context, which of course can be changed if you want.

    • @smadarsh3635
      @smadarsh3635 4 місяці тому

      😂

    • @md.hossain693
      @md.hossain693 Місяць тому

      This is done through reflection. Reflection is like magic indeed. You can access private fields of one class from another class with the help of reflection.
      If it simplifies our lives, it is a good thing.

  • @shahinrajaei1666
    @shahinrajaei1666 5 місяців тому +1

    youre tutorials are bot deep enough, i stii do nit know what beans

    • @enerjiCS
      @enerjiCS 4 місяці тому +1

      read Spring Start Here chapters 1-4 and then come back, you'll understand it better. that book is worth reading and not too long.

  • @rajkumarvb5197
    @rajkumarvb5197 Рік тому

    Thanks Dan, it was helpful!

  • @petersteel7735
    @petersteel7735 Рік тому

    Thank you Dan! Quality content!!!

  • @kyleryxn
    @kyleryxn 11 місяців тому +1

    I like this video, but I think you cold update it with more clarification on best use cases for each. Like, when is it better to use @Component vs. @Bean?

    • @meilyn22
      @meilyn22 10 місяців тому

      He literally explained it in this video. It's not rocket science.

  • @crillin570
    @crillin570 Рік тому

    Thanks Dan, these are very helpful.👍

  • @xyvadimxy
    @xyvadimxy Рік тому

    It's really helpful explanation. Thanks Dan!

  • @israelduarte1326
    @israelduarte1326 Рік тому

    Thank you for the video!

  • @ornelfranck
    @ornelfranck Рік тому

    Nicely done!

  • @random-characters4162
    @random-characters4162 Рік тому

    Very good and dense content! Thx

  • @KatarinaClaes-q1p
    @KatarinaClaes-q1p 4 місяці тому

    which vscode theme were you using here? I find yours way less cluttery looking than mine.

  • @ningw5169
    @ningw5169 Рік тому

    Hey Dan what's the theme you are using?

  • @Curiosidades-ki2oi
    @Curiosidades-ki2oi Рік тому

    Which theme are you using in your IntelliJ?

  • @MrRexxarHell
    @MrRexxarHell Рік тому

    Dude, you explain it so well, that when I have questions about Spring, I go to your channel. Thanks for your work!

  • @GauthamParani
    @GauthamParani Рік тому

    Awesome explanation!

  • @anyname8803
    @anyname8803 Рік тому

    Hello Dan,
    defining beans with @Bean annotation isn't truly an inversion of control, since we are returning a new bean explicitly with the "new" keyword like so:
    @Bean
    public SomeObject myBean(){
    return NEW SomeObject()
    }
    Please correct my understanding.
    Thanks

  • @ravipandey29
    @ravipandey29 11 місяців тому

    Thanks , it is really helpful.

  • @brayanmnz
    @brayanmnz Рік тому +1

    Nice shirt, I got mine from Devnexus!

  • @davemerkury
    @davemerkury Рік тому

    Dan! Thank you for your content! It helps me to understand Springboot a lot better! Would you recommend goign through the documentation? I always seem to have trouble with creating queries to retrieve data from mysql.

  • @KennethKousen
    @KennethKousen Рік тому +7

    Nice job. A couple of quick comments:
    1. I had no idea that IntellIJ had a Spring view. Seems obvious in retrospect, but thanks for that.
    2. I'm surprised you didn't autowire the `RestTemplateBuilder` into the `@Bean` method rather than instantiate it yourself. The builder is available in the application context already, so make it an argument to your configuration method and it'll be autowired in automatically.
    3. Even though autowiring works as long as you have only a single constructor in a class, I usually add `@Autowired` anyway, partly as documentation, and partly as protection in case someone else adds a default constructor, at which point the automatic autowiring wouldn't work any more.
    Just a thought. :)

  • @crlychar
    @crlychar Рік тому

    Thak you for the tutorial. I have a question. How can i get the same UI of the Intellij IDEA like yours?

  • @Dina-Barbur
    @Dina-Barbur Рік тому

    thank you, Dan! would you please tell about @component vs @repository. Both annotations are used in infrastructure layer of any REST app (storage or repository packages). I'm slightly confused by such diversity.

  • @blanksle
    @blanksle 2 місяці тому

    is beans closer to classes or instance of classes ?

  • @keithlockey7129
    @keithlockey7129 Рік тому

    Hi, I like your videos. I found a mistake on your Recent Articles page on your blog. You put "I like to write about anything thta I am currently working or something new that interests me." You misspelled the word "that". Thanks.

  • @iterator
    @iterator Рік тому

    Thanks for the great content! Could you share the font you're using?

    • @fatihkobacik
      @fatihkobacik Рік тому

      i think it's cascadia-code font of microsoft

  • @adityavardhanagarwal495
    @adityavardhanagarwal495 Рік тому +6

    Can you create a spring security crash course as well please ?

  • @zakariyaechmaili5647
    @zakariyaechmaili5647 Рік тому

    Thanks ❤️

  • @FredrikRambris
    @FredrikRambris Рік тому +1

    How about factories? Is there a way to register a factory that will return a bean when needed. Say a bean with generics. Is there such a way to easily register a bean factory?

  • @mlensment
    @mlensment Рік тому

    Can you cover spring beans and concurrency?

  • @shashanksurekhapapde6143
    @shashanksurekhapapde6143 Рік тому

    Nice video ! how do i get spring in tool window . Is it only on ultimate edition ?

  • @mTsp4ce
    @mTsp4ce 6 місяців тому +1

    2:15 is a logical fallacy (affirming the consequent). A spring bean is an instance of a class, but not every instance of a class is a spring bean. Not off to a good start there, buddy...

  • @mzlobecki
    @mzlobecki Рік тому

    what is the shortcut for emoji please? 😄

  • @codex8797
    @codex8797 Рік тому

    Thank you, really helped

  • @kreativcity
    @kreativcity Рік тому

    Nice job!

  • @USONOFAV
    @USONOFAV Рік тому

    Why does @Bean doesn't work if you are returning a Collection type and you have to use @Resource?

  • @Keteku.
    @Keteku. Рік тому

    Why do you use a CommandLineRunner instead of just running System.out.println()

  • @annyeong987
    @annyeong987 Рік тому

    You didn't show how to get that spring view tool

  • @kevinmaltby4202
    @kevinmaltby4202 3 місяці тому +1

    2:00 I think here you first imply that simply creating an instance of a class means one gets a Spring bean. You then go on to correctly state that a Spring bean is an object that is _managed_ by the spring runtime. Call me a pedant but I think you need to be clear what is and what isn't a Spring bean afterall you are trying to explain what a Spring Bean is.

  • @francogiulianopertile279
    @francogiulianopertile279 Рік тому

    Good Tutorial

  • @GoodBoy-lr7up
    @GoodBoy-lr7up 7 місяців тому

    Really clear!3ku

  • @qzf4928
    @qzf4928 Рік тому +2

    我不会英语,但是通过字幕我学习的很慢但是我会坚持的

  • @hypekg5719
    @hypekg5719 Рік тому

    What's wrong with your camera? Adjust the focus before recording a video

  • @otaxhu
    @otaxhu Рік тому

    spring boot and all that thing of beans are bullshit dude it isn't declarative, I builded an application with jax-rs and it hasn't all this "magic things" of the spring runtime handling all the instances in the limbo, jax-rs (now called jakarta-rs) gives you more freedom.

  • @paulhetherington3854
    @paulhetherington3854 8 місяців тому

    /krch dsk bean < R'(4''tvk''btx ruch)< ~tmp2''kf(2 inch 824x) @ rdsk~II tmp p''TdDxn gml rul txt tun//J namz krch 4''Rtvk abv + 2''UI' kol rul vd sim LN'' < rdacht~tmp p''2'(xvtn) rtun bean/
    /rbean dsk~tmp snd ruch vF8''btz dach txt tn R2''p~ K' rch + frch vktd rbean rul~tmp < txt tun ad cmd~gml + wn ml//+ hlf ruch < 28''frch contnt fiji kalchz rdsk - 4''tvk - fz 2''UI' id - txt tun - verifcate/