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

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

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

    gembin

    OSGi, Eclipse Equinox, ECF, Virgo, Gemini, Apache Felix, Karaf, Aires, Camel, Eclipse RCP

    HBase, Hadoop, ZooKeeper, Cassandra

    Flex4, AS3, Swiz framework, GraniteDS, BlazeDS etc.

    There is nothing that software can't fix. Unfortunately, there is also nothing that software can't completely fuck up. That gap is called talent.

    About Me

     

    JSF In Action 學習之二 [原創](Managed Bean的創建與初始化)

    Managed Bean的創建與初始化

    1Managed Bean 被定義在faces-config.xml里,當這個Bean第一次被引用時就會被初始化,

    它的生存周期由<managed-bean-scope>XXX</managed-bean-scope>來決定,

    <managed-bean>

    <managed-bean-name>user</managed-bean-name>

    <managed-bean-class>org.examples.TestBean</managed-bean-class>

    <managed-bean-scope>session</managed-bean-scope>

    <managed-property>

    <property-name>id</property-name>

    <value>111</value>

    </managed-property>

    <managed-property>

    <property-name>name</property-name>

    <value>gembin</value>

    </managed-property>

    </managed-bean>

     

    這里其實用了反轉控制(Inversion of Control, IoC) type 2, 即通過Setter注入,具體可參考Fowler, Dependency Injection這本書。假如你需要當Application Startup的時候就要初始化一些Bean(例如建立數據庫連接,因為它的初始化需要1段時間),這就需要加ServletContextListener

     

    2.聲明Lists and Maps作為managed beans

     

    這里managed-bean-class必須是個實現類,而不能是List 或者Map,因為他們是接口,不能被初始化.

    并且用<list-entries><map-entry>代替<managed-property>

     

    <managed-bean>

    <description>List of favorite sites</description>

    <managed-bean-name>favoriteSites</managed-bean-name>

    <managed-bean-class>java.util.ArrayList</managed-bean-class>

    <managed-bean-scope>application</managed-bean-scope>

    <list-entries>

    <value>http://www.jsfcentral.com</value>

    <value>http://www.theserverside.com</value>

    <value>http://www.ibm.com/developerworks/</value>

    <value>http://otn.oracle.com</value>

    <value>http://www.java.net</value>

    <value>http://www.manning.com</value>

    </list-entries>

    </managed-bean>

     

    <managed-bean>

    <description>List of favorite sites, keyed by name.</description>

    <managed-bean-name>favoriteSitesMap</managed-bean-name>

    <managed-bean-class>java.util.HashMap</managed-bean-class>

    <managed-bean-scope>application</managed-bean-scope>

    <map-entries>

    <map-entry>

    <key>JSF Central</key>

    <value>http://www.jsfcentral.com</value>

    </map-entry>

    <map-entry>

    <key>TheServerSide.com</key>

    <value>http://www.theserverside.com</value>

    </map-entry>

    <map-entry>

    <key>IBM DeveloperWorks</key>

    <value>http://www.ibm.com/developerworks/</value>

    </map-entry>

    <map-entry>

    <key>Oracle Technology Network</key>

    <value>http://otn.oracle.com</value>

    </map-entry>

    <map-entry>

    <key>java.net</key>

    <value>http://www.java.net</value>

    </map-entry>

    <map-entry>

    <key>Manning Publications</key>

    <value>http://www.manning.com</value>

    </map-entry>

    </map-entries>

    </managed-bean>

     

     

    3. value-binding expressions引用managed beans

    假如有如下Beans

    <managed-bean>

    <description>test</description>

    <managed-bean-name>user</managed-bean-name>

    <managed-bean-class>org.examples.UserBean</managed-bean-class>

    <managed-bean-scope>session</managed-bean-scope>

    </managed-bean>

     

    <managed-bean>

    <managed-bean-name>referer </managed-bean-name>

    <managed-bean-class>org.examples.Referer</managed-bean-class>

    <managed-bean-scope>request</managed-bean-scope>

    <managed-property>

    <property-name>user</property-name>

    <value>#{user}</value>

    </managed-property>

    </managed-bean>

     

    這里referervalue-binding expressions引用了user,但是引用是不能循環的,即user不能在反過來引用referer,由此可見用value-binding expressions是相當的靈活阿,哈哈

     To be continued....

    posted on 2008-03-05 12:19 gembin 閱讀(2196) 評論(0)  編輯  收藏 所屬分類: JSF

    導航

    統計

    常用鏈接

    留言簿(6)

    隨筆分類(440)

    隨筆檔案(378)

    文章檔案(6)

    新聞檔案(1)

    相冊

    收藏夾(9)

    Adobe

    Android

    AS3

    Blog-Links

    Build

    Design Pattern

    Eclipse

    Favorite Links

    Flickr

    Game Dev

    HBase

    Identity Management

    IT resources

    JEE

    Language

    OpenID

    OSGi

    SOA

    Version Control

    最新隨筆

    搜索

    積分與排名

    最新評論

    閱讀排行榜

    評論排行榜

    free counters
    主站蜘蛛池模板: 无人视频免费观看免费视频 | 国产成在线观看免费视频| 亚洲av日韩综合一区在线观看| 免费观看黄色的网站| 亚洲国产精品综合久久久 | 国产成人免费午夜在线观看 | 久久精品7亚洲午夜a| 亚洲中文字幕无码久久2020| 韩国18福利视频免费观看| 污视频网站在线观看免费| 国产精品亚洲成在人线| 男性gay黄免费网站| 亚洲无线码在线一区观看| 精品一区二区三区无码免费视频 | 亚洲嫩模在线观看| 最新免费jlzzjlzz在线播放| 国产偷国产偷亚洲高清人| 亚洲日本一区二区三区在线| 在线免费观看你懂的| 日日摸日日碰夜夜爽亚洲| 亚洲午夜久久久影院| 国产精品视频免费一区二区| 天堂亚洲免费视频| 久久久久久亚洲Av无码精品专口| 成年女人视频网站免费m | 久久午夜伦鲁片免费无码| 亚洲色大成网站www| 国产亚洲精品资在线| 97碰公开在线观看免费视频| 深夜特黄a级毛片免费播放| 99视频在线免费看| 亚洲欧洲日产国码久在线| 亚洲免费精彩视频在线观看| 亚洲成av人片不卡无码久久 | 精品亚洲成a人片在线观看少妇| 亚洲日本va午夜中文字幕久久| 亚洲狠狠成人综合网| 久久精品国产亚洲AV麻豆网站| 亚洲精品动漫人成3d在线 | 亚洲人成中文字幕在线观看| 国产三级免费电影|