来自PHP的背景,我习惯于我可以简单地将服务器端脚本嵌入到我的HTML页面中。在线搜索,除了使用像Lift这样的Web框架之外,我还没有在Scala中找到一个简单的echo <h1>Hello World</h1>;
等价物。我可以用Scala做到这一点吗?
答案 0 :(得分:4)
Scalate Scaml非常接近你想要的
Scalate支持以下模板格式
答案 1 :(得分:3)
PHP是一种设计用于嵌入HTML页面的语言的例外。 Apache有mod_php
为您执行此操作。与许多其他语言一样,Scala要求您启动Web服务器以响应请求并呈现HTML。您可以使用Lift或Play等框架,也可以创建基于Servlet的应用程序并将其部署到任何Servlet容器中。
你可以设置一个Apache服务器来运行CGI脚本,然后插入一个由scala
命令运行的.scala文件 - 但它会非常慢每次启动Java VM。我不建议除了搔痒之外的其他任何事情。
答案 2 :(得分:0)
以下是使用 SSP 生成 HTML 模板的方法。
定义模板将访问数据的对象。
object FunStuff {
val dinnertime = "eating stuff!"
}
创建模板:
<% import mrpowers.scalate.example.FunStuff %>
<p>
My message is "<%= List("hi", "there", "reader!").mkString(" ") %>"
At dinnertime, I like <%= FunStuff.dinnertime %>
</p>
渲染模板:
val sourceDataPath = new java.io.File("./src/test/resources/simple_example.ssp").getCanonicalPath
val engine = new TemplateEngine
println(engine.layout(sourceDataPath))
结果如下:
<p>
My message is "hi there reader!"
At dinnertime, I like eating stuff!
</p>