JSP动态包含与静态包含的区别

一:动态与静态

动态是指编译后的jsp文件在运行时动态加入,动态运行,而静态则与之相反

二:过程与区别

动态包含是编译多个class文件,不与主体文件合并,一个jsp编译成一个class文件,执行时间是执行class文件阶段,动态加入,相当于执行了多个class文件,而静态包含是只生成一个class文件,被包含的文件会与主体文件合并,执行时间是java文件阶段,相当于把镶嵌的页面内容直接复制到主体文件,然后形成一个java文件,一起编译成一个class文件,虽然动态包含有多个class文件,但是request对象是同一个。

另外:jsp实际就是一个模板引擎,tomcat会把它处理成一个java文件,进而编译成一个class文件,当浏览器访问时,又会被渲染成HTML文档进行展示。除此之外,Velocity也是一个模板引擎,以vm为后缀,一样可以通过java代码渲染模板

编译后的jsp文件被放在了tomcat的缓存文件夹work里,该文件夹是用来存放tomcat缓存的

最后:附上后端技术交流圈,欢迎各位大佬入圈交流.......(先添加好友后拉群,添加好友时请备注:小白不黑)

 

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: JSP动态include与静态include的区别在于: 1. 静态include是在编译时就将被包含的文件插入到JSP页面中,而动态include是在运行时根据条件动态地将文件包含JSP页面中。 2. 静态include的文件路径是固定的,而动态include的文件路径可以根据需要动态地改变。 3. 静态include的文件在每次请求页面时都会被包含,而动态include的文件只有在满足条件时才会被包含。 4. 静态include的效率比动态include高,但是动态include更加灵活,可以根据需要动态包含文件。 ### 回答2: JSP中的动态include和静态include都是用来实现页面模块化的方法,不同之处在于动态include是在运行时进行的,而静态include是在编译时完成的。 静态include会在JSP文件编译成Servlet时将指定的文件包含进来,成为Servlet中的一部分,这样就可以在运行时直接调用。静态include的好处在于它是在编译时完成的,所以具有很好的性能和可靠性。但是静态include不够灵活,不方便在运行时动态调整页面结构。 动态include则需要在每次页面请求时,通过JSP动态指定需要包含的文件,然后再将这个文件的内容加入到请求生成的HTML页面中。动态include的好处在于可以根据需要动态调整页面结构,使页面更加灵活。但是动态include的缺点在于会增加服务器的负担,同时也会影响页面的加载速度。 因此,在选择使用动态include还是静态include时,需要根据具体情况综合考虑,根据页面的需求和服务器的性能来进行选择。一般来说,如果页面需要频繁调整,或者需要处理较为复杂的业务逻辑,可以选择使用动态include,否则就可以选择使用静态include。 ### 回答3: JSP中的include指的是将其他JSP文件嵌入到当前JSP文件中进行展示。包括动态include和静态include两种方式。两者之间的区别在于如何包含其他JSP文件。 静态include是在编译时完成的,将被包含JSP文件的内容全部插入到当前JSP文件的指定位置。在客户端访问JSP页面的时候,只需处理一次,减小了服务器的负担,但是如果被包含JSP文件的内容发生改变,需要重新编译整个JSP文件。 动态include是在运行时动态地将被包含JSP文件的内容插入到当前JSP文件中。每次访问当前JSP页面都会重新处理一次被包含JSP文件,也就是说,如果被包含JSP文件的内容发生改变,只需重新处理这个被包含的文件即可,而不需要重新编译整个JSP文件。所以动态include可以更加灵活地处理页面的变化。 综上所述,动态include与静态include的区别主要在于其处理方式不同。动态include在运行时动态地处理被包含JSP文件,而静态include在编译时就完成了整个文件的合并。根据实际需要的不同,可以灵活地选择使用哪种方式。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值