如何将setter值直接传递给网页(thymeleaf)?

时间:2018-04-28 05:55:45

标签: java spring-mvc spring-boot usb thymeleaf

我正在使用 spring boot mvc 。我有一个 usb reader ,它读取并设置用户模型 setID(String id)方法的值。现在我需要在网页 issueCard.html 中打印此setter值。但我发现如何将此setter值传递给页面很困难。

1 个答案:

答案 0 :(得分:0)

我假设您的setter方法设置模型上字段的值。对于该字段,您需要 getter ,因为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>