You can install a plugin called Spring Boot Assistant, Spring initializr and assistant:
Now you can use the initializer as:
Declare some project information such as:
- Project type: is to choose what kind of package manager, Maven or Gradle.
- Language: Choose the code language, here I choose Java
- Type of build file: With Spring Boot, you should choose JAR to help configure the Tomcat server
- Java version: Choose java 8
Choose dependencies (can be understood as auxiliary libraries)
- Lombok: recommended, it makes Java code shorter, but need to install Lombok plugin in IDE too
- Thymeleaf: Thymeleaf will help pass data into the view of the MVC model, returning an HTML page with data to the client
- Spring Web: Build web, including RESTful, applications using Spring MVC. Uses Apache Tomcat as the default embedded container.
- Spring configuration processor: Generate metadata for developers to offer contextual help and "code completion" when working with custom configuration keys (ex.application.properties/.yml files).
Click Create to generate project. When display project, click "Load Maven Project"
Click on the green arrow to run the project
Create a simple controller in Spring Boot
Create a "controller" folder to store controller files. Then create the file "DemoController" and write the following code to create the following controller:
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; @RestController public class DemoController { @RequestMapping("/hello") public String sayHello(@RequestParam(value = "name") String name) { return "<h1>Hello " + name + "!</h1>"; } }
Spring Boot vs Thymeleaf
Create a simple controller
Thymeleaf + Static files
For Thymeleaf template files, put in src/main/resources/templates/
Create index.html file
<!DOCTYPE HTML> <html lang="en" xmlns:th="http://www.thymeleaf.org"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> <title>Spring Boot Thymeleaf Hello World Example</title> <link rel="stylesheet" th:href="@{css/bootstrap.min.css}"/> <link rel="stylesheet" th:href="@{css/main.css}"/> </head> <body> <nav class="navbar navbar-expand-md navbar-dark bg-dark fixed-top"> <a class="navbar-brand" href="#">TopTech</a> </nav> <main role="main" class="container"> <div class="starter-template"> <h1>Spring Boot Web Thymeleaf Example</h1> <h2> <span th:text="'Hello, ' + ${message}"></span> </h2> </div> <ol> <li th:each="task : ${tasks}" th:text="${task}"></li> </ol> </main> </body> <script type="text/javascript" th:src="@{js/bootstrap.min.js}"></script> </html>
Edit application.properties
For Static files like CSS or JS, put in src/main/resources/static/
Download the bootstrap.min.css library and place it in the src/main/resources/static/css directory
Download the bootstrap.min.js library and place it in the src/main/resources/static/js directory
Demo
Run main function:
Source code
https://github.com/java-cake/spring-boot/tree/main/helloworld
Top comments (0)