我們知道,在Grails項目中使用Grails類創建工具如“grails create-domain-class”等,能幫我們創建domain、service和controller等類及它們的測試類及其他。因此,我們在Grails項目中常常是使用這些工具幫我們創建各種類,而不是直接動手去創建它們。前面,我們已經動手將Grails項目集成到了Eclipse里來,那么,在Eclipse開發平臺上,我們又該如何創建這些對象呢?
在Grails官方網站上,對此有一段說明,詳細的描述了如何在Eclipse上使用這些工具,我將這段內容貼在下面:
你可以將grails配置為一個外部工具(External Tool), 然后就可以創建域對象了,在eclipse里:
1.選擇"Run > External Tools > External Tools...";
2.輸入一個名字,例如:Grails;
3.在文件系統里找到grails.bat(或者*nix下的grails);
4.將工作目錄設置為 ${project_loc};
5.參數設置為 ${string_prompt};
6.在Refresh這個tab里設置"Refresh resources upon completion"為 "project containing the selected resource";
7.在Common里, 在 "Display in favorites menu"里選中現在你可以選擇External Tool后面的下拉按鈕(就是比運行多一個小箱子那個圖標),選擇Grails,
例如:
1.在External Tools的下拉列表里選擇 Grails ;
2.在彈出的對話框里輸入create-domain-class ;
3.在控制臺窗口中根據提示完成命令;
4.在grails-app/domain中打開新創建的類。
上面的藍色字體的這段話,以創建一個domain類為例子,詳細的說明了如何使用Eclipse工具來創建Grails項目的各種類。
但是,上面的工作仍然是粗糙的,因為我們要創建一個domain類或者其他的類,需要四步左右才能完成:
第一步是選擇“Grails”按鈕
第二步是輸入“create-domain-class”命令
第三步是輸入例如“User”這樣的類名
第四步點擊“ok”
基于這樣的原因,我對上面的工具進行了改造。
首先,我需要一個“create-domain-class”按鈕,而不是簡單的“Grails”按鈕,這樣,我點擊“create-domain-class”按鈕,它能直接為我生成domain類。工具的創建步驟如下:
1、選擇"Run > External Tools > External Tools...";
2、輸入一個名字,create-domain-class;
3、在文件系統里找到grails.bat(或者*nix下的grails);
4、將工作目錄設置為 ${project_loc};
5、參數設置為create-domain-class ${string_prompt};
6、在Refresh這個tab里設置"Refresh resources upon completion"為 "project containing the selected resource";
7、在Common里, 在 "Display in favorites menu"里選中
可以看到,與官方提供的方法不同在于紅色標出的第二步和第五步。如下圖:
這樣,我們需要創建一個domain類的話,只需要下面的步驟:
第一步是點擊“create-domain-class”按鈕
第二步是輸入“User”類名
第三步是點擊“ok”
這樣就不需要我們去記憶那些“create-domain-class”或者“create-service”或者其他命令,同時也為我們省了一個步驟。
同樣的方法,我們可以生成“create-service”命令、“create-controller”和“generate-all”等命令。
通過上面的方法,我們已經在Eclipse平臺將Grails命令做了一個簡化,但是仍然不能滿足我的要求。因為在我們實際的項目中,我們需要將形如“User”這樣的類放在一個個包里,如“com.windflower.oa.login”這樣的包。
在Grails的官方網站,告訴我們,使用“create-domain-class”命令生成“User”類以后,將該類轉移到形如“com.windflower.oa.login”這樣的包里。這樣的方法顯然是有點復雜了。我們也可以通過上面的Eclipse工具來給我們幫忙:
1、選擇"Run > External Tools > External Tools...";
2、輸入一個名字,create-domain-class;
3、在文件系統里找到grails.bat(或者*nix下的grails);
4、將工作目錄設置為 ${project_loc};
5、參數設置為create-domain-class com.windflower.oa.${string_prompt};
6、在Refresh這個tab里設置"Refresh resources upon completion"為 "project containing the selected resource";
7、在Common里, 在 "Display in favorites menu"里選中
可以看到,與上面的方法不同在于紅色標出的第五步,在第五步里加入了包名。這樣,我們使用如下的步驟創建帶包名的類了:
第一步是點擊“create-domain-class”按鈕
第二步是輸入“login.User”類名
第三步是點擊“ok”
這樣就可以生成“com.windflower.oa.login.User”類了。
同樣的方法,我們可以生成“create-service”命令、“create-controller”和“generate-all”等命令為各種類帶上包名。
轉載自:
http://blog.csdn.net/hivon/archive/2008/04/13/2288770.aspx
杰森
郵箱:json.shen(at)gmail.com
網站:www.shenjia.org
posted on 2008-05-15 16:54
杰森 閱讀(480)
評論(1) 編輯 收藏 所屬分類:
Groovy&Grails