Gracelets視圖/控制器技術(shù)
Gracelets = Groovy + Facelets
為了解決一個(gè)特殊問題,你可以定義自己的DSL,Raven使用DSL來寫build腳本,但你可以使用DSL來生成XML內(nèi)容,RSS內(nèi)容,HTML頁,SQL語句,建立swing應(yīng)用或執(zhí)行單位換算。
但什么是Gracelets?它是做什么的?
Gracelets是一種視圖/控制器技術(shù),工作于JSP/Facelets之上,它允許使用DSL寫你自己的視圖,有了Gracelets,你就可以用比實(shí)際JSF/Facelets頁更少的代碼來寫你的應(yīng)用程序視圖。
實(shí)際上,一般你會使用以下的代碼來寫一個(gè)簡單的JSF/Facelets頁:
<?xml version=‘1.0′ encoding=‘iso-8859-1′?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html">
<head>
<title>Hello World Example</title>
</head>
<body>
<h:outputLink value="http://somesite/somepage">
<h:graphicImage url="someimg.png" border="0"/>
</h:outputLink>
</body>
</html>
使用Gracelets,你只需寫:
xh.html {
head { title("Hello World Example") }
body {
xh.a(href: "http://somesite/somepage") {
h.graphicImage(url: "someimg.png", style: "border: 0")
}
}
}
很簡單,對吧?
你對Gracelets有興趣了嗎?別著急,你可以通過這里查看它的一些例子程序。
