网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > Java
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.用Java的加密机制来保护你的数据.
.Eclipse插件之Spring IDE.
.分享Spring中接口注入的三种方式.
.Effective java学习笔记6:避免使.
.J2ME技术在手机开发领域的优势和.
.定位符.
.Mercury推出增强J2EE软件性能组件.
.Jive中的设计模式.
.关于Java编程语言中EJB容器存取和.
.Exo rc-ow版本正式发布.
.JDBC基础教程之连接.
.创造一种迅速而又随性的(quick a.
.用Java程序获取绝对路径.
.将DBMS存储过程封装为会话EJB组件.
.头文件生成器-javah.exe.
.sup 方法.
.细述Java技术开发规则--中级篇.
.Java技术与XML常见问题之JAXP.
.JAVA对大数值的计算.
.虚拟机监视器Xen和虚拟化技术(一.

有状态会话 bean运行结束时应及时被显示删除

发表日期:2008-1-5



  摘要
  当企业 Java bean(EJB)客户机不再需要有状态会话 bean 时,该客户机应该显式地将它从容器中除去。通过这样做,应用程序可以减少对钝化(passivation)的需要、最小化容器开销和提供更高级的性能。假如不显式地除去它们,容器对许多有状态会话 bean 的治理将耗费资源。
  
  建议
  有状态会话 bean 的实例与特定客户机有密切关系。它们将保持在容器中,直到由客户机显式地除去它们,或者当它们超时时由容器除去为止。同时,容器可能需要将非活动的有状态会话 bean 钝化到磁盘。这需要容器的开销并对应用程序构成了性能打击。假如随后应用程序需要钝化的会话 bean,容器通过从磁盘恢复该 bean 来激活它。
  
  通过在完成使用时显式地除去有状态会话 bean,应用程序将减少对钝化的需求,使容器开销最小化并改进性能。通过显式地除去有状态会话 bean,您不必依靠于超时值。
  
  当完成使用时显式地除去有状态会话 bean
  
  import java.io.*;
  import java.util.*;
  import javax.servlet.*;
  import javax.naming.*;
  import com.ibm.uxo.ejbs.*;
  
  public class BestPracticesServlet extends HttpServlet {
  
  BestPracticesHome sseHome = null;
  
  public void init(ServletConfig config) throws ServletExcpetion {
  super.init(config);
  try {
  sseHome = EJBhomeCache.getInstance().getMbhHome();
  }
  catch(Exception e) {
  throw new ServletException("INIT Error: " + e.getMessage(),e);
  }
  }
  
  public void doGet(HttpServletRequest request, HttpServletResponse response)
  throws ServletException, IOException {
  
  BestPractices ssmgr = null;
  
  try {
  ssmgr = sseHome.create(1);
  ssmgr.someBunchOfMethods();
  ssmgr.remove(); // EXPLICITLY REMOVE WHEN DONE!
  }
  catch (Exception e) {
  e.printStackTrace();
  }
  }
  }
  
  应被取代的方法
  Application Server 可以使用超时值来处理除去您的有状态会话 bean。但是,当治理这些资源时,您可能体验到下降的性能,这取决于应用程序。
上一篇:使用消息驱动Beans(3) 人气:593
下一篇:优化entity Bean的七条准则 人气:736
浏览全部Java的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐