首页 > 解决方案 > 如何将设置器值直接传递给网页(百里香)?

问题描述

我正在使用spring boot mvc。我有一个USB 阅读器,它读取并设置一个值到User-Model的setID(String id)方法。现在我需要在网页issueCard.html中打印这个 setter 值。但我发现如何将这个设置器值传递给页面很困难。

标签: javaspring-mvcspring-bootusbthymeleaf

解决方案


我假设您的 setter 方法设置模型上字段的值。您需要该字段的吸气剂,以便 Thymeleaf获得它。

所以如果你的模型类是这样的......

package hello;

public class UsbReader {

    private String id;

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }
}

而你的控制器是这样的......

package hello;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
public class UsbReaderController {

    @RequestMapping("/")
    public String usbReaderPage(Model model) {
        UsbReader usbReader = new UsbReader();
        usbReader.setId("test");
        model.addAttribute("usbReader", usbReader);
        return "issueCard";
    }
}

然后你会像这样编写你的模板文件:

<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<body>
    <p>
        The ID is: <span th:text="${usbReader.id}"></span>
    </p>
</body>
</html>

推荐阅读