寫程序,做產(chǎn)品,過日子

          成功其實(shí)很簡單,就是強(qiáng)迫自己堅持下去

          BlogJava 首頁 新隨筆 聯(lián)系 聚合 管理
            69 Posts :: 1 Stories :: 92 Comments :: 0 Trackbacks

          目前Java IDE的主流自然是eclipse系列,我一直用的也是這個。在Sun積極宣傳Netbeans5.5的時候,我也試用了一下,并沒有找到從eclipse轉(zhuǎn)移過去的理由。我對它的不滿意主要有兩點(diǎn):
          1、沒有所見即所得的JSP/HTML編輯器。
          2、沒有為Hibernate提供開發(fā)支持。
          Netbeans5.5在java 6下的桌面開發(fā)能力很強(qiáng),不過短期內(nèi)我還用不上。

          下面重點(diǎn)說說Eclipse平臺下的一些開發(fā)工具。

          1、JSP/HTML編輯工具
          Lomboz是開源的JSP編輯器,不過它不支持所見即所得的可視化編輯。雖然我并不喜歡在可視化設(shè)計界面中通過拖拉來調(diào)整頁面。但是它對代碼的快速定位是我所需要的。
          Bea Workshop for JSP的確精彩,不過它要求把所有的JSP一個WEB-INF的目錄。我的項目很大,每個模塊都有獨(dú)立的JSP目錄,這個要求很煩的。好像這個目錄可以配置(但是必須有),不過由于其它原因,我已經(jīng)放棄了。
          我現(xiàn)在選的是MyEclipse,它的JSP編輯器做得不如Bea Workshop精細(xì)和強(qiáng)大,但是自由,夠用。另外,MyEclipse比Bea Workshop便宜得多,有可能說服老板買單。不過,MyEclipse集成的Hibernate功能著實(shí)讓我光火了很長的時間。

          2. Hibernate集成工具
          在Eclipse中集成Hibernate開發(fā)的有三種:Hibernate官方出的Hibernate Tools, Myeclipse和Bea Workshop。Jbuilder 2007也部分支持Hibernate。Hibernate Tools是開源的,其它的工具都是在它的基礎(chǔ)上進(jìn)行增強(qiáng)而來的。

          如果使用Ant命令來操作Hibernate Tools,你會發(fā)現(xiàn)它非常強(qiáng)大,可以靈活的在表,HBM和pojo間互相轉(zhuǎn)換。可是它的Eclipse集成太狠了點(diǎn),只要求一個逆向工程的配置文件,就可以根據(jù)數(shù)據(jù)庫表生成所有的HBM和pojo。這個功能貌似一步到位,其實(shí)很不靈活。
          (1)如何寫好HBM是很有學(xué)問的,我經(jīng)常需要細(xì)心的調(diào)理好HBM再生成pojo。
          (2)每次生成時都一刀切的做法對于增量開發(fā)來說是個災(zāi)難。好不容易調(diào)理好的HBM和Pojo,一下子全被沖掉了。
          (3)它的數(shù)據(jù)庫連接也有個問題,不會過濾Schema,每次都把所有的數(shù)據(jù)庫列出來。我們的開發(fā)數(shù)據(jù)庫服務(wù)器上安裝有三四十個數(shù)據(jù)庫,想想多么恐怖啊。
          Hibernate Tools最強(qiáng)的功能,當(dāng)數(shù)HQL編輯器。可以查錯,可以檢查最終生成的SQL,可以得到運(yùn)行結(jié)果,可以添加參數(shù)。這些功能實(shí)在是太有用了。

          Myeclipse對Hibernate Tools進(jìn)行了改進(jìn)。所以它和原生的Hibernate Tools共存時會發(fā)生一些奇怪的問題。Myeclipse中有兩個改進(jìn)非常棒:指定數(shù)據(jù)庫Schema(再也不用在三四個數(shù)據(jù)庫中找我的那份試驗田了),根據(jù)選中的HBM生成Pojo(放心大膽的用吧,已經(jīng)做好的HBM和Pojo不會再被沖掉了)。
          不過,Myeclipse對HQL編輯器的改進(jìn)就有點(diǎn)讓人光火了。首先是連接問題,橫豎就是連不上數(shù)據(jù)庫,左找右找找不到原因,最后把Eclipse workspace重建,把相同的配置連接,一下子又可以了。
          其次,Myeclipse沒有提供新建HQL編輯器的菜單,而是在我手工建立一個hql的文件后,在打開它時調(diào)用HQL編輯器!打開的過程可能涉及到數(shù)據(jù)庫連接,非常慢。如果你在退出eclipse中沒有關(guān)掉HQL文件,那么再次進(jìn)入eclipse的時候,您先去喝杯茶,慢慢等吧。

          Bea Workshop各方面做得都非常精致,Hiberenate集成也不例外,各類編輯器的功能布局明了易用。但是我在試用時碰到一個難以置信的致命的bug:所有Bea Workshop編輯器和對話框中的文本輸入框基本不接收光標(biāo)!
          這是什么概念?就是說你沒法點(diǎn)進(jìn)文本框,沒法輸入任何東西。我唯一成功的一次是在沒有光標(biāo)的情況下,亂打了幾個字母再回車。對話框沒有顯示任何東西直接關(guān)閉,但在主編輯器中我打的字母顯示了出來。不過除了文本框外,其它的如下拉框,選擇框都正常。
          哪個開發(fā)人員會出這么離譜的Bug啊!我試過兩臺機(jī),問題一模一樣。難道是因為我的JDK是1.5的緣故?!
          不管什么原因,我是沒辦法再試下去了,只好將其請出了我的電腦。在請出之前,通過菜單檢查,沒有發(fā)現(xiàn)指定HBM生成Pojo的功能。這兩大原因,足夠我放棄它了。

          Jbuilder 2007做得太強(qiáng)了。我用它明顯感覺小腳穿大鞋。人家根本不希罕Hibernate。僅僅把Hiberenate作為EJB 3.0和JPA的一種實(shí)現(xiàn)方式。所以根據(jù)沒有HBM這一說。而且是徹頭徹尾的可視化MDA開發(fā)。真的需要一個明星團(tuán)隊,在嚴(yán)格的流程支持下,才能玩轉(zhuǎn)Jbuilder 2007。我兩個條件都不符合,最重要的是老板嫌它太貴,只能放棄。

          Technorati
          : , , ,

          posted on 2006-11-08 12:16 Welkin Hu 閱讀(246) 評論(0)  編輯  收藏 所屬分類: Java
          主站蜘蛛池模板: 卫辉市| 伊川县| 达尔| 五指山市| 甘孜| 鄯善县| 修文县| 双城市| 饶阳县| 连南| 柘荣县| 兰溪市| 仁寿县| 鄱阳县| 琼海市| 昌江| 锦屏县| 万全县| 克山县| 平湖市| 获嘉县| 临江市| 沙洋县| 邵东县| 富蕴县| 昌宁县| 会理县| 金乡县| 沙坪坝区| 从江县| 乐清市| 宣武区| 沙湾县| 庄河市| 巨鹿县| 怀集县| 高邮市| 通江县| 巴马| 交口县| 那坡县|