在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
一、静态包含 本文介绍JSP静态包含语句,即使用JSP的include指令来完成的包含操作。 所谓静态包含,跟ASP中的包含是一样的效果,即将所有包含的文件,先静态的包含进来,组成一个大的JSP文件,然后再经过编译器统一编译,生成HTML代码。 JSP静态包含的语句为: 复制代码 代码如下: <%@ include file="file.jsp" %> 这里的file.jsp就是要包含的文件,这里可以使用目录进行包含,可以是相对目录,可以是绝对路径。 JSP静态包含时,需要注意编码的问题。 在JSP文件中,我们必须指定页面的contentType为GBK、GB2312、UTF-8等才能在文档里面输入中文。如下: 复制代码 代码如下: <%@ page language="java" contentType="text/html; charset=GBK" pageEncoding="GBK" %> 但这里务必注意,当这个文件被静态包含时,它的编码如果跟包含它的文件的编码有一点点不一致,都会报错。所以,如果要静态包含,一定要把这两个文件的编码这一句(即contentType)确保完全一致。 二、动态包含 在ASP中没有动态包含这一说法,所有的包含都是静态包含。而JSP中,动态包含和静态包含有很大的区别。 JSP中的动态包含不同于静态包含,它是在将各个JSP页面分别编译执行后,将大家执行的HTML结果,组合到一起向客户端浏览器输出的一种方式。 什么意思呢? 比如a.jsp,包含了b.jsp和c.jsp。a.jsp是无法共享b.jsp和c.jsp中设置的变量和函数的,也无法共享其逻辑结构。各自是分别编译并执行的。比如a执行后输出"a",b.jsp执行后输出"b",c.jsp执行后输出"c",那么最终将输出"abc"。 JSP动态包含的语法: JSP动态包含不是使用的一个指令,而是使用的一个标签,如下: 复制代码 代码如下: <jsp:include page="file.jsp" /> 或者: 复制代码 代码如下: <jsp:include page="file.jsp"> <jsp:param name="p1" vlaue="v1" /> </jsp:include> 上面两种语句并没有本质的区别,只是前者是一个简单的包含,而后者可以给被包含页面传递参数而已。参数传递到被包含页面时,可以使用request.getParameter("参数名")的方式来获取。 大家知道在asp中,如果使用include包含语句,那么被包含的文件上是不能带参数的。所以,在asp中的包含是跟jsp中的静态包含一样的。 |
请发表评论