java中的动态导入与动态导入

编辑器加载中include指令<%@include file=""%>,这种方式的引入属于静态导入,include行为,这种方式的导入属于动态的导入,这里涉及到一个jsp的原理上的问题。 当我在地址栏中输入一个jsp的地址的时候,点击回车,会提交一个请求给我的web容器(如:tomcat,resin)等,这个容器会把这个以jsp结尾的请求对应到一个jsp引擎(其实也是一个servlet)来处理,这个servlet一定会去先把要回应请求的jsp转义成为servlet(此时 include指令被解释执行),然后,把这个servlet编译为class文件,由虚拟机解释执行,处理用户的请求(此时include行为执行),然后再生成响应。 所以说,静态导入是在转译时发生的,是代码级的导入,这个指令的作用就是让jsp引擎去按照这个指令去做一些事情。而include动作是在请求处理阶段发生的,也就是说,include动作会产生两个servlet,两者之间可以传参数,引入的是处理后的结果。 静态导入适合导入不会变化的资源,例如一个html文件,而动态导入适合导入一个时常变化的资源,如servelt和jsp。 一、静态导入生成的一个servlet,而动态导入生成的多个servlet 二、静态的导入为<%@include file=""%> ,动态导入
posted @ 2011-11-29 22:21  啊孟  阅读(678)  评论(0编辑  收藏  举报