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

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

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

    張昊

    J-Hi(http://www.j-hi.net)

      BlogJava :: 首頁 :: 聯(lián)系 :: 聚合  :: 管理
      45 Posts :: 1 Stories :: 110 Comments :: 0 Trackbacks

    1、快速上手,降低學(xué)習(xí)曲線

           對于剛剛接觸J-Hi的人來說,它上手很容易,我們?yōu)槊恳粋€功能點都提供了懸浮幫助功能,即使沒有任何資料(當(dāng)然我們已提供了視頻與開發(fā)文檔),您也可以通過向?qū)c幫助在十分鐘之內(nèi)就可以創(chuàng)建出您自己的項目原型。

           其次J-Hi平臺采用的大都是大家耳熟能詳?shù)闹髁骺蚣芘c技術(shù),如果您對主流的框架有所了解,那么對J-Hi的學(xué)習(xí)就沒有任何阻力了。

    2、快速搭建開發(fā)環(huán)境

           也許您因為項目或自身開發(fā)團(tuán)隊的不同會采用不同的框架技術(shù),例如您團(tuán)隊中對struts2熟悉的人遠(yuǎn)遠(yuǎn)要比掌握webwork的工程師要多,或者在您的項目中統(tǒng)計分析的功能很多,您要考慮ORM的效率問題,而不得不放棄hibernate而采用ibatisspringJDBC,也許您還要考慮數(shù)據(jù)庫問題等等。在搭建開發(fā)環(huán)境您一定會考慮很多因素,盡管搭建開發(fā)環(huán)境并不復(fù)雜,但還是不夠自動化,還要手動的配置,費時費力。J-Hi為快速搭建開發(fā)環(huán)境提供合理的解決方案,您可以按需求動態(tài)的搭建開發(fā)環(huán)境。

    在此您可以選擇不同的ORM框架

    在此您可以選擇不同的表現(xiàn)層框架

    在此您可以選擇不同的頁面框架,并且我們提供了“預(yù)覽”讓您在搭建開發(fā)環(huán)境之前就可以看到搭建后的頁面顯示效果

    在此您可以選擇不同的數(shù)據(jù)庫。

    3、快速生成所有代碼

           通過建立或?qū)肽J剑梢钥焖俚纳伤写a與文件,并且在生成時會根據(jù)您選擇的框架技術(shù)與數(shù)據(jù)庫的不同而自動適配。

           當(dāng)然您還可以有選擇的生成部分代碼文件,例如只生成JSP頁面,或只生成java代碼。生成的java代碼結(jié)構(gòu)如下(因為我選擇的框架是ibatis3+struts2,所以平臺會自動匹配只生成與這兩個框架相關(guān)的類文件,而不會生成無用的其它框架的東西):

    4、快速解決在業(yè)務(wù)需求中的技術(shù)難點

           一般我們在做項目開發(fā)時,總是要等到項目開發(fā)的中、后期才能去解決業(yè)務(wù)核心問題,因此很造成無法合理估計項目的技術(shù)風(fēng)險。原因是復(fù)雜的業(yè)務(wù)總是要等到基礎(chǔ)模塊建好后才能進(jìn)入到開發(fā)階段,從而使解決核心的技術(shù)問題置后。我們以一個報銷為例來做個簡單說明,比如報銷在審核后的業(yè)務(wù)邏輯很復(fù)雜并且有可能還要涉及到與其它的系統(tǒng)對接。一般來說我們總是要等到這個報銷單建好,起碼要有最基本的增刪查改功能(即使沒有頁面也要有后臺的代碼)后才能進(jìn)入到核心業(yè)務(wù)的開發(fā),這就加大的技術(shù)風(fēng)險,因為我們會很早的發(fā)現(xiàn)問題,但解決這些問題卻遠(yuǎn)遠(yuǎn)的落后于發(fā)現(xiàn)這個問題,甚至到了開發(fā)的中、后期因為技術(shù)問題在底層上還要一改再改。而使用J-Hi可以很快的進(jìn)入到業(yè)務(wù)核心的技術(shù)上,因為只要生成,基礎(chǔ)功能就已經(jīng)提供,甚至平臺還為您提供了單元測試用例類,從而使您可以直指業(yè)務(wù)核心,將項目風(fēng)險控制在最低。

    5、通過提供通用的組件

           平臺提供了很多通用業(yè)務(wù)組件,例如組織機構(gòu)、角色權(quán)限、報表、定時任務(wù)、菜單管理、日志管理、系統(tǒng)配置、附件上傳等等,除此之外平臺還提供了一些純技術(shù)組件,例如樹型結(jié)構(gòu)、java腳本工具、編碼生成器、可選擇性的返回JSON對象等等。這些通用的業(yè)務(wù)組件與技術(shù)組件可以為您在開發(fā)過程節(jié)省很多時間,隨需使用,從而大大降低開發(fā)速度。

    6、通過服務(wù)的復(fù)用性提高開發(fā)速度

           在介紹平臺的服務(wù)復(fù)用性之前,讓我們來舉個例子。比如您做了一個OA項目其中有一個模塊是報銷管理這個模塊很成熟,您已經(jīng)在OA系統(tǒng)中應(yīng)用了很久。現(xiàn)在又有一個ERP系統(tǒng),您想把這個成熟的報銷管理復(fù)制到ERP系統(tǒng)中,這樣這個功能就不用在ERP系統(tǒng)中再做開發(fā)了。對于平臺來說這就是服務(wù)的復(fù)用性,我們提供了一整套對服務(wù)復(fù)用性的解決方案,并且有自己的可視化工具。

    我們叫它J-Hi整合工具,是用C#做的。它的作用:

         1)可視化導(dǎo)入/導(dǎo)出數(shù)據(jù)庫,并同時實現(xiàn)跨數(shù)據(jù)庫,例如您可以在mysql上開發(fā)(導(dǎo)出),開發(fā)完將所有的數(shù)據(jù)遷移到oracle上(導(dǎo)入)。

         2)發(fā)布器,可視化將您開發(fā)的模塊或系統(tǒng)自動發(fā)布成一個發(fā)布包(包括數(shù)據(jù)庫、jar、文件[jsp、js、圖片、配置文件等]還包括文件的片段[例如修改web.xml文件中的一部分內(nèi)容]

         3)部署器,將發(fā)布包部署到開發(fā)的工程中,部署的內(nèi)容見發(fā)布器的描述

         4)實施器,對應(yīng)的生產(chǎn)系統(tǒng),我們通過FTP,將相應(yīng)的文件與數(shù)據(jù)庫自動部署到生產(chǎn)系統(tǒng)中

    7、快速的部署與遷移

           也許您正在為客戶要求從SQLServer數(shù)據(jù)庫改為Oracle而感到苦惱,因為這要做大量的數(shù)據(jù)遷移工作,或許您反復(fù)的將修改后的bug部署到生產(chǎn)環(huán)境中而郁悶,我想J-Hi通過它的整合工具為您提供了便捷的方式。具體的實現(xiàn)方式請參見上一節(jié)的介紹

    8、開發(fā)人員可以快速的接手別人的工作

           因為使用J-Hi開發(fā),生成的代碼與文件的風(fēng)格都是相同的,在哪里寫業(yè)務(wù)邏輯應(yīng)該怎么寫?在哪里要改頁面應(yīng)該怎么做?想要到哪張數(shù)據(jù)庫表或表與類的對應(yīng)關(guān)系?包括生成的類、JSP文件、配置文件的命名規(guī)則都是統(tǒng)一的。因此一個新人加入團(tuán)隊會很容易的上手并進(jìn)入工作狀態(tài),即使是修改別人寫過的代碼,也會很快速的定位到相應(yīng)要修改的位置。

    9、快速解決需求變更

           對于項目開發(fā)來說,項目的需求變更是很正常的事情,對于有經(jīng)驗的項目經(jīng)理來說,如果一個項目從未發(fā)生過需求變更過反而是不正常了:)一但需求變更大多都要改數(shù)據(jù)庫表,如果是已運行很穩(wěn)定的系統(tǒng),這種變更真是要命。J-Hi為此也提供了自己的解決方案,對于簡單表變更,平臺只要對單個實體生成就可以了。如果是復(fù)雜的變更,我們還提供繼承實體的解決方案,也就是說原來的所有代碼與表結(jié)構(gòu)都不變,通過實體繼承J-Hi會從數(shù)據(jù)庫表到java類再到JSP頁面形成一整套繼承關(guān)系,從而保證以前功能的穩(wěn)定性。這個說來好象很玄妙,讓我們舉例說明。比如你有一個部門表,N多信息都與它有聯(lián)系,而且做了很多的業(yè)務(wù)處理,現(xiàn)在客戶要求在部門表中加另一些信息。對你來說可能會為部門表中加字段,由此而帶來所有類的變化與頁面的變化,而這套系統(tǒng)已經(jīng)很穩(wěn)定已經(jīng)用了一、兩年了,開發(fā)人員都已經(jīng)離開了公司,這樣接手的人要讀懂全部代碼才有可能改,這樣就造成開發(fā)速度的大大降低。平臺提供了另一種解決方案:不動以前的任何東西,相關(guān)于在原有的基礎(chǔ)上打上一塊補丁。再做一張表,讓這張表與部門表形成one to one的關(guān)系,而類無論是POJODAOService都繼承自部門相應(yīng)類作為父類,同時在JSP頁面上也會繼承所有部門的所有元素,這樣就形成了實體繼承關(guān)系,這就好比設(shè)計模式中最基本的“開閉原則”,對于所有的新生功能是開放的,而對于已有的老功能是關(guān)閉的,可以完全把老的功能視為一個黑箱。這樣即能保證已有功能的穩(wěn)定性,又能加入新的功能做為補充。

    posted on 2011-05-02 00:32 張昊 閱讀(6498) 評論(8)  編輯  收藏

    Feedback

    # re: J-Hi快速開發(fā)平臺到底快速在哪里? 2011-05-03 11:49 riques
    lib里面有這個包,怎么報錯找不到呢?

    Caused by:
    java.lang.NoClassDefFoundError: org/hi/framework/dao/ibatis/IbatisHiDialet
    at com.ibatis.sqlmap.engine.builder.xml.SqlMapParser$18.process(SqlMapParser.java:367)
    at com.ibatis.common.xml.NodeletParser.processNodelet(NodeletParser.java:121)
    at com.ibatis.common.xml.NodeletParser.process(NodeletParser.java:84)
    at com.ibatis.common.xml.NodeletParser.process(NodeletParser.java:102)
    at com.ibatis.common.xml.NodeletParser.parse(NodeletParser.java:72)
    at com.ibatis.common.xml.NodeletParser.parse(NodeletParser.java:60)
    at com.ibatis.sqlmap.engine.builder.xml.SqlMapParser.parse(SqlMapParser.java:58)
    at com.ibatis.sqlmap.engine.builder.xml.SqlMapConfigParser$HiNodelet.process(SqlMapConfigParser.java:384)
    at com.ibatis.common.xml.NodeletParser.processNodelet(NodeletParser.java:121)
    at com.ibatis.common.xml.NodeletParser.process(NodeletParser.java:84)
    at com.ibatis.common.xml.NodeletParser.process(NodeletParser.java:102)
    at com.ibatis.common.xml.NodeletParser.parse(NodeletParser.java:72)
    at com.ibatis.common.xml.NodeletParser.parse(NodeletParser.java:51)
    at com.ibatis.sqlmap.engine.builder.xml.SqlMapConfigParser.parse(SqlMapConfigParser.java:75)
    at com.ibatis.sqlmap.client.SqlMapClientBuilder.buildSqlMapClient(SqlMapClientBuilder.java:63)
    at org.springframework.orm.ibatis.SqlMapClientFactoryBean.afterPropertiesSet(SqlMapClientFactoryBean.java:255)
    at org.hi.framework.dao.ibatis.HiSqlMapClientFactoryBean.afterPropertiesSet(HiSqlMapClientFactoryBean.java:118)  回復(fù)  更多評論
      

    # re: J-Hi快速開發(fā)平臺到底快速在哪里? 2011-05-03 12:58 張昊
    你這個問題好象不是最新的插件包,請在googleCode上下載最新的插件
    http://code.google.com/p/j-hi/
    j-hi4DWZ bate20110425.rar J-Hi for DWZ beta版   回復(fù)  更多評論
      

    # re: J-Hi快速開發(fā)平臺到底快速在哪里? 2011-05-03 12:59 張昊
    @riques
    你這個問題好象不是最新的插件包,請在googleCode上下載最新的插件
    http://code.google.com/p/j-hi/
    j-hi4DWZ bate20110425.rar J-Hi for DWZ beta版  回復(fù)  更多評論
      

    # re: J-Hi快速開發(fā)平臺到底快速在哪里? 2011-05-03 17:03 riques
    @張昊
    用這個最新的包生成的項目,在HI項目視圖里沒創(chuàng)建的項目  回復(fù)  更多評論
      

    # re: J-Hi快速開發(fā)平臺到底快速在哪里? 2011-05-03 18:36 張昊
    @riques
    你沒有-clean吧?
    請參見我的博客
    http://www.tkk7.com/hao-zhang-hi/archive/2011/04/27/349086.html  回復(fù)  更多評論
      

    # re: J-Hi快速開發(fā)平臺到底快速在哪里? 2011-05-03 19:57 riques
    @張昊
    根據(jù)這篇文章加-clean就對了,但希望在下個版本修復(fù)這個問題  回復(fù)  更多評論
      

    # re: J-Hi快速開發(fā)平臺到底快速在哪里? 2011-05-03 23:20 張昊
    @riques
    這是eclipse的機制問題,如果相同的插件有更新,你必須要-clean
    還有一種方案就是線上更新,這個功能我們還沒有做  回復(fù)  更多評論
      

    # re: J-Hi快速開發(fā)平臺到底快速在哪里? 2011-05-05 10:06 百思寒
    真不錯,多做幾遍就能上手了  回復(fù)  更多評論
      


    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 亚洲人和日本人jizz| 亚洲精品成人片在线观看精品字幕 | 亚洲大香人伊一本线| 91青青国产在线观看免费| 亚洲综合成人网在线观看| 久久中文字幕免费视频| 亚洲综合久久综合激情久久| 无码日韩精品一区二区免费暖暖| 亚洲国产女人aaa毛片在线| 精品一区二区三区免费毛片爱| 亚洲卡一卡2卡三卡4卡无卡三| 99re热精品视频国产免费| 亚洲乱码日产精品BD在线观看| 成人免费在线观看网站| 亚洲日本VA午夜在线影院| 免费一级毛片在线播放| 精品国产福利尤物免费| 亚洲激情中文字幕| 久久精品网站免费观看| 国产成人精品亚洲| 九月丁香婷婷亚洲综合色| 午夜不卡久久精品无码免费 | 黄色毛片免费网站| 国产亚洲A∨片在线观看| 亚洲黄色免费网站| 亚洲heyzo专区无码综合| 亚洲 无码 在线 专区| 国内精品免费在线观看| 亚洲成a人不卡在线观看| 国产精品国产午夜免费福利看| 猫咪www免费人成网站| 亚洲av最新在线网址| 18禁无遮挡无码网站免费| 日本一区二区三区免费高清在线| 国产亚洲综合网曝门系列| 久九九精品免费视频| 国产免费内射又粗又爽密桃视频| 亚洲春色另类小说| 中文亚洲成a人片在线观看| 亚洲黄色免费在线观看| 无码的免费不卡毛片视频|