Open-JWeb(Java Web)
快速開發(fā)平臺(tái)用戶操作手冊(cè)
王保政
QQ:29803446
聲明:從即日
說明:
1、本文中的紅字部分為待實(shí)現(xiàn)功能。藍(lán)字部分為關(guān)鍵的正在開發(fā)的功能。
2、此快速平臺(tái)的出現(xiàn),證明了 Java Web 應(yīng)用程序也可以進(jìn)行 RAD 開發(fā),也縮短了與 .NET 平臺(tái)在快速開發(fā)方面存在的差距。
一、
????????????
用戶登錄
在瀏覽器地址欄輸入登錄頁(yè)面的連接地址: http://localhost:8084/system
說明:如果服務(wù)器安裝在別的地址和端口,請(qǐng)根據(jù)安裝的地址和端口來訪問登錄頁(yè)面。
( 由于本平臺(tái)與 CAS 單點(diǎn)登錄進(jìn)行了集成,所以按 CAS 單點(diǎn)登錄配置的應(yīng)用和不連接 CAS 的方式,兩種方式訪問的登錄連接是不一樣的,上面的連接地址是不連接 CAS 的訪問方式。 )
登錄的用戶名和口令:
用戶名為 admin, 口令為 123456
登錄頁(yè)面:
輸入用戶名和口令后,點(diǎn)登錄按鈕進(jìn)入系統(tǒng)管理。
二、
????????????
數(shù)據(jù)字典類型定義
選擇開發(fā)平臺(tái) - 系統(tǒng)數(shù)據(jù)管理 - 數(shù)據(jù)字典類型定義,此功能維護(hù)系統(tǒng)使用的數(shù)據(jù)字典類型,平臺(tái)已預(yù)先定義了一些數(shù)據(jù)字典類型,敬請(qǐng)不要修改和刪除。
下面是功能列表頁(yè)面:
用戶在使用數(shù)據(jù)字典類型定義時(shí),可根據(jù)自己的需要來添加業(yè)務(wù)系統(tǒng)的數(shù)據(jù)字典類型,例如商品維護(hù)需要使用計(jì)量單位,則可以增加一個(gè)計(jì)量單位數(shù)據(jù)字典類型。
下面演示一個(gè)計(jì)量單位數(shù)據(jù)字典類型的添加過程:
點(diǎn)上圖的“新增”按鈕,顯示一個(gè)新增頁(yè)面:
數(shù)據(jù)字典類型輸入 PRO_UNIT, 名稱輸入物品計(jì)量單位,然后保存。點(diǎn)“返回”按鈕可返回到列表頁(yè)面。
l ?????? 修改功能 :
在列表頁(yè)面打勾選擇一行記錄,點(diǎn)修改,進(jìn)入修改頁(yè)面,更改相關(guān)數(shù)據(jù)項(xiàng)后保存。注意如果數(shù)據(jù)字典類型字段的值被其他表引用的話,更改會(huì)失敗,通常是更改數(shù)據(jù)字典類型的名稱。
l ?????? 刪除功能 :
在列表頁(yè)面可勾選多行記錄 , 然后點(diǎn)“刪除”功能刪除記錄。
關(guān)于列表頁(yè)面的翻頁(yè):
所有增刪改查列表頁(yè)面都使用了上圖的樣式,點(diǎn)“總數(shù)”按鈕顯示總頁(yè)數(shù)和記錄數(shù),每組顯示 5 頁(yè)連接,每頁(yè)顯示行數(shù)可以自己設(shè)置,默認(rèn)為 10 。
關(guān)于列表頁(yè)面的排序:
列標(biāo)題欄帶下劃線的文字可點(diǎn)擊排序,點(diǎn)擊一次按點(diǎn)擊列的升序排列,再點(diǎn)一次按降序排列。見下圖:
關(guān)于列表頁(yè)面的查詢:
查詢內(nèi)容為下拉的查詢條件字段,當(dāng)選擇的查詢條件列為從數(shù)據(jù)字典字段取值的列或者具有代碼名稱對(duì)照的列如:性別 -M ,則右側(cè)的字段值為一個(gè)下拉選擇框,否則顯示的是文本輸入框,設(shè)置好條件后點(diǎn)“查詢”即可顯示查詢結(jié)果。如果沒有定義任何查詢列,則按無查詢條件進(jìn)行查詢。
查詢內(nèi)容中的下拉字段是可以配置的,即可由用戶來定義這個(gè)頁(yè)面哪些字段作為查詢條件字段,這個(gè)功能將在表字段元數(shù)據(jù)維護(hù)功能中說明。
定制查詢:可定義組合的查詢條件(目前暫未實(shí)現(xiàn))。
幫助:目前暫未實(shí)現(xiàn)。
三、
????????????
數(shù)據(jù)字典定義
功能說明:為每一數(shù)據(jù)字典類型定義數(shù)據(jù)字典集合。例如計(jì)量單位數(shù)據(jù)字典類型下可定義公斤、件、箱等物品計(jì)量單位。列表頁(yè)面見下圖:
以物品計(jì)量單位為例,在列表頁(yè)面點(diǎn)“新增”按鈕,進(jìn)入新增頁(yè)面,填寫內(nèi)容后保存,見下圖:
四、
????????????
表基本信息維護(hù)
功能說明:
(1) ?????? 新增:增加一個(gè)表的說明,此功能維護(hù)需要說明的是,表名對(duì)應(yīng)的是數(shù)據(jù)庫(kù)的表名,實(shí)體類名是表對(duì)應(yīng)的實(shí)體類名 ( 包含類路徑 ) ,這個(gè)類是對(duì)應(yīng)此表的實(shí)體類,所以一定不要寫錯(cuò)類名,否則在運(yùn)行中可能會(huì)出錯(cuò)。
(2) ?????? 修改:選擇一條記錄修改,見下圖:
(3) ?????? 刪除:刪除記錄。
(4) ?????? 定義字段 :定義一個(gè)表包含的字段,如果需要使用建表功能,則字段定義完確認(rèn)無誤后才可以建表(定義字段目前是單獨(dú)的一個(gè)功能,見下文,此按鈕暫未建立功能連接)。
(5) ?????? 生成庫(kù)表 :當(dāng)表和表字段定義好后,點(diǎn)此按鈕在數(shù)據(jù)庫(kù)中創(chuàng)建表。(此功能正在開發(fā)中)。
(6) ?????? 編譯部署 : 當(dāng)表在數(shù)據(jù)庫(kù)中創(chuàng)建以后,點(diǎn)編譯部署后系統(tǒng)會(huì)自動(dòng)創(chuàng)建 Hibernate 映射文件,生成相應(yīng)的 POJO 類,及在 EntityContainer 類中注冊(cè)此實(shí)體,并自動(dòng)在功能樹中創(chuàng)建功能節(jié)點(diǎn)并生成相應(yīng)的增刪改查頁(yè)面(并自動(dòng)創(chuàng)建訪問權(quán)限)。以上操作完成后自動(dòng)編譯程序。此功能需要在服務(wù)器端調(diào)用。(目前此功能正在開發(fā)中)。
五、
????????????
表字段基本信息維護(hù)
(
列表樣式
)
此功能是定義一個(gè)表的字段基本信息,在快速開發(fā)平臺(tái)中,此功能點(diǎn)非常重要,因?yàn)樽侄涡畔⒕S護(hù)不僅定義了用于建表的字段信息,還定義了字段在維護(hù)頁(yè)面中的展示樣式(如輸入框、下拉框),并定義此字段是否在查詢條件下拉框中顯示,還定義了此字段如果是數(shù)據(jù)字典取值,則對(duì)應(yīng)哪個(gè)數(shù)據(jù)字典類型,動(dòng)態(tài)創(chuàng)建功能節(jié)點(diǎn)將根據(jù)此字段的展示樣式來創(chuàng)建 JSP 頁(yè)面。
使用此功能維護(hù)數(shù)據(jù)時(shí),可先查詢出需要增加字段的表的記錄,查看哪些字段已添加,然后點(diǎn)新增按鈕定義表字段,見下圖列表頁(yè)面:
編輯頁(yè)面:
編輯頁(yè)面的字段說明:
是否查詢條件列勾選項(xiàng):用于設(shè)置是否在列表頁(yè)中的查詢條件下拉框作為查詢條件列顯示。
是否在列表頁(yè)面展示下拉框:勾選此項(xiàng)后,在動(dòng)態(tài)生成列表頁(yè)面時(shí)此字段可在列表頁(yè)面顯示。
是否在編輯頁(yè)面顯示:勾選此項(xiàng)后,在動(dòng)態(tài)生成編輯頁(yè)面時(shí)此字段可在編輯頁(yè)面顯示。
編輯頁(yè)面輸入方式:在動(dòng)態(tài)生成頁(yè)面時(shí),此字段對(duì)應(yīng)的輸入欄的輸入方式,包括輸入框、多行輸入框、下拉列表、 checkbox 等樣式,動(dòng)態(tài)生成頁(yè)面根據(jù)此字段的定義,在生成的頁(yè)面中按定義的輸入類型生成對(duì)應(yīng)的頁(yè)面元素。
數(shù)據(jù)字典類型:如果此字段為從數(shù)據(jù)字典表取值,這里選擇對(duì)應(yīng)的數(shù)據(jù)字典類型。
代碼表名值對(duì) SQL :如果此字段不是從數(shù)據(jù)字典中取值,但是關(guān)聯(lián)到某個(gè)表的代碼列,那么此字段的值的取值范圍為關(guān)聯(lián)表的字段值,顯示名稱則為關(guān)聯(lián)表對(duì)應(yīng)記錄的名稱列,上圖的 SQL:select dict_type_code,dict_type_name from eas_dict_type 表明此字段的取值范圍是 eas_dict_type 表的 dict_type_code 字段,在下拉列表中的顯示文字對(duì)應(yīng) dict_type_name 字段。
說明:當(dāng)通過動(dòng)態(tài)生成增刪改查頁(yè)面 4 ,有下拉列表的列會(huì)自動(dòng)根據(jù)上面定義的規(guī)則創(chuàng)建一個(gè)下拉列表。
六、
????????????
內(nèi)容管理
內(nèi)容管理的信息編輯與發(fā)布功能提供了信息的編輯與發(fā)布功能,內(nèi)容編輯器為所見即所得的編輯界面,可以粘貼 WORD 及 HTML 格式的文件,可以上傳圖片和 flash 文件,信息發(fā)布后可自動(dòng)生成靜態(tài)的 HTML 頁(yè)面。
此功能可用于網(wǎng)站 CMS 管理系統(tǒng),博客系統(tǒng)可用于 BLOG 的發(fā)布,信息列表頁(yè)面如下:
點(diǎn)擊信息標(biāo)題連接可以查看此信息發(fā)布后的靜態(tài) html 頁(yè)面。
編輯頁(yè)面的樣式:
編輯頁(yè)面是所見即所得的頁(yè)面,可隨意改變文字的大小,字體及顏色等,也可以插入圖片,保存信息后自動(dòng)生成靜態(tài) html 文件(同時(shí)也保存在數(shù)據(jù)庫(kù)中)。
七、
????????????
功能菜單維護(hù)
功能說明:此功能維護(hù)動(dòng)態(tài)創(chuàng)建的功能點(diǎn),通過此功能的 ” 生成功能代碼 ” 按鈕,系統(tǒng)可為選擇的領(lǐng)域?qū)ο髣?chuàng)建一個(gè)增刪改查的頁(yè)面,另外自動(dòng)在功能樹中建立一個(gè)功能連接,并且在 WEB-INF/classes 的 xwork.xml 中增加對(duì)應(yīng)的配置代碼。下圖是列表頁(yè)面:
編輯頁(yè)面:
此頁(yè)面定義了一個(gè)功能點(diǎn),功能名為“動(dòng)態(tài)功能測(cè)試“,權(quán)限碼為 AUTH11, 功能導(dǎo)航條文字及對(duì)應(yīng)的維護(hù)對(duì)象,本示例為 BLOG 信息表維護(hù)。
如何創(chuàng)建功能點(diǎn)?在上面的列表頁(yè)面選擇第二條記錄,點(diǎn)生成功能代碼按鈕,刷新頁(yè)面時(shí),左側(cè)功能樹在動(dòng)態(tài)功能的節(jié)點(diǎn)下會(huì)增加新的功能節(jié)點(diǎn),點(diǎn)此新的功能節(jié)點(diǎn)可以看到一個(gè)列表頁(yè),此頁(yè)面不同之處在于這是通過頁(yè)面模板定制動(dòng)態(tài)生成出來的,在開發(fā)過程中使用模板創(chuàng)建頁(yè)面非常快速和方便,見下圖:
編輯頁(yè)面也是動(dòng)態(tài)創(chuàng)建出來的,見下圖:
上圖中,文字輸入框和下拉列表框都是在表字段基本信息維護(hù)中定義好的輸入方式,創(chuàng)建頁(yè)面時(shí)根據(jù)定義的輸入方式來生成不同的頁(yè)面元素。
八、
????????????
組織結(jié)構(gòu)與權(quán)限-組織結(jié)構(gòu)維護(hù)
組織結(jié)構(gòu)維護(hù)中維護(hù)的基本信息目前僅包括了組織結(jié)構(gòu)名稱和組織結(jié)構(gòu)類型,因?yàn)榻M織結(jié)構(gòu)的詳細(xì)信息在具體的項(xiàng)目中有差異,詳細(xì)信息的維護(hù)可以在二次開發(fā)中實(shí)現(xiàn)。
組織結(jié)構(gòu)的類型在數(shù)據(jù)字段已做了定義,大致包括:公司、部門、崗位、子公司、項(xiàng)目組或用戶組、庫(kù)房、門店、人員等,甚至可以包括分銷代理商、供應(yīng)商、客戶等。
功能樹的編碼由系統(tǒng)自動(dòng)生成。
添加子節(jié)點(diǎn) :選擇一個(gè)組織結(jié)構(gòu)樹節(jié)點(diǎn),在此節(jié)點(diǎn)下增加一個(gè)子節(jié)點(diǎn),如在單位下增加一個(gè)部門,或者在部門下增加一個(gè)子部門或員工。
添加同級(jí)節(jié)點(diǎn) :在所選節(jié)點(diǎn)的同一級(jí)別下增加一個(gè)兄弟節(jié)點(diǎn)(有共同的父節(jié)點(diǎn))。
保存 :保存更改(如果節(jié)點(diǎn)的名稱改變,左側(cè)樹對(duì)應(yīng)的節(jié)點(diǎn)名相應(yīng)地改變)。
刪除 :刪除節(jié)點(diǎn)(左側(cè)樹中同時(shí)刪除對(duì)應(yīng)的節(jié)點(diǎn))。
角色授權(quán) :將指定的角色授予給一個(gè)組織結(jié)構(gòu),最常用的就是將一系列角色授予給一個(gè)人。見下圖:
詳細(xì)信息維護(hù) :對(duì)于公司、部門、個(gè)人的詳細(xì)信息的內(nèi)容是不同的,目前實(shí)現(xiàn)的是個(gè)人登錄帳號(hào)的信息維護(hù),在組織結(jié)構(gòu)樹中選擇一個(gè)人,然后點(diǎn)擊詳細(xì)信息維護(hù),系統(tǒng)顯示用戶登錄帳號(hào)信息的維護(hù)頁(yè)面,見下圖:
用戶口令在數(shù)據(jù)庫(kù)中是以 MD5 加密的方式存儲(chǔ)的。
查看權(quán)限 :由于在設(shè)計(jì)時(shí)按照權(quán)限疊加的方式進(jìn)行權(quán)限計(jì)算,所以這里列出一個(gè)組織結(jié)構(gòu)的權(quán)限來源和權(quán)限匯總。同一權(quán)限 ID 可能從上級(jí)或上上級(jí)節(jié)點(diǎn)繼承下來的,也可能是被另外的用戶權(quán)限委托過來的,此功能正在開發(fā)中。
九、
????????????
角色基本信息維護(hù)
定義不同子系統(tǒng)的角色。角色是針對(duì)子系統(tǒng)的,權(quán)限 ID 也是針對(duì)子系統(tǒng)的,同一子系統(tǒng)的角色可獲得屬于本子系統(tǒng)的權(quán)限,不允許獲得其他子系統(tǒng)的權(quán)限。下面是角色的列表頁(yè)面:
編輯頁(yè)面:
列表頁(yè)面中的 權(quán)限分配 按鈕功能是建立角色和權(quán)限的對(duì)照關(guān)系,點(diǎn)此按鈕時(shí)彈出一個(gè)維護(hù)窗口:
組織結(jié)構(gòu)分配功能是將角色授權(quán)給哪些組織機(jī)構(gòu),目前暫未實(shí)現(xiàn),可在組織結(jié)構(gòu)維護(hù)中將角色授權(quán)給組織機(jī)構(gòu)。
十、
????????????
B
業(yè)務(wù)說明:在企業(yè)的應(yīng)用系統(tǒng)中,用戶的類型有本企業(yè)內(nèi)部用戶、針對(duì)電子商務(wù)和
ERP
系統(tǒng)可能有供應(yīng)商和客戶用戶及分銷代理商客戶,這些類型的用戶量相對(duì)比較少,而對(duì)于
B
十一、權(quán)限基本信息維護(hù)
此功能維護(hù)權(quán)限基本信息,一般權(quán)限的分類包括對(duì) Web 資源的授權(quán),如對(duì)某頁(yè)面的訪問權(quán),對(duì)某 Web 目錄的訪問權(quán),功能按鈕的授權(quán),功能連接的操作權(quán)限,業(yè)務(wù)方法的權(quán)限,領(lǐng)域?qū)ο髾?quán)限(數(shù)據(jù)權(quán)限)等,此權(quán)限的權(quán)限編碼統(tǒng)一以 AUTH_ 作為前綴,此權(quán)限集合可授權(quán)給角色,而角色與用戶是關(guān)聯(lián)的,因而用戶可間接得到一個(gè)權(quán)限集合。本平臺(tái)集成了 Acegi 安全框架,使用的權(quán)限集合就是此功能維護(hù)的數(shù)據(jù)。
十二、
Web
資源授權(quán)
此功能是一個(gè)非常重要的權(quán)限控制功能,可在運(yùn)行時(shí)動(dòng)態(tài)地將一個(gè) WEB 資源的訪問權(quán)限授予給指定的權(quán)限 ID ,也可以收回。權(quán)限更改后在約兩分鐘后生效,不需要重新啟動(dòng)應(yīng)用,見下圖:
上面的編輯界面將 web 應(yīng)用的 testcase 目錄下的所有資源(如 jsp 頁(yè)面,其他文件等)
的訪問權(quán)限授予給 AUTH_USER 和 AUTH_ADMIN 權(quán)限,如果登錄用戶沒有這兩個(gè)權(quán)限中的一個(gè)權(quán)限則不能訪問 testcase 目錄下的所有內(nèi)容。從列表頁(yè)中看出, index.jsp 被授予給了 AUTH_USER 用戶。利用 acegi 強(qiáng)大的權(quán)限管理功能,可以建立一個(gè)功能非常權(quán)限的權(quán)限管理系統(tǒng)。
十三、綜合查詢
(1)綜合查詢后臺(tái)維護(hù)-數(shù)據(jù)源定義:
定義綜合查詢報(bào)表、圖表使用到的數(shù)據(jù)源:
業(yè)務(wù)說明:
企業(yè)的綜合查詢系統(tǒng)是關(guān)聯(lián)到多個(gè)數(shù)據(jù)源的,這里定義報(bào)表、圖表的綜合查詢需要訪問的數(shù)據(jù)源的連接方式。
(2)報(bào)表/圖表定義
定義報(bào)表/圖表使用的數(shù)據(jù)源,相應(yīng)的 SQL 語(yǔ)句,圖表展示樣式(如二維餅圖,三維直方圖等)等,列表頁(yè)面:
綜合查詢圖表:
平臺(tái)的示例中包括了:機(jī)組日發(fā)電量統(tǒng)計(jì)、機(jī)組發(fā)電量對(duì)比分析、機(jī)組月份發(fā)電量統(tǒng)計(jì)、機(jī)組日發(fā)電量條形圖、機(jī)組發(fā)電量三維餅圖,查詢?nèi)掌谡?qǐng)從2007年1月1日開始( demo 數(shù)據(jù)只有一月份的)。
執(zhí)行查詢后的圖形:
(1) ?? 機(jī)組日發(fā)電量統(tǒng)計(jì)曲線圖
(2) ?? 機(jī)組發(fā)電量對(duì)比分析
(3) 機(jī)組月份發(fā)電量統(tǒng)計(jì)
(4) 機(jī)組日發(fā)電量條形圖
(5) 機(jī)組發(fā)電量三維餅圖
綜合查詢-報(bào)表:
報(bào)表是基于 JasperReport 開發(fā)的報(bào)表,其中生成出來的報(bào)表直接按照 PDF 格式展示(正常支持中文),可在功能樹中點(diǎn)綜合查詢(報(bào)表)下的報(bào)表功能點(diǎn),在頁(yè)面中點(diǎn)執(zhí)行查詢(按條件檢索的功能正在進(jìn)行開發(fā))。
十三、其他說明
以上開發(fā)的內(nèi)容從2007年11月19日開始,到2008年1月18日截止,利用業(yè)余時(shí)間開發(fā),歷時(shí)兩個(gè)月時(shí)間,產(chǎn)品命名為 Open-JWeb, 版本為 1.0 版,主要實(shí)現(xiàn)了增刪改查快速開發(fā)功能和權(quán)限管理,這個(gè)將作為 JavaWeb 應(yīng)用快速開發(fā)的最基礎(chǔ)的平臺(tái),以后的業(yè)務(wù)平臺(tái),工作流平臺(tái), BI 工具等將在繼續(xù)在此基礎(chǔ)上進(jìn)行開發(fā)。基礎(chǔ)平臺(tái)與其他平臺(tái)應(yīng)該是松耦合的。
本平臺(tái)在技術(shù)上采用了 Spring+struts+webwork+hibernate+acegi+dwr 技術(shù),其中針對(duì)樹形列表的頁(yè)面及在線編輯器部分采用了 struts 控制層,增刪改查的控制層和頁(yè)面采用了 webwork 作為核心控制層。
本文介紹了本平臺(tái)的使用說明,產(chǎn)品平臺(tái)的開發(fā)手冊(cè)在另外的文章里介紹。
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號(hào)聯(lián)系: 360901061
您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對(duì)您有幫助就好】元
