加入收藏 | 设为首页 | 会员中心 | 我要投稿 聊城站长网 (https://www.0635zz.com/)- 智能语音交互、行业智能、AI应用、云计算、5G!
当前位置: 首页 > 教程 > 正文

JSP中提升页面响应速度的7个窍门与方法

发布时间:2023-06-03 13:31:57 所属栏目:教程 来源:
导读:本站收录这篇文章JSP中提升页面响应速度的7个技巧与方法,详细解说文章中相关响应速度 技巧 JSP 技术与知识,欢迎能给大家一些在这方面的支持和帮助!下面是详细内容:

  方法一:在servlet的init()方法中缓存
本站收录这篇文章JSP中提升页面响应速度的7个技巧与方法,详细解说文章中相关响应速度 技巧 JSP 技术与知识,欢迎能给大家一些在这方面的支持和帮助!下面是详细内容:
 
  方法一:在servlet的init()方法中缓存数据
 
  当应用服务器初始化servlet实例之后,为客户端请求提供服务之前,它会调用这个servlet的init()方法。在一个servlet的生命周期中,init()方法只会被调用一次。通过在init()方法中缓存一些静态的数据或完成一些只需要执行一次的、耗时的操作,就可大大地提高系统性能。
 
  例如,通过在init()方法中建立一个JDBC连接池是一个最佳例子,假设我们是用jdbc2.0的DataSource接口来取得数据库连接,在通常的情况下,我们需要通过JNDI来取得具体的数据源。我们可以想象在一个具体的应用中,如果每次SQL请求都要执行一次JNDI查询的话,那系统性能将会急剧下降。解决方法是如下代码,它通过缓存DataSource,使得下一次SQL调用时仍然可以继续利用它:
 
public class ControllerServlet extends HttpServlet{
 
private javax.sql.DataSource testDS = null;  
 
public void init(ServletConfig config) throws ServletException {
 
super.init(config);   
 
Context ctx = null;  
 
try{    
 
ctx = new InitialContext();   
 
testDS = (javax.sql.DataSource)ctx.lookup("jdbc/testDS");
 
}catch(NamingException ne){ne.printStackTrace();}
 
}catch(Exception e){e.printStackTrace();}
 
} 
 
public javax.sql.DataSource getTestDS(){ 
 
 return testDS; 
 
} 
 
...
 
...
 
}
 
  方法 2:禁止servlet和JSP 自动重载(auto-reloading)
 
  Servlet/JSP提供了一个实用的技术,即自动重载技术,它为开发人员提供了一个好的开发环境,当你改变servlet和JSP页面后而不必重启应用服务器。然而,这种技术在产品运行阶段对系统的资源是一个极大的损耗,因为它会给JSP引擎的类装载器(classloader)带来极大的负担。因此关闭自动重载功能对系统性能的提升是一个极大的帮助。
 
 

(编辑:聊城站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!