OA中项目关系,实体设计,映射实体,增删改查
=============== 步驟 ================
1,充分了解需求(包括所有的細節):分析頁面等。
2,設計實體/表
?正向工程:設計實體 --> 建表(推薦):設計實體 --> JavaBean --> hbm.xml --> 建表
?反向工程:設計表 --> 實體
3,分析功能到每個請求的粒度。
?得到的結果是我們需要處理多少種請求,每種請求對應一個Action方法。
4,實現功能:
?1,創建Action,并定義出其中的方法。
?2,實現Action方法,并創建出所用到的新的Service方法。
?3,實現Service方法,并創建出所用到的新的Dao方法。
?4,實現Dao方法。
?5,創建并完成JSP頁面。
5,單元測試與運行測試
========= 系統管理模塊 ==========
增刪改查 + 樹狀結構 + 表單驗證。
?
========= 設計實體 ==========
1,有幾個實體?
?一般是一組增刪改查對應一個實體。
2,實體之間有什么關系?
?一般是頁面引用了其他的實體時,就表示與這個實體有關聯關系。
3,每個實體中都有什么屬性?
?1,主鍵
?2,關聯關系屬性
??在類圖中,關聯關系是一條線,有兩端,每一端對應一個表達此關聯關系的屬性。
??有幾個端指定本類,本類中就有幾個關聯關系屬性。
?3,一般屬性:
??分析所有有關的頁面,找出表單中要填寫的或是在顯示頁面中要顯示的信息等。
?4,特殊屬性:為解決某問題而設計的屬性。
??比如要顯示年齡,但不能設計一個int age字段,而是一個Date birthday字段,年齡是顯示時實時計算出來的。
?
?
========= 映射實體 ==========
1,寫注釋:
?格式為:?屬性,表達的是本對象與?的?關系。例:<!-- department屬性,本對象與Department的多對一 -->
2,拷模板:
?多對一:
??<many-to-one name="" class="" column=""></many-to-one>
?一對多(Set):
??<set name="">
???<key column=""></key>
???<one-to-many class=""/>
??</set>
?多對多(Set):
??<set name="" table="">
???<key column=""></key>
???<many-to-many class="" column=""></many-to-many>
??</set>
3,填空:
?name屬性:屬性名(注釋中的第1問號)
?class屬性:關聯的實體類型(注釋中的第2個問號)
?column屬性:
??<many-to-one column="..">:一般可以寫成屬性名加Id后綴,如屬性為department,則column值寫成departmentId。
??一對多中的<key column="..">:從關聯的對方(對方是多對一)映射中把column值拷貝過來。
??多對多中的<key column="..">:一般可以寫成本對象的名加Id后綴,強本對象名為User,則寫為userId。
??多對多中的<many-to-many column="..">:一般可以寫為關聯對象的名稱加Id后綴。
?
================= 分析增刪改查功能 ==================
增刪改查共4個功能,6個請求,所以需要在Action中有6個對應的處理方法。
作用??方法名??返回值??頁面
------------------------------------------
列表??list()??list??list.jsp
刪除??delete()?toList??actionName="roleAction_list" type="redirectAction"
添加頁面?addUI()??addUI??addUI.jsp
添加??add()??toList
修改頁面?editUI()?editUI??editUI.jsp
修改??edit()??toList
????轉發?重定向
--------------------------------
請求數???1??2
瀏覽器地址欄?不變?變
?
?
Action中添加功能的步驟:
?// 1,新建對象并設置屬性(也可以使用model,但需要設置未封裝的屬性)
?// 2,保存到數據庫
Action中修改功能的步驟:
?// 1,從數據庫中取出原對象
?// 2,設置要修改的屬性
?// 3,更新到數據庫
?
客戶端驗證:JS
服務器端驗證
?
總結
以上是生活随笔為你收集整理的OA中项目关系,实体设计,映射实体,增删改查的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 昆仑润滑油品质好吗?不知道这个品牌算不算
- 下一篇: 科创板都有哪些股票