Home  >  Article  >  Java  >  How to implement springboot microservice project integrated html page

How to implement springboot microservice project integrated html page

WBOY
WBOYforward
2023-05-13 13:49:061323browse

Spring Boot microservice projects usually provide services through REST API instead of directly integrating HTML pages.

If you integrate HTML pages in a Spring Boot project, after a brief arrangement, you can use the following common methods:

  • **Thymeleaf: **Thymeleaf is a Java template engine for creating extensible XML/HTML/text templates in web and standalone environments. It integrates easily with Spring Boot, is simple to use, and supports features such as template inheritance and expression language.

  • **FreeMarker: **FreeMarker is a template-based view rendering engine that supports the generation of dynamic HTML, XML, JSON, JavaScript, CSS and other files. It can also be easily integrated with Spring Boot, is simple to use, and supports features such as template inheritance and custom directives.

  • **JSP: **JSP is a dynamic web development technology based on Java technology, which can easily embed Java code and generate HTML pages. It can also be integrated with Spring Boot, but requires additional configuration of dependencies and plug-ins.

For example, if you choose to use Thymeleaf, you can follow the following steps:

1, add the following dependencies in pom.xml:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>

2, add the following configuration in application.properties:

2.1 Configure the path where the Thymeleaf template file is located

spring.thymeleaf.prefix=classpath:/templates/

2.2 Configure the suffix name of the Thymeleaf template file

spring.thymeleaf.suffix=.html

2.3 Configuration Thymeleaf template file character set

spring.thymeleaf.encoding=UTF-8

2.4 Turn on caching

spring.thymeleaf.cache=true

3, create HTML template file

Create HTML template file in the src/main/resources/templates directory, and Use Thymeleaf tags for operations such as dynamic data binding and conditional rendering.

For example, the following is a simple HTML template file index.html:

<!DOCTYPE html>
<html>
<head>
    <title>Spring Boot + Thymeleaf</title>
</head>
<body>
    <h2>Welcome to Spring Boot</h2>
    <p th:text="${message}">This is a placeholder text.</p>
</body>
</html>

4, create a controller

In the controller of the Spring Boot application, use @ The GetMapping annotation defines a request processing method that returns a ModelAndView object, and passes the template file name and dynamic data to the ModelAndView object.

For example, the following is a simple controller class HomeController:

@Controller
public class HomeController {
    
    @GetMapping("/")
    public ModelAndView index() {
        ModelAndView modelAndView = new ModelAndView("index");
        modelAndView.addObject("message", "Hello, world!");
        return modelAndView;
    }
    
}

In this way, you can see the rendered HTML page by visiting http://localhost:8080 in the browser.

Let’s take another FreeMarker example to briefly explain:

When using Spring Boot to build a web application, you can use FreeMarker as a template engine to render HTML pages. FreeMarker is an open source Java template engine that allows you to generate documents such as HTML by defining templates. The following are some common methods to integrate FreeMarker in Spring Boot projects:

5, Add dependencies

Add FreeMarker dependencies in the project's pom.xml file:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-freemarker</artifactId>
</dependency>

6, Configure the view parser

Add the following configuration in the application.properties file to tell Spring Boot to use FreeMarker as the template engine to parse the view:

spring.mvc.view.prefix=/WEB-INF/views/
spring.mvc.view.suffix=.ftl

7, Create the template file:

Create a .ftl file in the src/main/resources/templates directory, which will be used to render HTML pages. In a template file, you use FreeMarker's template language to define the content of your HTML page.

For example, the following is a simple template file that will render an HTML page containing "Hello World":

<!DOCTYPE html>
<html>
<head>
    <title>Hello World</title>
</head>
<body>
    <h2>${message}</h2>
</body>
</html>

In the above template, ${message} will be replaced with actual value. You can use a model in Java code to set this value.

8, Create a controller

Create a controller in the Spring Boot application to handle HTTP requests and return the name and model of the template. Here is a sample controller:

@Controller
public class HomeController {
    @GetMapping("/")
    public String home(Model model) {
        model.addAttribute("message", "Hello World!");
        return "home";
    }
}

In the above example, the controller returns the "home" string, which will be used as the name of the template file. It also adds a model to the view, which contains a property called "message" and a value of "Hello World!"

These are some common ways to use FreeMarker as a template engine in Spring Boot projects. When you use FreeMarker, you can also use advanced features such as conditional statements, iterators, and macros to have more control over the generated HTML pages.

The above is the detailed content of How to implement springboot microservice project integrated html page. For more information, please follow other related articles on the PHP Chinese website!

Statement:
This article is reproduced at:yisu.com. If there is any infringement, please contact admin@php.cn delete