<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    每日一得

    不求多得,只求一得 about java,hibernate,spring,design,database,Ror,ruby,快速開發(fā)
    最近關(guān)心的內(nèi)容:SSH,seam,flex,敏捷,TDD
    本站的官方站點是:顛覆軟件

      BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
      220 隨筆 :: 9 文章 :: 421 評論 :: 0 Trackbacks
    key words: bea world2006? ,workshop studio, 快速開發(fā)

    bea world 2006 北京已經(jīng)過去好幾天了,早就想記錄一下一直忙? :)

    這次參會之行還是有所收獲,主題雖然是SOA,但是我對這個現(xiàn)在倒是沒什么特別的關(guān)注,畢竟這個和公司選用的產(chǎn)品有關(guān)系,我們這邊公司現(xiàn)在用的Oracle的比較多。

    最吸引我的是它的一款開發(fā)工具 : workshop studio 3.2

    這個工具基于Eclipse,同時集成了Spring,hibernate,Struts,JSF,Ajax,關(guān)鍵的是開發(fā)界面效果很棒,支持自動生成,運用Xray掃描技術(shù),在頁面可以做到自動提醒。

    我個人一直使用IntelliJ IDEA 5,感覺IDEA的編寫java代碼確實很強,包括xp能力,但是看他的jsp編寫能力實在是太弱了,雖然也支持語法級別的提示,但是這個是遠遠不夠的,我們需要的是WYSIWYG,這方面workshop studio給了我一個滿意的效果.

    可以通過ResourceBundle切換界面語言

    workshop-studio-english.jpg

    也可以在界面切換到中文:

    workshop-studio.jpg


    可以在DbXplorer界面里根據(jù)schema自動生成hibernate的O/R mapping文件,包括Domain,也包括dao接口以及實現(xiàn)哦:
    workshop-studio-hibernate.jpg


    看一下向?qū)傻膁ao實現(xiàn) :

    public?class?UserRoleSpringService?implements?IUserRoleService?{
    ????
    /**
    ?????*?The?dao?instance?injected?by?Spring.
    ?????
    */

    ????
    private?IUserRoleDao?dao;
    ????
    /**
    ?????*?The?service?Spring?bean?id,?used?in?the?applicationContext.xml?file.
    ?????
    */

    ????
    private?static?final?String?SERVICE_BEAN_ID?=?"UserRoleService";
    ????
    ????
    public?UserRoleSpringService()?{
    ????????
    super();
    ????}

    ????
    /**
    ?????*?Returns?the?singleton?<code>IUserRoleService</code>?instance.
    ?????
    */

    ????
    public?static?IUserRoleService?getInstance(ApplicationContext?context)?{
    ????????
    return?(IUserRoleService)context.getBean(SERVICE_BEAN_ID);
    ????}


    ????
    /**
    ?????*?Find?an?entity?by?its?id?(primary?key).
    ?????*?
    @return?The?found?entity?instance?or?null?if?the?entity?does?not?exist.
    ?????
    */

    ????
    public?UserRole?findUserRoleById(Integer?id)?throws?MyException?{
    ????????
    try?{
    ????????????
    return?getDao().findUserRoleById(id);
    ????????}
    ?catch?(RuntimeException?e)?{
    ????????????
    throw?new?MyException("findUserRoleById?failed?with?the?id?"?+?id?+?":?"?+?e.getMessage());
    ????????}

    ????}

    ????
    /**
    ?????*?Return?all?persistent?instances?of?the?<code>UserRole</code>?entity.
    ?????
    */

    ????
    public?List?findAllUserRoles()?throws?MyException?{
    ????????
    try?{
    ????????????
    return?getDao().findAllUserRoles();
    ????????}
    ?catch?(RuntimeException?e)?{
    ????????????
    throw?new?MyException("findAllUserRoles?failed:?"?+?e.getMessage());
    ????????}

    ????}

    ????
    /**
    ?????*?Return?the?persistent?entities?matching?the?given?example?entity.
    ?????
    */

    ????
    public?List?findUserRolesByExample(UserRole?userRole)?throws?MyException?{
    ????????
    try?{
    ????????????
    return?getDao().findByExample(userRole);
    ????????}
    ?catch?(RuntimeException?e)?{
    ????????????
    throw?new?MyException("findUserRolesByExample?failed:?"?+?e.getMessage());
    ????????}

    ????}

    ????
    /**
    ?????*?Make?the?given?instance?managed?and?persistent.
    ?????
    */

    ????
    public?void?persistUserRole(UserRole?userRole)?throws?MyException?{
    ????????
    try?{
    ????????????getDao().persistUserRole(userRole);
    ????????}
    ?catch?(RuntimeException?e)?{
    ????????????
    throw?new?MyException("persistUserRole?failed:?"?+?e.getMessage());
    ????????}

    ????}

    ????
    /**
    ?????*?Remove?the?given?persistent?instance.
    ?????
    */

    ????
    public?void?removeUserRole(UserRole?userRole)?throws?MyException?{
    ????????
    try?{
    ????????????getDao().removeUserRole(userRole);
    ????????}
    ?catch?(RuntimeException?e)?{
    ????????????
    throw?new?MyException("removeUserRole?failed:?"?+?e.getMessage());
    ????????}

    ????}


    ????
    /**
    ?????*?Find?an?entity?by?its?id?(primary?key).
    ?????*?
    @return?The?found?entity?instance?or?null?if?the?entity?does?not?exist.
    ?????
    */

    ????
    public?ZionRole?findZionRoleById(Integer?id)?throws?MyException?{
    ????????
    try?{
    ????????????
    return?getDao().findZionRoleById(id);
    ????????}
    ?catch?(RuntimeException?e)?{
    ????????????
    throw?new?MyException("findZionRoleById?failed?with?the?id?"?+?id?+?":?"?+?e.getMessage());
    ????????}

    ????}

    ????
    /**
    ?????*?Return?all?persistent?instances?of?the?<code>ZionRole</code>?entity.
    ?????
    */

    ????
    public?List?findAllZionRoles()?throws?MyException?{
    ????????
    try?{
    ????????????
    return?getDao().findAllZionRoles();
    ????????}
    ?catch?(RuntimeException?e)?{
    ????????????
    throw?new?MyException("findAllZionRoles?failed:?"?+?e.getMessage());
    ????????}

    ????}

    ????
    /**
    ?????*?Return?the?persistent?entities?matching?the?given?example?entity.
    ?????
    */

    ????
    public?List?findZionRolesByExample(ZionRole?zionRole)?throws?MyException?{
    ????????
    try?{
    ????????????
    return?getDao().findByExample(zionRole);
    ????????}
    ?catch?(RuntimeException?e)?{
    ????????????
    throw?new?MyException("findZionRolesByExample?failed:?"?+?e.getMessage());
    ????????}

    ????}

    ????
    /**
    ?????*?Make?the?given?instance?managed?and?persistent.
    ?????
    */

    ????
    public?void?persistZionRole(ZionRole?zionRole)?throws?MyException?{
    ????????
    try?{
    ????????????getDao().persistZionRole(zionRole);
    ????????}
    ?catch?(RuntimeException?e)?{
    ????????????
    throw?new?MyException("persistZionRole?failed:?"?+?e.getMessage());
    ????????}

    ????}

    ????
    /**
    ?????*?Remove?the?given?persistent?instance.
    ?????
    */

    ????
    public?void?removeZionRole(ZionRole?zionRole)?throws?MyException?{
    ????????
    try?{
    ????????????getDao().removeZionRole(zionRole);
    ????????}
    ?catch?(RuntimeException?e)?{
    ????????????
    throw?new?MyException("removeZionRole?failed:?"?+?e.getMessage());
    ????????}

    ????}


    ????
    /**
    ?????*?Find?an?entity?by?its?id?(primary?key).
    ?????*?
    @return?The?found?entity?instance?or?null?if?the?entity?does?not?exist.
    ?????
    */

    ????
    public?ZionUser?findZionUserById(Integer?id)?throws?MyException?{
    ????????
    try?{
    ????????????
    return?getDao().findZionUserById(id);
    ????????}
    ?catch?(RuntimeException?e)?{
    ????????????
    throw?new?MyException("findZionUserById?failed?with?the?id?"?+?id?+?":?"?+?e.getMessage());
    ????????}

    ????}

    ????
    /**
    ?????*?Return?all?persistent?instances?of?the?<code>ZionUser</code>?entity.
    ?????
    */

    ????
    public?List?findAllZionUsers()?throws?MyException?{
    ????????
    try?{
    ????????????
    return?getDao().findAllZionUsers();
    ????????}
    ?catch?(RuntimeException?e)?{
    ????????????
    throw?new?MyException("findAllZionUsers?failed:?"?+?e.getMessage());
    ????????}

    ????}

    ????
    /**
    ?????*?Return?the?persistent?entities?matching?the?given?example?entity.
    ?????
    */

    ????
    public?List?findZionUsersByExample(ZionUser?zionUser)?throws?MyException?{
    ????????
    try?{
    ????????????
    return?getDao().findByExample(zionUser);
    ????????}
    ?catch?(RuntimeException?e)?{
    ????????????
    throw?new?MyException("findZionUsersByExample?failed:?"?+?e.getMessage());
    ????????}

    ????}

    ????
    /**
    ?????*?Make?the?given?instance?managed?and?persistent.
    ?????
    */

    ????
    public?void?persistZionUser(ZionUser?zionUser)?throws?MyException?{
    ????????
    try?{
    ????????????getDao().persistZionUser(zionUser);
    ????????}
    ?catch?(RuntimeException?e)?{
    ????????????
    throw?new?MyException("persistZionUser?failed:?"?+?e.getMessage());
    ????????}

    ????}

    ????
    /**
    ?????*?Remove?the?given?persistent?instance.
    ?????
    */

    ????
    public?void?removeZionUser(ZionUser?zionUser)?throws?MyException?{
    ????????
    try?{
    ????????????getDao().removeZionUser(zionUser);
    ????????}
    ?catch?(RuntimeException?e)?{
    ????????????
    throw?new?MyException("removeZionUser?failed:?"?+?e.getMessage());
    ????????}

    ????}


    ????
    /**
    ?????*?Called?by?Spring?using?the?injection?rules?specified?in?
    ?????*?the?Spring?beans?file?"applicationContext.xml".
    ?????
    */

    ????
    public?void?setDao(IUserRoleDao?dao)?{
    ????????
    this.dao?=?dao;
    ????}

    ????
    public?IUserRoleDao?getDao()?{
    ????????
    return?this.dao;
    ????}

    }


    我現(xiàn)在的策略基本上就是用IDEA開發(fā)后臺代碼,而pojo,dao,daoImpl的自動生成,以及web/jsp/ajax都是通過workshop studio來做,感覺不錯哦,你還不心動??? :)

    詳情請參看官方網(wǎng)站? : http://workshopstudio.bea.com/index.html



    再來一張在現(xiàn)場Bea的工程師Peter的一張照片,左邊的是me? :)

    bea_peter.JPG


    Peter給我留下了深刻的印象,技術(shù)嫻熟,為人熱情,互動也棒,說到興奮處來一個響指,讓你感覺到作開發(fā)也是如此的享受,和國內(nèi)的開發(fā)氛圍截然不可同日而語。說到這就多羅嗦幾句,國內(nèi)的開發(fā)氛圍我感覺就是半死不活,用如下幾個關(guān)鍵字做一個概括就是 : 不敬業(yè),冷漠,不專業(yè),不規(guī)范,無體系,不受重視,自己看不起自己,別人也看不起自己,自己認為自己像個傻B,結(jié)果自己真的變?yōu)橐粋€傻B.

    記住,主動權(quán)永遠在你自己手里,你想成為什么你就會變成什么.

    當寒流到來時你是什么心態(tài)? 強者的邏輯是:來得更猛烈些,來年春天地上會堆滿尸體.

    posted on 2006-12-20 11:39 Alex 閱讀(2666) 評論(10)  編輯  收藏 所屬分類: web技術(shù)

    評論

    # re: workshop studio震撼你的開發(fā)效率 [bea world2006 歸來,談感受,發(fā)牢騷] 2006-12-20 17:01 quietywind[匿名]
    MyEclipse也是一樣可以做的,BEA我也去了,感覺大部分都是在忽悠。
    在講workshop studio的時候,居然把自動糾錯都當作是自己的特色了,無語了。
    不過感覺Peter講的確實挺不錯的,很有激情,知識也很豐富。  回復(fù)  更多評論
      

    # re: workshop studio震撼你的開發(fā)效率 [bea world2006 歸來,談感受,發(fā)牢騷] 2006-12-20 18:02 anonymous
    整個一大雜燴,基本上裝一些開源插件就有差不多的效果。看看netbeans的visual webpack吧。  回復(fù)  更多評論
      

    # re: workshop studio震撼你的開發(fā)效率 [bea world2006 歸來,談感受,發(fā)牢騷] 2006-12-20 19:06 BeanSoft
    Bea 收購的 M7... Bea 跟 Google 一樣, 善于收購潛力股. Netbeans 的 Visual Webpack 偶覺得比起 WTP 來, 貌似含金量要多一點點.  回復(fù)  更多評論
      

    # re: workshop studio震撼你的開發(fā)效率 [bea world2006 歸來,談感受,發(fā)牢騷] 2006-12-21 10:05 Alex
    關(guān)于自動糾錯你誤解了,他不是一般的方法調(diào)用語法的糾錯,是字符串的糾錯,比如你在struts下的jsp里寫<form action="myAction" >里的時候他的Xray會根據(jù)struts的配置文件檢查你的惡myAction是不是存在,如果不存在會提示,而一般的開發(fā)工具不支持,因為它僅僅知道是個字符串,只有在運行的時候才會檢查。 這個應(yīng)該很人性化的.

    關(guān)于netbeans也有一些問題,現(xiàn)在在開發(fā)工具界netbeans出境比較尷尬,因為總體來看eclipse是主流,已經(jīng)成為了某種意義上的通用平臺(盡管有許多人不服),所以從這個覺得上看bea在戰(zhàn)略上還是處于主動的  回復(fù)  更多評論
      

    # re: workshop studio震撼你的開發(fā)效率 [bea world2006 歸來,談感受,發(fā)牢騷] 2006-12-21 11:56 hejianhuacn
    缺的就是好的示例代碼  回復(fù)  更多評論
      

    # re: workshop studio震撼你的開發(fā)效率 [bea world2006 歸來,談感受,發(fā)牢騷] 2006-12-22 10:22 keith
    workshop studio很久以前就用了,感覺一級棒。糾錯的確是它的亮點,這點在你使用時就可以體會到了。
    更好的是它整合了主流的框架,struts、spring、hibernate等等。
    值得一提的還有它的Xray  回復(fù)  更多評論
      

    # re: workshop studio震撼你的開發(fā)效率 [bea world2006 歸來,談感受,發(fā)牢騷] 2006-12-22 12:56 Alex
    目前每個都有示例代碼,不過不是本地的,你必須通過向?qū)腷ea的官方站點download,我剛開始的時候下了N次都沒有下好,跟peter說他在自己機器上試是好的,后來我回去又試了幾次,居然好了 :)  回復(fù)  更多評論
      

    # re: workshop studio震撼你的開發(fā)效率 [bea world2006 歸來,談感受,發(fā)牢騷] 2006-12-24 20:32 zhangyafei
    不敬業(yè),冷漠,不專業(yè),不規(guī)范,無體系,不受重視,自己看不起自己,別人也看不起自己,自己認為自己像個傻B,結(jié)果自己真的變?yōu)橐粋€傻B.

    。。。。。。。

    當寒流到來時你是什么心態(tài)? 強者的邏輯是:來得更猛烈些,來年春天地上會堆滿尸體.



    特別有意思。  回復(fù)  更多評論
      

    # re: workshop studio震撼你的開發(fā)效率 [bea world2006 歸來,談感受,發(fā)牢騷] 2007-01-23 17:33 jane_wu
    看了照片我恍然大悟,原來就是你:)  回復(fù)  更多評論
      

    # re: workshop studio震撼你的開發(fā)效率 [bea world2006 歸來,談感受,發(fā)牢騷] 2007-05-13 15:39 亮亮
    請問樓主workshop 用hibernate 的時候如何自己生成DAO?我怎么只能生成model?  回復(fù)  更多評論
      

    主站蜘蛛池模板: 色吊丝最新永久免费观看网站| 色噜噜狠狠色综合免费视频| 91精品国产亚洲爽啪在线观看| 国产亚洲免费的视频看| 亚洲精品无码精品mV在线观看| 成人亚洲性情网站WWW在线观看| 亚洲国产精品一区二区三区久久| 免费v片在线观看品善网| 国产hs免费高清在线观看| 国产精品酒店视频免费看| 国产国产人免费人成免费视频 | 青草久久精品亚洲综合专区| 亚洲精品无码专区在线| 亚洲av永久无码天堂网| 亚洲第一综合天堂另类专 | 91天堂素人精品系列全集亚洲| 亚洲邪恶天堂影院在线观看| 亚洲综合综合在线| 亚洲专区一路线二| 亚洲日韩亚洲另类激情文学| 国产亚洲视频在线| 亚美影视免费在线观看| 久久福利青草精品资源站免费| 91香蕉在线观看免费高清| 亚洲成在人线aⅴ免费毛片| 免费高清在线影片一区| 亚洲成a人片在线观看久| 亚洲精品自在在线观看| 亚洲精品亚洲人成在线观看麻豆| 久久久久亚洲国产| 免费播放国产性色生活片| 韩国免费A级毛片久久| 最近中文字幕大全中文字幕免费| 中字幕视频在线永久在线观看免费| 国产高清在线精品免费软件| 久久影视国产亚洲| 亚洲视频一区二区在线观看| 亚洲人成色99999在线观看| a级毛片免费观看网站| 国产国产人免费视频成69堂| 免费观看男人免费桶女人视频|