play!framework框架概述
業務邏輯是在域模型中層里進行管理,客戶端無法直接調用業務邏輯代碼,客戶端是通過資源的URI來訪問域對象。
客戶端使用HTTP協議中提供的統一方法來訪問這些特定資源,并隱式調用底層的業務邏輯。
在play框架中,控制器其實就是一個java類,位于controllers包中,繼承了父類play.mvc.Controller
簡單實例:
public class Clients extends Controller {
public static void show(Long id){
Client client = Client.findById(id);
render(client);
}
public static void delete(Long id){
Client client = Client.findById(id);
client.delete();
}
}
play將所有的模板文件都放在app/views目錄下,所有頁面都是在請求時解析的。
app/views目錄說明:
Application:存放應用主controller程序的模板
errors:存放錯誤頁面模板,例如404/500等
main.html:主頁面模板
play框架的set指令用于設置頁面的標題,這些指令都要進行關閉,最后一行打印歡迎信息
play框架使用render方法來處理參數的傳遞。比如我們在controller中讀取一些數據,病將這些數據傳遞到view中進行顯示。
render(hello),在模板中獲取變量用${hello}
play框架自帶很多的標簽,但是可以自己創建一些,我們現在views目錄下創建名為tags的子目錄。
play框架默認使用jQuery發送Ajax請求。也提供了jsAction標簽透明的從控制器得到一個定義的方法。
play有一個緩存的庫,當需要在分布式的系統中使用時,用的是memcached.如果不配置memcached,play會使用獨立的緩存,將數據存放在jvm的堆中。
當你把數據放進緩存里的時候,你不能期望數據永遠保存在哪里,緩存很快,但是數據會失效,而且環迅通常只存在在內存里(如果沒有持久化備份的話)。
所以使用緩存最好的辦法是在你不需要它的時候清空它。
緩存API是由類play.cache.Cache提供的,這個類包含了一系列的方法,可以設定,替換,得到緩存中的值。
play框架的Scala模塊
play包含了對Scala編程語言的支持,要啟用Scala支持只需要在conf/application.conf文件中配置:
module.scala=${play.path}/modules/scala
接下來就可以在已有的應用中使用scala來編寫代碼,也可以是java和scala混合編碼。
不建議在生產環境中完全使用scala來編寫play應用。
Scala編寫應用的步驟:
創建應用:
play new myApp –with scala
一旦使用這個命令創建應用后,controllers包中的Application.java就變成了Application.scala文件
Scala應用可以直接讓某個方法返回值
def index = “
hello world
”處理Action的參數
def index(name:String) =
hello {name}
還可以定義默認值
def index(name:String = “Guest”) =
hello {name}
如果使用了默認值,那么一旦請求中不包含指定的參數,play會自動用默認值替代。
使用play發送郵件:
可以使用play.libs.Mail工具類發送郵件。
bc.Mail.send(“sender@abc.com”,”recipient@abc.com”,”Subject”,”Message”);
play不是一個需要添加到Servlet容器中的類庫,而是一個可以獨立運行你的應用的全棧式Java框架。
總結
以上是生活随笔為你收集整理的play!framework框架概述的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Scala 类型的类型(一)
- 下一篇: 查看git版本的cmd命令