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

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

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

    隨筆 - 312, 文章 - 14, 評論 - 1393, 引用 - 0
    數據加載中……

    eclipse + JBoss 5 + EJB3開發指南(3):使用Session Bean的本地接口

    本文為原創,如需轉載,請注明作者和出處,謝謝!

    上一篇:eclipse + JBoss 5 + EJB3開發指南(2):編寫有狀態的SessionBean

        有時客戶端程序(如JSP、Servlet)會和EJB組件運行在同一個JVM上,如在同一個J2EE服務器(JBoss、Weblogic等)中運行。這時就沒必要
    再通過遠程(remote)接口訪問Session Bean了,因為客戶端和session bean都在同一個jvm上,只需要通過本地接口(local)訪問即可。就象直接訪問本地類一樣(當然,不能直接訪問EJB類,需要使用jndi和local接口來獲得本地接口對象。當然,也可以通過remote接口來訪問ejb,不過這樣會有一些性能損失。就象在同一臺機器上還通過socket進行訪問一樣,很多性能都損耗在網絡上了。下面我們來舉個簡單的例子來看一下如何使用本地接口來訪問session bean。
        先建立一個session bean本地接口,代碼如下:
    package service;

    import java.util.List;
    import javax.ejb.Local;

    @Local
    public interface ShoppingCart
    {
        
    //  添加某個商品信息
        public void addCommodity (String value);
        
    //  獲得客戶購買的所有商品的紗銜泥
        public List<String> getCommodity();
    }

        關于Session Bean的具體實現類與遠程接口的實現類一樣,讀者可以參考《編寫有狀態的SessionBean》一文中的ShoppingCartBean類。
        下面在Eclipse中新建立一個Web工程(工程名:JBossWeb),該工程需要引用MyEJB工程(包含EJB組件的工程),在WebContent目錄中建立一個test.jsp頁面,代碼如下:
    <%@ page language="java" contentType="text/html; charset=GB18030"
        pageEncoding
    ="GB18030" import="java.util.List,java.util.Properties,
                          javax.naming.InitialContext,service.ShoppingCart
    "%>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=GB18030">
    <title>Insert title here</title>
    </head>
    <body>

    </body> remote
    <%
        Properties prop 
    = new Properties();
        InitialContext ctx 
    = new InitialContext();        
        ShoppingCart shoppingCart 
    = (ShoppingCart) ctx
            .lookup(
    "ShoppingCartBean/local");
        shoppingCart.addCommodity(
    "自行車");
        shoppingCart.addCommodity(
    "筆記本電腦");
        shoppingCart.addCommodity(
    "液晶電視");
        List
    <String> commodities = shoppingCart.getCommodity();
        for(String commodity: commodities)
        {
            System.out.println(commodity);
        } 
    %>
    </html>
        訪問本地接口要使用的jndi name應為“ShoppingCartBean/local”。
        啟動JBoss,在瀏覽器中輸入如下的URL:
    http://localhost:8080/JBossWeb/test.jsp
        在Eclipse的Console中會輸出如下的信息:
    16:55:17,633 INFO  [STDOUT] 自行車
    16:55:17,633 INFO  [STDOUT] 筆記本電腦
    16:55:17,633 INFO  [STDOUT] 液晶電視

    下一篇:eclipse + JBoss 5 + EJB3開發指南(4):Session Bean中的注釋方法



    Android開發完全講義(第2版)(本書版權已輸出到臺灣)

    http://product.dangdang.com/product.aspx?product_id=22741502



    Android高薪之路:Android程序員面試寶典 http://book.360buy.com/10970314.html


    新浪微博:http://t.sina.com.cn/androidguy   昵稱:李寧_Lining

    posted on 2009-05-14 17:15 銀河使者 閱讀(2501) 評論(0)  編輯  收藏 所屬分類: web 、 原創 、ejb3 、JBoss

    主站蜘蛛池模板: 亚洲成年人免费网站| 精品特级一级毛片免费观看| 亚洲AV无码日韩AV无码导航| 亚洲真人无码永久在线| 久久精品国产精品亚洲艾草网美妙| 又粗又大又硬又爽的免费视频 | 亚洲成熟丰满熟妇高潮XXXXX| 亚洲AV成人一区二区三区在线看| 亚洲成a人片在线看| 亚洲精品自偷自拍无码| 亚洲精华国产精华精华液网站| 久久精品熟女亚洲av麻豆| 色综合久久精品亚洲国产| 黄色大片免费网站| 一级毛片免费不卡直观看| 四虎影视无码永久免费| 青青草无码免费一二三区| 2021国产精品成人免费视频| 成年女人午夜毛片免费视频| 国产大片免费观看中文字幕| 亚洲av午夜成人片精品电影| 亚洲一区二区三区影院| 久久亚洲中文字幕精品有坂深雪 | 综合久久久久久中文字幕亚洲国产国产综合一区首 | 国产网站免费观看| 亚洲一本大道无码av天堂| 亚洲不卡av不卡一区二区| 亚洲老熟女@TubeumTV| 亚洲日韩国产一区二区三区在线| 午夜亚洲乱码伦小说区69堂| 国产日韩久久免费影院| 98精品全国免费观看视频| 青苹果乐园免费高清在线| 四虎永久免费地址在线网站| 在线亚洲97se亚洲综合在线| 亚洲αv在线精品糸列| 久久精品国产亚洲AV蜜臀色欲 | 国产成人亚洲综合一区| 一级做a爰黑人又硬又粗免费看51社区国产精品视| 久久久久免费视频| 成人免费视频69|