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

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

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

    隨筆-75  評論-193  文章-5  trackbacks-0

            看了Seam的例子,也看了Seam的簡介,禁不住手癢,還是先做一個例子吧,遵照《seam_reference》第三章中的指導,使用JBossTool生成了自己的第一個例子,過程如下:

    1、生成Sem web項目

    step1

    2、輸入項目的相關信息,如下圖:

    step2

          注意,如果是第一次使用Eclipse,需要配置Target Runtime和Target Server。

    3、然后一路next,到最后一步時,如果是第一次使用,也要注意配置Seam Runtime和Connection Profile,如下圖。最后點擊finish按鈕,即可創建Seam項目。

    step3

    4、生成項目后,在Eclipse中共出現了四個項目,如下:

    • seamfirst (web項目)
    • seamfirst-ear (ear項目,集成web和ejb)
    • seamfirst-jar (ejb項目)
    • seamfirst-test (測試項目,進行單元測試)

          此時運行JBossServer服務器,訪問http://localhost:8080/seamfirst鏈接,出現如下圖頁面,此時Seam幫我們生成了一個框架,包含了基本的登錄和退出功能,還有一個首頁。

    step5

    5、繼續!使用Seam生成單表的CRUD操作。本步驟前提,有一個mysql數據庫,數據庫中有一個Customer表,該表有ID(int類型)、customername(varchar2類型)、customerdesc(varchar2類型)、createdate(date類型)、email(varchar2類型)五個字段。在seamfirst項目上點擊右鍵,選擇Seam Generate Entities菜單,彈出界面如下圖:

    step6

    step7

          單擊finish按鈕后,再運行JBoss Server服務器,訪問http://localhost:8080/seamfirst,發覺菜單欄上多了一個Customer List菜單,單擊此鏈接,即可進行Customer的添加、刪除、修改、查詢操作,雖然生成的界面不是很好看,也不是很符合我自己的操作習慣,但是功能倒是完備。

          以后若是修改了Seam提供的代碼自動生成的模板,然后再使用該功能,想必生成的頁面就符合自己的項目要求了,記下一筆,先不管它。

     

    生成的代碼分析:

    生成的代碼主要有兩部分,一部分為Java代碼,一部分為頁面代碼。

    Java代碼包括如下三個類:

    • Customer.java ---- 實體類,映射到數據庫中的Customer表。
    • CustomerHome.java ---- SessionBean,提供了Customer類的創建、更新、刪除功能。繼承了org.jboss.seam.framework.EntityHome類,EntityHome類中提供創建、更新、刪除等基本功能。
    • CustomerList.java ---- SessionBean,提供了Customer類的查詢功能。繼承了org.jboss.seam.framework.EntityQuery類,EntityQuery類中提供了查詢功能。

          CustomerHome和CustomerList類中都使用了@Name annotation,這樣在頁面中就可以直接訪問Session Bean中的方法了,達到了Seam將表現層和業務層直接融合的目標。

    頁面代碼包括如下文件:

    • Customer.xhtml
    • Customer.page.xml
    • CustomerEdit.xhtml
    • CustomerEdit.page.xml
    • CustomerList.xhtml
    • CustomerList.page.xml

          剛開始看這段代碼時,困惑我的有兩個地方

    • 一個是CustomerList.xhtml中rich:dataTable的value為"#{customerList.resultList}",customerList我明白指的是CustomerList SessionBean,但是我看遍了其代碼,也沒有發現有resultList屬性,后來仔細一看,才發覺該屬性在其父類EntityQuery中。
    • 另一個是每一個xhtml文件都有一個對應的page.xml文件,想了半天也沒整明白這是怎么回事,后來只好繼續看Seam in Action的第三章,看著看著終于明白了,原來這是Seam對JSF的一個擴展,增強了JSF的功能,具體含義后面詳細解釋。

    至此第一個使用JBossTools生成的Seam例子完成了,好像很簡單 :-)

    posted on 2008-12-09 22:40 The Matrix 閱讀(2137) 評論(1)  編輯  收藏 所屬分類: JBoss Seam/JSF

    評論:
    # re: JBossSeam學習系列之三--第一個例子 2011-04-19 10:23 | 小雪
    你好,我按照您的步驟做到了
    4、生成項目后,在Eclipse中共出現了四個項目,如下:

    seamfirst (web項目)
    seamfirst-ear (ear項目,集成web和ejb)
    seamfirst-jar (ejb項目)
    seamfirst-test (測試項目,進行單元測試)
    這步驟之后,在瀏覽器上輸入 http://localhost:8080/seamweb 的時候,怎么發布不出來呀,我的jboss已經啟動了。找不出原因,幫幫忙好嗎,謝謝  回復  更多評論
      
    主站蜘蛛池模板: 亚洲gay片在线gv网站| 日本免费的一级v一片| 一本岛v免费不卡一二三区| 亚洲av无码片在线观看| 亚洲伊人久久精品影院| 在线观看国产情趣免费视频| 69xx免费观看视频| 中文无码成人免费视频在线观看| 国产AV无码专区亚洲AV琪琪| 亚洲一区欧洲一区| 亚洲精品资源在线| 久久久久亚洲av无码专区喷水| 亚洲中文久久精品无码| 亚洲AⅤ永久无码精品AA| 天天操夜夜操免费视频| 日本免费网址大全在线观看| 久久九九AV免费精品| 特级做A爰片毛片免费看无码| 又大又硬又粗又黄的视频免费看| 色婷婷六月亚洲综合香蕉| 亚洲综合精品伊人久久| 亚洲综合色7777情网站777| 亚洲美女视频一区| 亚洲熟妇色自偷自拍另类| 91亚洲va在线天线va天堂va国产| 亚洲AV无码不卡在线播放| 亚洲va无码va在线va天堂| 亚洲色婷婷综合久久| 国产亚洲真人做受在线观看| 亚洲亚洲人成综合网络| 亚洲色偷偷综合亚洲AVYP| 亚洲精品午夜国产VA久久成人| 国产亚洲色婷婷久久99精品91| 亚洲人成色7777在线观看不卡| 久99精品视频在线观看婷亚洲片国产一区一级在线 | 免费无码AV一区二区| 久久久久久亚洲av无码蜜芽| 青青青亚洲精品国产| 特级aaaaaaaaa毛片免费视频| 亚洲欧洲无码一区二区三区| 亚洲精品中文字幕|