It's a Kind of Magic: Under the Covers of Spring Boot - Brian Clozel, Stéphane Nicoll

Sdílet
Vložit
  • čas přidán 13. 12. 2017
  • One of Spring Boot's most powerful features is its auto-configuration. This magic is key to the convention-over-configuration approach that has brought a huge boost in productivity to Java developers. But is it really magic? We don't think so.
    In this session we'll take a look under the covers of Spring Boot. You'll learn about auto-configuration and the conditional configuration model that powers it, helping you to be even more productive when writing Spring Boot applications.
    Brian Clozel, Spring Team Member, Pivotal
    Stéphane Nicoll, Spring Developer, Pivotal
    Filmed at SpringOne Platform 2017
  • Věda a technologie

Komentáře • 35

  • @shriduttkothari
    @shriduttkothari Před rokem +1

    One of the great video on SpringBoot

  • @fates6922
    @fates6922 Před 3 lety

    Great talk, made what was going on behind the scenes really clear to me.

  • @mason.elmore
    @mason.elmore Před 5 lety +2

    Great talk! I recently started working with spring boot professionally and this has demystified a lot of the "magic" that has confused me as a beginner.

  • @viktorkhoroshko4489
    @viktorkhoroshko4489 Před 6 lety +2

    Thanks guys, great job!

  • @itsnaveen007
    @itsnaveen007 Před 3 lety

    Great presentation. Lot of things learn regarding auto configuration.

  • @dawid7891
    @dawid7891 Před rokem

    Nice intriduction to Spring Boot under-the-hood topic.

  • @garfieldnate
    @garfieldnate Před 6 lety +13

    I hate to say it, but it still seems magical.

    • @joeljbaker
      @joeljbaker Před 6 lety

      Agreed! Magic on top of magic

  • @beatricedianatoma8387

    Thank you for the insights! Do you guys have a link for the repo?

  • @tosho_ait
    @tosho_ait Před 5 lety +5

    Ah, the good old spring black box hell....

  • @md7zn491
    @md7zn491 Před 6 lety +1

    How did you add your project as a dependency to your another project?
    I mean did you package it as a ".jar" file from command line and than add it to your local maven repository or something else?

    • @celebezz
      @celebezz Před 4 lety +2

      mvn clean install adds jar to your local repository (.m2/repository folder) and you can use it as dependency in other pom.xml

  • @hariprasads6340
    @hariprasads6340 Před 6 lety +5

    Would like to code along and watch so can you please share the code that you are using in this video?

    • @hariprasads6340
      @hariprasads6340 Před 6 lety +14

      Found it.. github.com/snicoll-demos/hello-service-auto-configuration .. In case someone is looking for it

  • @facub5314
    @facub5314 Před 2 lety

    How can @ConditionalOnClass be called with a class that could not be in the classpath? Should that library be included as optional in the autoconfiguration module? If not I don't see how the class HelloService could not be there.

  • @huangization
    @huangization Před 5 lety +4

    Where is the github repo?

  • @paulfrischknecht3999
    @paulfrischknecht3999 Před 3 lety +10

    The first question before even starting to watch this talk: Does it need to be so complex that I need to learn all this? If people start believing your framework does magic, you have probably made it do too much...

  • @mjduigou
    @mjduigou Před 2 lety +1

    It is not really explained why all of the conditional behaviour is needed or what the benefit is of using conditional versus explicit. It seems like a significant portion of the conditional stuff could be avoided with a savings in complexity and reduction of magic-ness.

  • @vietanhvu48
    @vietanhvu48 Před 5 lety

    @StartFasterWithITunes is best LOL

  • @ddomingo
    @ddomingo Před 5 lety +8

    This would be some much easier to follow if there were some enthusiasm in their voices.

    • @frostden
      @frostden Před 3 lety +3

      I have been bashing my head against refactoring a spring boot project for a week. Finally biting the bullet and digging in to how it works under the hood. The resources for learning this seem absolutely mind numbing. I am so, so bored.

  • @kennethcarvalho3684
    @kennethcarvalho3684 Před rokem

    If you explain this at application level it becomes interesting but at framework it would be dry to most listeners

  • @hardryv3719
    @hardryv3719 Před 2 lety +1

    I despised this presentation, persistent use of the term 'opinion' where there was none and then on and on about about how useful that is... extremely confusing.
    The 'behind scenes' reveal was useful, but the 'conversation fluff' was off-putting.

  • @kotojava
    @kotojava Před 5 lety +13

    As developer I want to be focused on logic and not keep in mind spring configuration hell. Tons of this garbage annotations which is conflicting with each other. Now if you want to write hello world application using spring you have to read a lot of documentation or solve a lot of annoying exceptions etc. It's better to do not use it at ALL. Hope any other alternative like google juice will kill it sooner or later.

    • @argentumcitizen
      @argentumcitizen Před 4 lety +2

      spring boot is all about that, convention over configuration. once you learn the basics all the rest is about building business logic

    • @ITech2005
      @ITech2005 Před 4 lety +3

      If youre using spring to build a hello world application them you're already doing it wrong. Spring is for professionals willing to put the time in to learn it. Once you do that knowledge and experience will last you a lifetime and place you head and shoulders above most Java Developers. My advice is to learn Spring Core & MVC before all of this other crap.

    • @celebezz
      @celebezz Před 4 lety +6

      That is simply not true. Generate new app from spring initializer website with only "web" dependency, go to the main class with @SpringBootApplication annotation, add annotation "@RestController" on the class, then add method "@GetMapping("/") public String hw() {return "Hello World";}", run the app (for example mvn spring-boot:run), go to localhost:8080 and that's it, "Hello world" app in 1 youtube comment.

    • @TroenderTass
      @TroenderTass Před 3 lety +1

      If your goal is a hello world, why are you even here? And no, by default you get a hello world app running by just using the spring initializer. Well, you might have to actually find out where to print the hello world, but it should not be that hard, since you only have one class with one main. lol

  • @josemdz6428
    @josemdz6428 Před 6 lety +12

    Well, this is almost as boring and slow as everything else in Spring.