如何使用thymeleaf + Spark-java Web框架在网页中显示消息?

时间:2019-05-06 15:33:32

标签: java thymeleaf spark-java

我正在使用spark-java编写一个小型Web应用程序。我已经将thymeleaf用作模板引擎,而intellij是我一直在使用的IDE。我面临的问题是变量未在网页中呈现,应该呈现。

我已将todaysdate属性传递给模板引擎

public void init() {
    Spark.staticFiles.location("/templates");
    get("/", (req, res) -> {
        Map<String, Object> model = new HashMap<String, Object>();
        DateModel dateModel = getDate();
        String date = "Monday 6, May 2019";
        model.put("todaysdate", date);
        return render(model, "index");
    });
}

private String render(Map<String, Object> model, String pageName){
    return new ThymeleafTemplateEngine().render(
            new ModelAndView(model, pageName)
    );
}

我的html代码包含以下代码片段

<div class="col-2 date" id="currentdate" th:text="${todaysdate}"></div>

但是文本未显示在网页上。 Intellij表示无法解析todaysdate

1 个答案:

答案 0 :(得分:0)

我认为如果删除以下代码,它将显示出来。

Spark.staticFiles.location("/templates");

因为,ThymeleafTemplateEngine使用“ / templates”下的文件。 如果指定了staticFiles.location,则优先。 因此,将输出未模板化的index.html。