国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
AndroMDA:概貌和工作原理-站長(zhǎng)資訊-華夏名網(wǎng)資訊中心 虛擬主機(jī),域名注冊(cè),雙線虛擬...
  • AndroMDA:概貌和工作原理
  • 來源:作者: 發(fā)布時(shí)間:2008-05-08 15:55:23
  •   當(dāng)你使用CASE工具畫出包,類,屬性,方法和關(guān)系時(shí),AndroMDA的“概貌”就形成了。然后,你把模型保存為XMI格式,并用AndroMDA和XDoclet產(chǎn)生整個(gè)組件模型的Java原始碼。AndroMDA和XDoclet都能和著名的構(gòu)建工具Ant進(jìn)行集成。你通常會(huì)使用Ant的命令行版本,但也能在IDE如Eclipse或JBuilder中使用Ant。無論是哪一種方式,你都要使用自己制定的Ant構(gòu)建腳本,并在腳本中把AndroMDA定義為其中的一個(gè)Task。 在CASE工具中用UML建模 你能使用UML的圖像符號(hào)為現(xiàn)實(shí)世界中的事物建模。例如,考慮一個(gè)汽車租用系統(tǒng),用于管理客戶,司機(jī),汽車和租用合同。這個(gè)系統(tǒng)UML模型的類圖可能是如下的樣子:

      

     

      將模型保存為XMI格式。某些CASE工具把這稱為“export”,用于差別他本身私有的格式。 代碼生成器 從XMI模型中產(chǎn)生代碼,Ant構(gòu)建腳本經(jīng)過以下的步驟:

      Ant Task讀入XMI格式的UML模型,并在內(nèi)存中生成抽象的語法樹(abstract syntax tree),其中包含包,類,屬性,方法和關(guān)系的信息。

      然后,使用Velocity模板處理引擎來處理entity bean,session bean,Hibernate類或別的代碼生成模板,所有的模板都基于從CASE工具中產(chǎn)生的抽象語法樹。他使用一個(gè)腳本helper facade來屏蔽UML元模型的復(fù)雜性,因此模板的研發(fā)者能使用容易理解的API來為腳本寫代碼。這些步驟會(huì)產(chǎn)生一些原始碼文件。

      最后,Ant腳本調(diào)用XDoclet中的 Task。對(duì)于EJB,XDoclet task讀入所有的bean類信息并生成bean的接口和部署設(shè)置文件。對(duì)于Hibernate,XDoclet生成包含持久層映射信息的XML文件。

      使用Cartridges制定輸出 到此為止,你可能以為AndroMDA是個(gè)EJB或Hibernate JavaBean的生成器。其實(shí),AndorMDA能生成所有東西! 事實(shí)上,AndroMDA對(duì)于他生成的東西一無所知。他擁有一個(gè)稱為“cartridges”的可插入模塊。一個(gè)Cartridge由一套定義生成格式的模板文件組成。目前,AndroMDA包括四個(gè)cartridge:

      andromda-java - 生成一般的Java原始碼。

      andromda-ejb - 生成EJB。

      andromda-hibernate - 生成Hibernate ORM工具的持久層類。

      andromda-struts - 生成Jakarta Struts的web頁面,form bean和action類。

      你能選擇使用哪一個(gè)cartridge來產(chǎn)生你的應(yīng)用框架。你也能編寫你自己的cartridge - 一旦你理解了cartridge的基礎(chǔ)知識(shí)及其XML描述文件,編寫一個(gè)新的cartridge非常容易! AndroMDA核心自動(dòng)檢測(cè)安裝在類路徑下的cartridge。如需要了解更多cartridge的信息,請(qǐng)參見本網(wǎng)站的其他文件。 EJB Cartridge生成代碼的例子 從上面汽車租用系統(tǒng)模型的客戶模型部分,AndroMDA(使用andromda-ejb)和XDoclet將為你產(chǎn)生下面的代碼。Bean類使用

    標(biāo)記,其他類使用
    標(biāo)記。你能點(diǎn)擊文件名查看文件的內(nèi)容。
    Customer.java Local interface

     

      

    CustomerBean.java Bean class

     

      

    CustomerBeanCMP.java Container-managed persistent attributes

     

      

    CustomerBeanImpl.java Implementation class

     

      

    CustomerData.java Value object class

     

      

    CustomerLocalHome.java Local home interface

     

      

    CustomerUtil.java Utility class to find home interfaces

     

      

    CustomerService.java Remote interface

     

      

    CustomerServiceBean.java Bean class

     

      

    CustomerServiceBeanImpl.java Implementation class

     

      

    CustomerServiceHome.java Home interface

     

      

    CustomerServiceUtil.java Utility class to find home interfaces

     

      

    Driver.java Local interface

     

      

    DriverBean.java Bean class

     

      

    DriverBeanCMP.java Container-managed persistent attributes

     

      

    DriverBeanImpl.java Implementation class

     

      

    DriverData.java Value object class

     

      

    DriverLocalHome.java Local home interface

     

      

    DriverUtil.java Utility class to find home interfaces

     

      編寫業(yè)務(wù)方法 你可能知道,使用代碼生成器并沒有完成了所有的工作。編寫B(tài)ean的主體即業(yè)務(wù)邏輯是留給你的工作。AndroMDA為你構(gòu)建了一個(gè)應(yīng)用框架,你需要往里面填充代碼。這些所謂的“implementation classes”來自bean類,是類繼承結(jié)構(gòu)樹上的葉子。AndroMDA一次性地產(chǎn)生這些代碼并不再修改他們。這能夠確保手工編寫的代碼不被代碼生成器覆蓋。 因此,在實(shí)現(xiàn)類中實(shí)現(xiàn)你的業(yè)務(wù)方法,并啟動(dòng)Ant構(gòu)建腳本用于編譯Java文件的其他task,并把編譯好的class文件打包到一個(gè)ejb-jar文件中。jar文件當(dāng)然也包含了生成的部署設(shè)置文件。 最后的工作 最后的工作當(dāng)然是發(fā)布到應(yīng)用服務(wù)器上。以JBoss為例,只需簡(jiǎn)單地將jar文件復(fù)制到JBoss的部署路徑中即可。

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     


  • 本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
    打開APP,閱讀全文并永久保存 查看更多類似文章
    猜你喜歡
    類似文章
    Hibernate SQLQuery:addEntity & addScalar
    七劍與java開源工具
    hibernate官方入門教程 (轉(zhuǎn)載)
    用hbm2java生成Hibernate類
    通過XDoclet(ant)生成Hibernate映射文件
    Ant多項(xiàng)功能配置
    更多類似文章 >>
    生活服務(wù)
    分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
    綁定賬號(hào)成功
    后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
    如果VIP功能使用有故障,
    可點(diǎn)擊這里聯(lián)系客服!

    聯(lián)系客服