Search code examples
springspring-bootspring-cloud

Spring Boot Confusion (using spring cloud dependency in spring boot framework)


I am new to spring framework. I have a confusion regarding spring boot and spring cloud.

I used https://start.spring.io/ to initialize a spring boot application. I think I am using the spring boot framework. However, I would like to use some spring cloud dependencies such as spring-cloud-stream-binder-kafka.

Question 1: If I added this dependency above to my spring boot application, I am wondering if I still can go with the spring boot framework, or I have to change to spring cloud framework.

Question 2: I am wondering if there is any difference when deploying the spring boot or spring cloud application. Or, they just have the different frameworks, and we could deploy them in the same way.

Thank you so much!


Solution

  • You can use together Spring Boot and Spring Cloud packages. Spring Boot is just a preconfigured Spring Framework with some extra functionalities. It also uses library versions compatibile with each other. Spring Cloud is also the part of the Spring ecosystem, contains libraries that mostly used in cloud applications. In the background, these packages will pull all necessary Spring (and other) libraries into your project, as transitive dependencies. So you can use the generated pom/gradle, and add other dependencies. In this case Spring boot will be your core and cloud add extras.