一、三个编译指令
1、page指令:
首先,我们要明确一点就是page指令是一个全局指令,针对当前页面,其次我们再来深挖他的功能,它到底有哪些功能那,在我们程序中起到什么作用???
a、语法结构:<%page %>
b、<%page language="java"%>:这个属性用于设定jsp的编程语言,目前java是唯一有效的编程语言。
c、<%page extends=""%>:我们知道jsp的底层其实是Servlet,这里的这个属性就是指我们的这个jsp是继承那个Servlet的。这个我们一般不做修改,默认继承的是HttpJspBase.
d、<%page erropage=""%>:这个标签的属性指的是当我们的这个jsp页面发生变化的时候,会跳转到我们这个页面。
e、<%page isErrotpage=""%>:这个属性其实是和errorpage的属性配合使用的,如果我们把它设置成true,则该页面就可以做为错误页面。
f、<%page contentType="text/html" charset="gb123"%>:这个属性是我们最常用的,用于设置文件格式和编码格式。
g、<%page session="true"%>:指的是该页面是否可以用到Session对象,说白了就是设置该页面有没有资格参与http会话。
h、<%page import=""%>:这个属性用来引入我们需要用到的jar包。
i、 <%page buffer=""%>:指定到客户输出流的缓冲模式。如果为none,则不缓冲;如果指定数值,那么输出就用不小于这个值的缓冲区进行缓冲。与autoFlash一起使用。默认不小于8KB,根据不同的服务器可设置。例如,buffer="64kb"。
j、<%page autoFlash=""%>:如果为true缓冲区满时,到客户端输出被刷新;如果为false缓冲区满时,出现运行异常,表示缓冲区溢出。默认为true,例如autoFlash="true"。
k、<%page info=""%>:关于JSP页面的信息,定义一个字符串,可以使用servlet.getServletInfo()获得。 默认省略。例如,info="测试页面"。
l、<%page isThreadSafe=""%>:用来设置JSP文件是否能多线程使用。如果设置为true,那么一个JSP能够同时处理多个用户的请求;相反,如果设置为false,一个JSP只能一次处理一个请求。例如,isThreadSafe="true"。
m、<%page pageEncoding=""%>:JSP页面的字符编码 ,默认值为pageEncoding="iso-8859-1",例如pageEncoding="gb2312"。
2、include指令
首先,我们明确这个指令是干啥的??顾名思义,就是包含一个文件的,说白了该指令可以把外部的一个jsp页面加载到当前的jsp页面中,但有一点我们要注意,jsp页面只能解析静态的外部jsp页面。
a、语法结构:<%include file=" "%>:file中添加我们要引入文件的url。
b、一个比较好的Include指令例子就是使用多页面来包含一个通用的头模块和尾模块的内容。
就像这样:
header.jsp
<%! int pageCount = 0; void addCount() { pageCount++; } %> <% addCount(); %> <html> <head> <title>The include Directive Example</title> </head> <body> <center> <h2>The include Directive Example</h2> <p>This site has been visited <%= pageCount %> times.</p> </center> <br/><br/>
footer.jsp
<br/><br/> <center> <p>Copyright © 2010</p> </center> </body> </html>
main.jsp:
<%@ include file="header.jsp" %> <center> <p>Thanks for visiting my page.</p> </center> <%@ include file="footer.jsp" %>
3、taglib指令
a、这个指令是干什么的那???这个指令是引入标签库或者自定义标签库的一个指令。
b、语法结构:<%taglib uri="" prefix="">
c、自定义taglib标签:
原文:http://www.cnblogs.com/huiyuantang/p/5332428.html