JAVA, Technology
Spring Boot – Part1

November 22, 2018 - JAVA, Technology
Spring Boot
Spring Boot is an open source Java-based framework used to create Micro Services. It is used to build stand-alone and production ready spring applications.
What is Micro Service?
Micro Service is an architecture that allows the developers to develop and deploy services independently. Each service running has its own process, and this achieves the lightweight model to support business applications.
Features and benefits of Spring Boot
- Spring boot provides a flexible way to configure Java Beans, XML configurations, and Database Transactions.
- It provides a powerful batch processing and manages REST endpoints.
- In Spring Boot, everything is auto configured; no manual configurations are needed.
- It offers annotation-based spring application.
- Eases dependency management.
- It includes Embedded Servlet Container.
- It is highly dependent on the starter templates feature.
How Spring Boot works
Spring Boot automatically configures our application based on the dependencies we have added to the project by using @EnableAutoConfiguration annotation. For example, if MySQL database is on our classpath, but we have not configured any database connection, then Spring Boot auto-configures an in-memory database.
Spring Boot Starters
Handling dependency management is a difficult task for big projects. Spring Boot resolves this problem by providing a set of dependencies for developer’s convenience.
For example, if we want to create a web application with REST Endpoints, it is sufficient if we include spring-boot-starter-web dependency in our project.
Note that all Spring Boot starters follow the same naming pattern spring-boot-starter-*, where * indicates that it is a type of the application.
Example:
Spring Boot Starter Test dependency is used for writing Test cases. Its code is shown below:
1 2 3 4 |
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> </dependency> |
Spring Boot Application
The entry point of the Spring Boot Application is the class containing @SpringBootApplication annotation. This class should have the main method to run the Spring Boot application. @SpringBootApplication annotation includes @EnableAutoConfiguration, @ComponentScan, and @SpringBootConfiguration annotations.
Spring Boot automatically scans all the components included in the project by using @ComponentScan annotation.
Observe the following code for a better understanding:
1 2 3 4 5 6 7 8 |
import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; @SpringBootApplication public class DemoApplication { public static void main(String[] args) { SpringApplication.run(DemoApplication.class, args); } |
Spring Boot – Quick Start – using Groovy
The Spring Boot CLI is a command line tool and it allows us to run the Groovy scripts. Create a simple groovy file which contains the Rest Endpoint script.
Hello.groovy
1 2 3 4 5 6 7 8 |
@Controller class Example { @RequestMapping("/") @ResponseBody public String hello() { "Hello Spring Boot" } } |
The above file can be run using the command “spring run Hello.groovy”

Once we run the groovy file, required dependencies will download automatically and it will start the application in Tomcat 8080 port as shown in the screenshot above. You can also see that sping ‘Mapped “{[/]}” onto public java.lang.String Example.hello()’.
We can go to the web browser and hit the URL http://localhost:8080/, and see the output from hello() function as shown below:
