• jsp的include两种使用方法区别


             指令include是将被包含页面中的代码复制粘贴到主页面中,最后编译形成主页面的类文件(一个)。 指令include中file属性的值必须是项目中已存在的文件,否则主页面报异常。 指令include如果被包含页面内容改变,主页面会即时改变。

             做jsp的大家都知道,有两种include其他页面的方法,一种是说明标签<%@ include  file="xxx.jsp"%>,一种是动作标签<jsp:include  page="xxx.jsp"/> 。

            我在动态网页制作教程中a.jsp页面上定义了一个 String  path = request.getContextPath() , 而这个页面用说明标签引入了一个b.jsp ,而这个上面也需要一个String path = request.getContextPath() , 结果打开a.jsp时报错了,说path这个变量已经定义过了。查看其他同样也引了b.jsp的页面,他们也定义了path这个字符串变量,却没有这种错误,我刚开始还挺纳闷,后来发现他们和a.jsp所引入的方法是不一样的----都是动作标签。后来把a.jsp改了之后,问题就不再出现了。

            回想书上说,说明标签是静态引入,动作标签是动态,当初不太明白,现在一想也许是这样的:静态引入是把b.jsp的源码拼接到a.jsp中,在一块编译,这样两者代码是加到一起的,所以b.jsp定义的path就形成了重复;而动态引入则是分开编译两个jsp,把行成的html再加到一起,所以不会出现重复定义的问题。

  • 相关阅读:
    Java学习笔记2.Java标识符和基本数据类型
    Java面试题库(四)
    Eclipse最常用的一些快捷键技巧
    心理学166个现象(很多,别一次看完!)[119]
    Java学习笔记1.Java发展及JDK配置
    SQL操作全集
    J2EE面试题库
    Java面试题库(一)
    Java程序员,面试必读
    Java面试题库(二)
  • 原文地址:https://www.cnblogs.com/liwendeboke/p/6003583.html
Copyright © 2020-2023  润新知