来自 PHP 的背景,我习惯了我可以简单地将服务器端脚本嵌入到我的 HTML 页面中的想法。echo <h1>Hello World</h1>;
在网上搜索,除了使用像 Lift 这样的 web 框架外,我还没有在 Scala 中找到一个简单的等价物。我可以用 Scala 做到这一点吗?
问问题
541 次
3 回答
3
PHP 作为一种旨在嵌入 HTML 页面的语言是一个例外。Apache 必须mod_php
为您执行此操作。Scala 与许多其他语言一样,要求您启动 Web 服务器来响应请求并呈现 HTML。您可以使用 Lift 或 Play 等框架,也可以制作基于 Servlet 的应用程序并将其部署到任何 Servlet 容器中。
您可以设置一个 Apache 服务器来运行 CGI 脚本,然后插入一个 .scala 文件以由该scala
命令运行 - 但它会非常慢,因为它每次都必须启动 Java VM。除了抓挠精神痒之外,我不建议这样做。
于 2013-08-15T19:21:50.567 回答
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>
于 2020-12-22T03:16:25.390 回答