网站建设资讯

NEWS

网站建设资讯

Eclipse+JBoss+EJB3使用SessionBean的本地接口

有时客户端程序(如JSP、Servlet)会和EJB组件运行在同一个JVM上,如在同一个J2EE服务器(JBoss、Weblogic等)中运行。这时就没必要

成都创新互联于2013年成立,先为荣县等服务建站,荣县等地企业,进行企业商务咨询服务。为荣县企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

再通过远程(remote)接口访问Session Bean了,因为客户端和session bean都在同一个jvm上,只需要通过本地接口(local)访问即可。就象直接访问本地类一样(当然,不能直接访问EJB类,需要使用jndi和 local接口来获得本地接口对象。当然,也可以通过remote接口来访问ejb,不过这样会有一些性能损失。就象在同一台机器上还通过socket进行访问一样,很多性能都损耗在网络上了。下面我们来举个简单的例子来看一下如何使用本地接口来访问session bean。
    先建立一个session bean本地接口,代码如下:

 

      
      
      
  1. package service;  
  2.  
  3. import java.util.List;  
  4. import javax.ejb.Local;  
  5.  
  6. @Local  
  7. public interface ShoppingCart  
  8. {  
  9.     //  添加某个商品信息  
  10.     public void addCommodity (String value);  
  11.     //  获得客户购买的所有商品的纱衔泥  
  12.     public List getCommodity();  

 

关于Session Bean的具体实现类与远程接口的实现类一样,读者可以参考《编写有状态的SessionBean》一文中的ShoppingCartBean类。

下面在Eclipse中新建立一个Web工程(工程名:JBossWeb),该工程需要引用MyEJB工程(包含EJB组件的工程),在WebContent目录中建立一个test.jsp页面,代码如下:

 

      
      
      
  1. <%@ page language="java" contentType="text/html; charset=GB18030" 
  2.     pageEncoding="GB18030" import="java.util.List,java.util.Propert     
  3. javax.naming.InitialContext,service.ShoppingCart"%> 
  4. > 
  5.  
  6.  
  7.  http-equiv="Content-Type" content="text/html; charset=GB18030"> 
  8. </strong>Insert title here<strong> title></strong> </li> <li><strong> head></strong> </li> <li><strong><body></strong> </li> <li> </li> <li><strong> body></strong> remote  </li> <li><strong><</strong>%  </li> <li>    Properties prop = new Properties();  </li> <li>    InitialContext ctx = new InitialContext();          </li> <li>    ShoppingCart shoppingCart = (ShoppingCart) ctx  </li> <li>        .lookup("ShoppingCartBean/local");  </li> <li>    shoppingCart.addCommodity("自行车");  </li> <li>    shoppingCart.addCommodity("笔记本电脑");  </li> <li>    shoppingCart.addCommodity("液晶电视");  </li> <li>    List<strong><String></strong> commodities = shoppingCart.getCommodity();  </li> <li>    for(String commodity: commodities)  </li> <li>    {  </li> <li>        System.out.println(commodity);  </li> <li>    }   </li> <li>%<strong>></strong> </li> <li><strong> html></strong> </li> </ol></pre> </td></tr></tbody></table><p> </p><p>访问本地接口要使用的jndi name应为“ShoppingCartBean/local”。<br />启动JBoss,在浏览器中输入如下的URL:<br />http://localhost:8080/JBossWeb/test.jsp<br />在Eclipse的Console中会输出如下的信息:</p><table cellspacing="0" cellpadding="2" width="400" border="1"> <tbody> <tr><td><pre><p> </p><pre> <ol> <li>16:55:17,633 INFO  [STDOUT] 自行车  </li> <li>16:55:17,633 INFO  [STDOUT] 笔记本电脑  </li> <li>16:55:17,633 INFO  [STDOUT] 液晶电视  </li> </ol></pre> </td></tr></tbody></table> <br> 网站标题:Eclipse+JBoss+EJB3使用SessionBean的本地接口 <br> 网站URL:<a href="http://fzjierui.cn/article/dhdjegj.html">http://fzjierui.cn/article/dhdjegj.html</a> </div> </div> <div class="other"> <h3>其他资讯</h3> <ul> <li> <a href="/article/cdjehss.html">职位空缺精通Redis 架构师(redis 架构师)</a> </li><li> <a href="/article/cdjehdc.html">怎样在网上查村里人员信息?(网址如何查询所有人信息查询记录)</a> </li><li> <a href="/article/cdjeppi.html">代挂服务器原理?(代理服务器怎么工作的)</a> </li><li> <a href="/article/cdjehcj.html">windows游戏模拟器推荐?(windows系统大游戏)</a> </li><li> <a href="/article/cdjehse.html">oracle伪列</a> </li> </ul> </div> </div> </div> <footer> <div class="footop"> <div class="wrap"> <div class="bottomrpw"> <div class="erp arp"> <dl> <dt>ADDRESS</dt> <dd class="address"> <i class="icon"></i> <span class="word">成都市青羊区锦天国际1号楼1002室</span> </dd> </dl> </div> <div class="erp arp"> <dl> <dt>TEL</dt> <dd class="phonum"> <i class="icon"></i> <span class="word en"> <a href="tel:18980820575">18980820575</a> </span> </dd> </dl> </div> <div class="erp crp"> <dl> <dt>OTHER</dt> <dd> <a class="word get-quote">获得报价与方案</a> </dd> <dd> <a href="https://www.cdxwcx.com/pay/" target="_blank" rel='nofollow' class="word" title="付款方式">付款方式</a> </dd> </dl> </div> <div class="erp code-rp"> <dl> <dt>Wechat</dt> <dd class="code-wrap"> <span class="code"> <img src="/Public/Home/images/qr-code.jpg" alt="美图齐众微信公众号" /> </span> </dd> </dl> </div> </div> </div> </div> <div class="footerbot"> <div class="friendlinks"> <div class="wrap"> <ul class="rpl"> <li><a href="http://chengdu.cdcxhl.com/" title="成都网站制作" target="_blank">成都网站制作</a></li><li><a href="http://www.dwxjge.com/" title="大悟县咖啡机" target="_blank">大悟县咖啡机</a></li><li><a href="http://www.bcwzsj.com/" title="成都广告安装公司" target="_blank">成都广告安装公司</a></li><li><a href="http://chengdu.cdcxhl.com/seo/" title="网站排名" target="_blank">网站排名</a></li><li><a href="http://www.sslhqy.com/" title="sslhqy.com" target="_blank">sslhqy.com</a></li><li><a href="http://www.scyuzhou.com/" title="led发光广告字" target="_blank">led发光广告字</a></li><li><a href="http://www.jyfdjzy.cn/" title="名片设计制作" target="_blank">名片设计制作</a></li><li><a href="https://www.cdcxhl.com/idc/cqstsanx.html" title="重庆水土三线托管" target="_blank">重庆水土三线托管</a></li><li><a href="http://www.cdxwcx.cn/tuoguan/neijiang.html" title="内江托管服务器" target="_blank">内江托管服务器</a></li><li><a href="http://www.mengsitu.com/" title="成都门头发光字设计" target="_blank">成都门头发光字设计</a></li> </ul> </div> </div> <div class="wrap"> <div class="copyright"> <span class="en">©2025</span> 青羊区美图齐众设计工作室(个体工商户) <span class="en">ALL RIGHTS RESERVED.</span> <a rel="nofollow" href="http://www.miitbeian.gov.cn" target="_blank">蜀ICP备19037934号</a> </div> </div> </div> </footer> <div class="fcwrap"> <ul class="rpl clearfix"> <li class="phone"> <a rel="nofollow" target="_blank" href="tel:18980820575"> <i class="icon"></i> <strong>18980820575</strong> </a> </li> <li class="qq"> <a rel="nofollow" target="_blank" href="https://wpa.qq.com/msgrd?v=1&uin=244261566&site=qq&menu=yes"> <i class="icon"></i> <strong>244261566</strong> </a> </li> <li class="back-top"> <a href="javascript:void(0)" rel="nofollow" class="back-to-top"> <i class="icon"></i> <strong>回到顶部</strong> </a> </li> </ul> </div> <!--nav--> <div class="n-Wrap"> <div class="navBar visble show"> <div class="barlogo"> <a href="/" rel="nofollow"> <img src="/Public/Home/images/logo1.png" alt="遂宁做网站" /> <img src="/Public/Home/images/logo2.png" alt="遂宁网站设计" /> </a> </div> <div class="bmenu"> <i class="bar-top"><span></span></i> <i class="bar-cen"><span></span></i> <i class="bar-bom"><span></span></i> <i class="bar-left"><span></span></i> <i class="bar-right"><span></span></i> </div> </div> <section class="fixmenu"> <div class="close-bar"> <i class="bar-left"><span></span></i> <i class="bar-right"><span></span></i> </div> <nav class="smph"> <ul> <li class="index-hrefs on"><a href="http://www.fzjierui.cn/"><font>首页</font></a></li> <li><a href="/about/" rel="nofollow"><font>关于美图</font></a></li> <li><a href="/service/" rel="nofollow"><font>服务范围</font></a></li> <li><a href="/case/" rel="nofollow"><font>案例展示</font></a></li> <li><a href="/solve/" rel="nofollow"><font>解决方案</font></a></li> <li><a href="/news/" rel="nofollow"><font>建站资讯</font></a></li> <li><a href="/contact/" rel="nofollow"><font>联系美图</font></a></li> </ul> <div class="pwrap"> <span class="label">服务热线</span> <strong class="phone"><a href="tel:18980820575">18980820575</a></strong> </div> </nav> </section> </div> <!--end nav--> <script src="/Public/Home/js/hotcss.js"></script> <script type="text/javascript" src="/Public/Home/js/su_new.js"></script> </body> </html> <script> $(".con img").each(function(){ var src = $(this).attr("src"); //获取图片地址 var str=new RegExp("http"); var result=str.test(src); if(result==false){ var url = "https://www.cdcxhl.com"+src; //绝对路径 $(this).attr("src",url); } }); window.onload=function(){ document.oncontextmenu=function(){ return false; } } </script>