2016-11-07 46 views
1

我是Spark的新手,我正在使用它與速度模板引擎。從火花傳遞到速度

get("/", (request, response) -> { 
    return new ModelAndView(new HashMap(), "/index.html"); 
}, new VelocityTemplateEngine()); 

正常工作,正如網站上的例子,正確顯示我的HTML。

我需要將一段文字放到我的模板上。我已經通過在實際模板上使用set來管理這一點 - 但我怎麼能從我的spark(java)傳遞到velocity模板?

我不想在這個速度模板上得到任何複雜的東西 - 只是一個簡單的字符串或整數。

我試着看過一些例子,但沒有發生任何事情 - 許多例子似乎與我自己有不同的設置。該代碼我trying-

VelocityContext context = new VelocityContext(); 
        context.put("test", "string"); 
        return new ModelAndView(context, "/index.vtl"); 

我想用測試的名稱和字符串值,如#設置($測試=「字符串」)。這看起來很簡單 - 我習慣用Flask這樣的東西來做這件事,但是我很難找到一個帶有spark的例子。任何人都可以將我指向正確的方向嗎?

回答

1

你的第一個代碼是正確的100%,但你必須填寫所需要的值在Java地圖經過:

get("/", (request, response) -> { 
Map<String, Object> values = new HashMap<>(); 
values.put("name", "Some name"); 
return new ModelAndView(values, "/index.html"); 
}, new VelocityTemplateEngine()); 

和VelocityTemplateEngine是從星火將處理設置你的價值觀進入速度的類上下文並呈現模板。