用 MyEclipse, 就有必要把 MyEclipse 快速開發(fā)的功能熟悉一下. 當我們熟悉了基本的開發(fā)過程之后, 就需要考慮用順手的 IDE 來讓我們的開發(fā)速度有個飛躍了.
這次討論的主題包括: Hibernate 快速開發(fā), Spring 快速開發(fā), Struts 登錄應用開發(fā), UML 建模, 可視化Swing界面開發(fā)這些個內容.
首先就是大家可以看 MyEclipse 的幫助文檔進行學習了, 里面很全, 圖文并茂, 唯一缺點呢就是文檔是英文的. 具體方法:
菜單 Help -> Help Contents, 然后會在瀏覽器里打開 MyEclipse 幫助文檔, 展開左邊的 MyEclipse Learning Center, 就能看到詳細的開發(fā)教程了. 其中 "JEE Application Development" 的部分是我們重點關注的內容.
使用的開發(fā)工具是 MyEclipse 5.5.1 GA, Windows/Linux 版本均可.
好了, 現(xiàn)在簡單介紹一下 用 MyEclipse 2 分鐘開發(fā)一個 Hibernate 應用的步驟.
1. 在 MyEclipse 視圖下的 Servers 面板上, 啟動 MyEclipse Derby 這個服務器. 相信大家都很熟悉這個過程了.
2. 選擇菜單 Window -> Open Persipective -> MyEclipse Database Explorer, 打開新的數(shù)據庫瀏覽視圖.
3. 在最左邊的 DB Browser 面板下選中 MyEclipse Derby 項, 點擊右鍵并選擇彈出菜單中的菜單項 Open Connection 來打開數(shù)據庫連接并顯示所有的數(shù)據庫和表格.
4. 展開 MyEclipse Derby 節(jié)點, 單擊選中第一項 Connected to MyEclipse Derby, 點擊右鍵并選擇彈出菜單中的菜單項 New SQL Editor.
5. 在 SQL 編輯器里鍵入下列建表語句:
create table testUser(
id int not null,
username varchar(200),
age int,
primary key ("ID")
)
, 然后點擊編輯器上面的綠色的運行向右箭頭按鈕來創(chuàng)建表格.
6. 新建一個 Java Project 名字為 MyHibernateTest, 這個過程無需贅述了, 建議建項目的時候將 src 目錄和 bin(或者classes)目錄分開, 另外提示你切換透視圖的時候一定要切換過去到 Java 透視圖, 此時默認會在 Package Explorer 中選中剛才已經建好的 Java Project, 但是背景為灰色.
7. 首先單擊一下左邊的 Package Explorer 中新建的 MyHibernateTest 項目來使其高亮選中, 接著點擊菜單項 MyEclipse -> Add Hibernate Capabilities..., 接著會彈出對話框 New Hibernate Project 提示你設置當前項目的 Hibernate 屬性.
對話框的第一頁選擇 Hibernate 3.1, 其它保持默認;
第二頁同樣如此, 保持默認來創(chuàng)建新的 Hibernate 配置文件;
第三頁Specify Hibernate database connection details則點擊 DB Driver 下拉框選擇 MyEclipse Derby, 這時候下面的輸入框會自動填好數(shù)據庫連接對應的值.
第四頁 Define SessionFactory properties 則先點擊 Java Package 一行最右側的 New... 按鈕來新建一個名字為 dao 的包. 這時候你可以看到 Finish 按鈕終于不為灰色了, 點擊它完成給項目加入 Hibernate 開發(fā)功能的操作, 包括 Hibernate 類庫, jdbc 驅動和 Hibernate 配置文件都已經設置完畢了.
8. 選擇菜單 Window -> Open Persipective -> MyEclipse Database Explorer, 打開數(shù)據庫瀏覽視圖. 展開 Connected to MyEclipse Derby 下面的 APP 節(jié)點, 再選中下面的 TABLE 目錄, 點擊右鍵并選擇彈出菜單中的菜單項 Refresh 來刷新數(shù)據庫表格列表, 這時候展開此節(jié)點可以看到下面出現(xiàn)了一個名為 TESTUSER 的表.
9. OK, 最關鍵的操作即將開始了. 請在 TESTUSER 節(jié)點上點擊右鍵并選擇彈出菜單中的菜單項 Hibernate Reverse Engineering..., 彈出一個對話框提示你 Save All Modified Resources, 點擊 OK 并且選中 MyHibernateTest, 在 File name 右側的文件名輸入框中輸入 create.sql 來保存我們最開始所寫的那個建表的 SQL 文件.
10. 接著 Hibernate Reverse Engineering 對話框彈出了.
點擊 Java src folder 一行最右側的 Browser.. 按鈕來選擇源碼目錄, 并把下面的 Java package 右側的輸入框中輸入包名 dao, 我們選擇 /MyHibernateTest/src 目錄并點擊完成, 接著選中下面的三個復選框:
[x] Hibernate mapping file (*.hbm.xml) for each database table
[x] Java Data Object (POJO <> DB Table)
[x] Java Data Access Object (DAO) (Hibernate 3 only)
好了, 點擊 Finish 按鈕, 就可以看到反向工程的忙碌對話框. 最后當一切結束后彈出對話框提示切換視圖到 MyEclipse Hibernate perspective 的時候點擊 "OK" 按鈕, 您就可以看到工作成果了, 包括下列文件:
HibernateSessionFactory.java
Testuser.hbm.xml
BaseHibernateDAO.java
IBaseHibernateDAO.java
Testuser.java
TestuserDAO.java
hibernate.cfg.xml
. 那么, 我們的 POJO 已經生成了, 就是 Testuser.java, DAO 的代碼也已經生成, 就是 TestuserDAO, 這些代碼都已經幫我們寫好, 當然我們可以做進一步的修改來適應我們的要求. 當你用工具生成代碼的時候, 請確保您已經了解了 Hibernate 手工開發(fā)的步驟. 好了, 接下來的事情, 我們就可以
11. 修改 Testuser.hbm.xml 里面的主鍵生成方式為合適的方式(默認的是 <generator class="assigned" />), 或者一些屬性映射關系, 這些仍然要求開發(fā)人員對 Hibernate 的配置文件有一定的了解;
或者
12. 繼續(xù)重復 1, 3, 5, 8, 9, 10 來生成更多的 POJO 或者 DAO.
13. 編寫測試代碼來運行測試.
小結: 雖然這些步驟很繁瑣, 但是當你熟練之后完全可以在2分鐘內完成所有操作, 這樣就省去了手工編寫大量 Java 代碼和 XML 配置文件的痛苦, 這也是實際中程序員采取的偷懶的步驟.
前提: 您一定要理解 Hibernate 手工開發(fā)的步驟和 JDBC 驅動的概念, 否則生成的文件有時候是有潛在的問題的, 工具只能幫你完成部分工作, 不能完成全部工作.
更多提示: 當你執(zhí)行 第 9 步的時候, 還可以看到彈出的菜單中有 JPA 和 EJB 3 反向工程的選項, 這個就留給大家做練習了, 同樣也能生成類似的 JPA 或者 EJB 3 實體類, 當然您實現(xiàn)要建好支持 JPA 或者 EJB 的項目.