寫SpringSide方面的隨筆,已經(jīng)是幾個月以前的事情了,中間有一段時間SpringSide逐漸被大家淡忘了。最近我發(fā)現(xiàn),居然有人還在看我的博客,在問我SpringSide 2.0怎么沒有m1版下載,我很高興。SpringSide 2.0推出rc1版本已經(jīng)很久了。什么是rc版呢?就是正式版的候選版本,從rc版開始,就不會再添加新的功能了,有的只是修正Bug的工作,因此,從功能上講,可以認為這就是正式版。
另外一個激動人心的消息就是SpringSide 3.0已經(jīng)正式啟動。因此,我決定在SpringSide 3.0推出之前,再進一步的搞一搞這個2.0 rc1版。
使用SpringSide的先決條件,要安裝JDK 1.5或以上的版本,要設置JAVA_HOME環(huán)境變量,要安裝Eclipse IDE,我使用的是3.2版。
第一步,先下載SpringSide 2.0-RC1-all in one,下載地址如下圖。下載后解壓縮,我解壓后存放SpringSide的目錄為D:\SpringSide2.0\,然后,運行該目錄中的springside.bat批處理文件,構(gòu)建SpringSide項目,并可以看到SpringSide提供的兩個示例應用。

第二步,將D:\SpringSide2.0\tools\springside-ide\target\eclipse\plugins目錄中的org.springside.ide_1.0.0拷貝到Eclipse的plugins目錄中。
第三步,打開Eclipse IDE,點菜單“窗口”-〉“首選項”,在彈出的窗口中設置SpringSide2 Home,如下圖:

然后,就可以在創(chuàng)建項目的時候選擇SpringSide項目了,如下圖:

按照向?qū)Ю^續(xù),會有一個選擇組件的步驟,選擇需要的組件即可。在這里,我只選擇了Hibernate、Struts等幾個我用得到的組件。其他的組件以后需要的時候再添加吧。

看一下目錄結(jié)構(gòu),發(fā)現(xiàn)SpringSide2.0-RC1版本的目錄結(jié)構(gòu)比M1版要清晰得多,bin目錄里面存放的都是ant腳本文件和bat批處理文件,構(gòu)建項目的時候,可以根據(jù)需要選擇運行其中不同的腳本。其中的ant構(gòu)建腳本在Eclipse中可以直接運行,而bat批處理文件,可以將它們定義為Eclipse的外部工具而運行。有時候,為了加快工作速度,我也寫一些批處理文件,也放到這個目錄中,也定義為Eclipse的外部工具運行。src目錄存放Java源代碼,test目錄存放測試代碼,webapp目錄存放Web項目中用到的其它資源。
再來說一下這里提供的quickstart.bat批處理,這個批處理的作用是快速的編譯、部署和啟動項目,在這個過程中,它同時包含了啟動Tomcat服務器和啟動瀏覽器的動作。我在開發(fā)中經(jīng)常要觀察一些小修改的運行效果,如果每次都運行quickstart.bat會非常浪費時間。quickstart.bat的另外一個致命缺點就是它里面沒有包含停止Tomcat服務器的動作,所以如果多次運行該批處理就會出錯。因此,我需要定義兩個Eclipse的外部工具,它們分別是Tomcat服務器自己的啟動和停止腳本。如下圖:


進行了這些改進后,還有一點小問題需要解決,那就是Tomcat服務器在啟動的時候有不少的錯誤信息,雖然不影響使用,但是看起來不爽。經(jīng)過我的分析,發(fā)現(xiàn)是在創(chuàng)建Hibernate的SessionFactory的時候出錯,也就是說是數(shù)據(jù)庫沒有配置好。因此,在項目中修改這樣兩個文件:
1、src\resources\config\jdbc.properties 改的是使用的數(shù)據(jù)庫驅(qū)動、連接屬性和用戶名及密碼;
src\resources\spring\dataAccessContext-hibernate.xml 改的是hibernate.dialect屬性。
同時,SpringSide 2.0的另外一個缺陷就是沒有包含MySQL的JDBC驅(qū)動,因此,我不得不到MySQL的官方網(wǎng)站上去下載mysql-connector-java-5.0.8.jar,將下載到的文件放到我的項目的webapp\WEB-INF\lib目錄下。至于怎么安裝MySQL數(shù)據(jù)庫,我就不廢話了。
最后,總結(jié)一下,使用SpringSide 2.0開始一個項目是很簡單的,要解決的問題主要有以下兩點:
1、quickstart.bat腳本不夠快,也不能夠重復啟動,需要單獨暴露tomcat.start和tomcat.stop以及tomcat.deploy任務,希望SpringSide團隊在3.0版中修正這個問題;
2、沒有MySQL數(shù)據(jù)庫的JDBC驅(qū)動,需要單獨下載安裝;
3、需要修改數(shù)據(jù)庫的連接屬性,使用自己順手的的數(shù)據(jù)庫。
做完這些修改之后,運行quickstart.bat,就可以看到熟悉的Hello World應用了。