”;
In this example, we”ll create a Spring Boot + MVC + Rest based Web application.
Step 1: Create source Folder
Create a folder FirstApplication in E:Test folder.
Step 2: Create Source File
Create FirstApplication.groovy file in E:Test folder with following source code.
@RestController class FirstApplication { @RequestMapping("/") String welcome() { "Welcome to TutorialsPoint.Com" } }
Step 3: Run the application
Type the following command
E:/Test/> spring run FirstApplication.groovy
Now Spring Boot CLI will come into action, download required dependencies, run the embedded tomcat, deploy the application and start it. You can see the following output on console.
E:Test>spring run FirstApplication.groovy Resolving dependencies............................... . ____ _ __ _ _ /\ / ___''_ __ _ _(_)_ __ __ _ ( ( )___ | ''_ | ''_| | ''_ / _` | \/ ___)| |_)| | | | | || (_| | ) ) ) ) '' |____| .__|_| |_|_| |___, | / / / / =========|_|==============|___/=/_/_/_/ :: Spring Boot :: (v2.6.3) 2022-02-03 11:12:42.683 INFO 6956 --- [ runner-0] o.s.boot.SpringApplication : Starting application using Java 11.0.11 on DESKTOP-86KD9FC with PID 6956 (started by intel in F:Test) 2022-02-03 11:12:42.710 INFO 6956 --- [ runner-0] o.s.boot.SpringApplication : No active profile set, falling back to default profiles: default 2022-02-03 11:12:45.110 INFO 6956 --- [ runner-0] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port(s): 8080 (http) 2022-02-03 11:12:45.138 INFO 6956 --- [ runner-0] o.apache.catalina.core.StandardService : Starting service [Tomcat] 2022-02-03 11:12:45.139 INFO 6956 --- [ runner-0] org.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/9.0.56] 2022-02-03 11:12:45.229 INFO 6956 --- [ runner-0] org.apache.catalina.loader.WebappLoader : Unknown class loader [org.springframework.boot.cli.compiler.ExtendedGroovyClassLoader$DefaultScopeParentClassLoader@8646db9] of class [class org.springframework.boot.cli.compiler.ExtendedGroovyClassLoader$DefaultScopeParentClassLoader] 2022-02-03 11:12:45.333 INFO 6956 --- [ runner-0] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext 2022-02-03 11:12:45.333 INFO 6956 --- [ runner-0] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 2124 ms 2022-02-03 11:12:46.901 INFO 6956 --- [ runner-0] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 8080 (http) with context path '''' 2022-02-03 11:12:46.930 INFO 6956 --- [ runner-0] o.s.boot.SpringApplication : Started application in 5.416 seconds (JVM running for 49.049) 2022-02-03 11:13:48.910 INFO 6956 --- [nio-8080-exec-1] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring DispatcherServlet ''dispatcherServlet'' 2022-02-03 11:13:48.912 INFO 6956 --- [nio-8080-exec-1] o.s.web.servlet.DispatcherServlet : Initializing Servlet ''dispatcherServlet'' 2022-02-03 11:13:48.915 INFO 6956 --- [nio-8080-exec-1] o.s.web.servlet.DispatcherServlet : Completed initialization in 3 ms
Step 4: Browse the application in Browser
Our spring based rest application is now ready. Open url as “http://localhost:8080/” and you will see the following output.
Welcome to TutorialsPoint.Com
Points to consider
Following actions are taken by Spring CLI.
-
All dependency JARs are downloaded for the first time only.
-
Spring CLI automatically detects which dependency JARs are to be downloaded based on the classes and annotations used in code.
-
Finally it compiles the code, deploy the war on a embedded tomcat, start embedded tomcat server on the default port 8080.
”;