提升JSP应用程序的秒招
来源: 阅读:747 次 日期:2015-01-27 14:58:20
温馨提示: 小编为您整理了“提升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)

更多信息请查看IT技术专栏

更多信息请查看脚本栏目
手机网站地址:提升JSP应用程序的秒招
由于各方面情况的不断调整与变化, 提供的所有考试信息和咨询回复仅供参考,敬请考生以权威部门公布的正式信息和咨询为准!

2025国考·省考课程试听报名

  • 报班类型
  • 姓名
  • 手机号
  • 验证码
关于我们 | 联系我们 | 人才招聘 | 网站声明 | 网站帮助 | 非正式的简要咨询 | 简要咨询须知 | 加入群交流 | 手机站点 | 投诉建议
工业和信息化部备案号:滇ICP备2023014141号-1 云南省教育厅备案号:云教ICP备0901021 滇公网安备53010202001879号 人力资源服务许可证:(云)人服证字(2023)第0102001523号
云南网警备案专用图标
联系电话:0871-65317125(9:00—18:00) 获取招聘考试信息及咨询关注公众号:
咨询QQ:526150442(9:00—18:00)版权所有:
云南网警报警专用图标
Baidu
map