JSP指令
JSP 指令的作用是为当前页面做一些基本的属性设置,为当前的页面的运行提供基本的环境。
在JSP中包含三类指令:
- page,页面指令
- include,包含指令
- taglib,标签库指令
这些指令的使用的语法格式均为如下形式:
<%@ 指令名称 属性名=属性值 ... %>
page指令
page指令用于设置当前JSP页面的相关信息, 一个 JSP中可以包含多个 page 指令,有以下几个常用的属性:
pageEncoding
pageEncoding属性用于设置当前JSP页面的字符编码格式。
<%@ page pageEncoding="UTF-8" %>
include指令
包含指令,用于将某个文件包含到当前的 JSP 文件中。该指令只有一个属性 file,用于指定要包含的文件。
被包含的文件可以是 JSP 文件,也可以是 HTML文件。
这里定义一个名为 left.jsp 的文件,其中定义了一个变量 sum。
<%
int sum = 10;
%>
再定义一个index.jsp文件,将left.jsp文件包含进来:
<%@ include file="/left.jsp" %>
<br>
<!-- 访问sum变量 -->
<%= sum%>
找到生成java文件的目录,里面只生成了一个 index_jsp.java 的文件,并没有生成left_jsp.java 文件。那是因为 JSP 翻译引擎在翻译时,会将 include 指令所指定的文件内容直接翻译到当前 JSP 的java源码中,形成一个.java 文件。这个包含操作是在编译之前由 JSP 翻译引擎完成的,不是在程序运行期完成的。这种包含通常被称为静态包含,与之相对的还有动态包含(后面会讲到)。
由于在编译期就将这些文件合并为了一个 java文件,所以,整个过程就一个_jspService()方法。也就是说,这些文件之间是可以相互访问局部变量的,只要满足变量声明与使用的先后顺序即可。
为什么使用 include 指令
在一个web系统中,往往很多页面的头部、底部等内容是相同的,为了减少重复性的工作和便于修改,可以将这些内容相同的内容单独定义为一个jsp文件,在需要的时候直接使用include指令将其引入进来即可,这样不仅大大减少了工作量,还做到了对于页面修改的”一改全改”效果。
网友评论