今天進入可開發前的准備階段
在開發項目前
要求每位開發小組成員都必須先閱讀以下約定
嚴格按以下約定來進行開發
系統框架
·系統總框架采用SUN J
EE框架
使用JAVA/XML技術和組件技術
基於Application server開發
·項目中的程序必須嚴格按J
EE
規范來編碼
EJB建議采用
規范編碼
盡可能多使用EJB 模式設計
參考技術文檔如下
《J
EE Tutorial》
j
ee
_
doc
tutorial
draft
pdf
《JBoss
Quick Start Guide》
《EJB Design Patterns》
開發環境
·測試用Application server采用JAS
JAS 配置於Linux OS下
IP地址
登錄用戶名
J
EEOA
密碼
J
EEOA
登錄ftp工具建議使用SSH Secure Shell或LeapFTP
ftp地址為
:
·項目開發源碼目錄為/home/local/jboss/applications/J
EEOA/src
項目開發文檔目錄為/home/product/J
EEOA/
· 數據庫服務器IP為
數據庫采用Mysql
管理工具為phpadmin
登錄數據庫的用戶名為test
密碼為test
源代碼目錄規范
每位開發小組成員一定要絕對遵守以下創建源代碼目錄的規范
項目開發目錄結構簡圖
|
apps
|
J
EEOA
|
admin
|
components
|
a component
|
modules
|
a module
|
lib
|
ant
|
build
properties
圖片
項目開發目錄結構圖
項目開發目錄結構說明
\ (說明
根目錄)
|
apps (說明
此目錄下放應用程序的代碼)
|
J
EEOA (說明
此目錄為放J
EEOA應用程序的代碼)
|
admin (說明
此目錄為放項目的admin應用程序的代碼)
|
components (說明
此目錄下放應用程序組件的代碼)
|
a component (說明
此目錄為放一個組件的代碼)
|
modules (說明
此目錄下放應用程序模塊的代碼)
|
a module (說明
此目錄為放一個模塊的代碼)
|
lib (說明
此目錄下放項目開發工具)
|
ant (說明
Ant工具
包括bin和lin目錄)
|
build
properties
(說明
此文件定義項目開發共用的環境變量
如jboss
home
nfiguration
servlet
lib
path等)
模塊
組件開發目錄結構簡圖
|
build
|
etc
|
multi
langs
|
lib
|
docs
|
ejb
|
META
INF
|
j
ee
|
META
INF
|
web
|
WEB
INF
|
src
|
ejb
|
javabean
|
servlet
|
web
|
build
bat
|
build
sh
|
build
xml
圖片
模塊
組件目錄結構圖
說明
src
etc目錄和build
bat
build
sh
build
xml為開發人員建立的目錄
build和lib目錄為由ant工具生成的目錄
模塊
組件開發目錄結構說明
\ (說明
一個模塊或一個組件的根目錄)
|
build (說明
保存由ant工具生成的擴展名為jar
war
ear等文件)
|
etc
(說明
存放部署文件
如web
xml
ejb
jar
xml
application
xml
jaws
xml
jbosscmp
jdbc
xml等)
|
multi
langs (說明
存放多語言資源文件
擴展名為properties
)
|
lib (說明
保存由ant工具生成的API文件
class文件等)
|
docs
|
api
|
ejb
|
META
INF
|
j
ee
|
META
INF
|
web
|
WEB
INF
|
src (說明
存放源代碼
包括java和jsp代碼
下面有四個目錄
)
|
ejb (說明
采用EJB進行開發
存放EJB和Helper Classes源代碼
)
|
javabean (說明
采用Javabean進行開發
存放Javabean和Helper Classes源代碼
)
|
servlet (說明
存放Servlet源代碼
)
|
web (說明
存放JSP源代碼
)
|
build
bat (說明
在Window OS下
進行build的文件
)
|
build
sh (說明
在Unix OS下
進行build的文件
)
|
build
xml (說明
Ant工具要build的目標文件
)
應用程序開發目錄結構簡圖
|
build
|
etc
|
lib
|
docs
|
ejb
|
META
INF
|
j
ee
|
META
INF
|
web
|
WEB
INF
|
team
|
a member
|
ejb
|
javabean
|
web
|
build
bat
|
build
sh
|
build
xml
|
build
properties
圖片
應用程序目錄結構圖
應用程序開發目錄結構
由於項目由多個程序員一起來進行編碼
所以應用程序開發目錄結構和模塊
組件開發目錄結構的不一樣
應用程序開發目錄結構沒有src目錄
但多了一個team目錄
此目錄存放所有程序員的classes和Jsp代碼
應用程序開發目錄結構下build
xml和模塊
組件開發目錄結構下的build
xml有很大不同
由項目組長負責管理etc目錄
build
xml
build
bat
build
sh
build
properties
程序員分別管理team目錄下的屬於自己的目錄
如程序員tom管理team/tom目錄
build
xml編碼規范
· 應用程序目錄下的build
xml
源代碼
應用程序目錄下的build
xml規范模板
說明
在建立build
xml時
組長只需修改創建的時間和變量ProjectName等
模塊
組件目錄下的build
xml
源代碼
模塊
組件目錄下的build
xml規范模板
說明
在建立build
xml時
開發人員只需修改創建的時間和和變量ProjectName
componentName等
編碼規范
· 項目中的JAVA源代碼必須按《JAVA開發規范》
·項目中的JSP代碼必須按《JSP開發規范》
· 每位開發小組成員在開發項目時都嚴格按此規范來進行編寫程序
讓項目中所有的文檔都看起來像一個人寫的
增加可讀性
減少項目組中因為換人而帶來的損失
· 每位開發小組成員一定要絕對遵守這個規范
當實際應用與下面的規范相抵觸時
記錄下原因
潛在後果
以及符合規范需要的條件
但必須是在讓程序有良好的可讀性的前提下
功能模塊
在做業務邏輯模塊前
先把一些准備工作做出來
建立一些公用的bean(項目中稱為系統控制器controller)
包名為ntroller
*
提供給系統各模塊使用
包括對時間
字符的操作
調試器
軟件國際化
多語言版本
系統的WEB外殼
MVC模式的Servlet和Action
對WEB頁面顯示的控制如樹結構
路徑結構
等等
建立一個序列發生器
包名為com
cwap
oa
sequencegenerator
*
提供給bean使用
它用來產生一個唯一的ID
而且也可用來計數
也就是把它當成計數器使用
介紹如何取id的方法的文字要寫在bean的代碼內
以便生成API後供其它開發人員參閱
建立一個ServerFacade
它為EJB Home提供統一的接口
ServerFacade為程序要用到的所有EJB的home handle提供緩存
提高訪問效率
以後查找JNDI Name的方法都應寫在接口裡
調用時直接從接口調用
建立一個翻頁控制器
包名為ntroller
web
page*
用來進行分頁顯示的管理
以後頁面中的分頁都由翻頁控制器管理
異常處理和日志
· 程序中所有的異常處理使用統一的調試器
bean的名稱為ntroller
util
Debug
用法見項目API
· 程序中所有的日志使用Jakarta
log
j管理
包的名稱為log
j
jar
官方URL
Session
· 放在session中的變量統一放在一個bean裡存儲
不直接把session變量名稱放在JSP
Servlet或Bean內
存儲session變量名稱的bean為ntroller
web
util
WebKeys
取session變量名的方法為getXX()
· 取session變量的值的方法統一放在一個bean裡
bean的名稱為ntroller
web
util
JSPUtil
取session變量值的方法為getXX()
之後要取session變量值就調用JSPUtil中對應的方法
· 當前系統中已知的session變量名有
userid
userName
locale
skin
等
userid為用戶標識
userName為用戶名稱
locale為用戶選擇的地域
skin為用戶選擇的界面風格
DAO
使用DAO封裝SQL語言對數據庫的直接操作
DAO采用Factory模式編寫
組件
所有的業務邏輯使用組件技術
每個組件內同時提供EJB版本和DAO版本兩種的方法
不推薦直接使用EJB版本和DAO版本的方法
<
From:http://tw.wingwit.com/Article/program/Java/hx/201311/26157.html