TAGLIB的性能和平台兼容性??

03-09-26 camer

今天和一个我以前一起做项目的朋友聊,他说TAGLIB对页面请求的性能影响很大,没有用TAG的JSP比用了TAG的要快上N倍,这个说

法让我感到惊讶,到底是不是这样,我也需要测试一把,大虾们的看法呢??

另外,由于不同的服务器对TAG的解析是不一致的,所以在更换不同的SERVER(WEB SERVER/APP SERVER)时,可能会产生比较大的工

作量,各位有没有这样的体验。。。。请赐教

多谢了 :)

wys1978
2003-09-26 22:42

没有用taglib的jsp确实要比用了tag的要快很多,你拿编译过的jsp对应的servlet java文件看一下就知道为什么了。而且不同的container处理taglib的速度是不一样的,resin就比tomcat快很多。

不同的server对于tag的解析是一样的,只有部分特性会不同,我只知道2点:

1.是否支持nested jsp exception,这会导致你的tag代码在处理exception时候会需要有点改变。

2. response输出的代码会有不同,有些server是用OutPutStream, 有些是用Writer:

response.getOutputStream().print();

response.getWriter().print();

因为你用的是taglib,所以换服务器的时候只需要修改lib的代码,工作量是很少的,最好的做法是做一个J2ee兼容性检查的工具类,有一些opensource的application可以在不同server都跑得很好,它们里面就有这样的代码,你可以参考一下。