指令标识

 指令标识

          jsp是被服务器解释并执行的,不会产生任何内容输出到网页中。

           也就是说指令标识对于客户端浏览器是不可见的。

   语法格式入如下:

     <%@ 指令名 属性1="属性值1" 属性2="属性值2".... %>

       指令名:用于指定指令名称,在jsp中包含page,include和taglib 3条指令。

          注意:<%@ 和%>是完整的标记,不能添加空格,但是标签中定义的属性与指令名之间是有空格的。

 

     page指令:

                jsp页面最常用的指令,用于定义整个jsp页面的相关属性,这些属性在jsp被服务器解析成Servlet时会转换为相应的Java程序代码。

        语法格式如下:

            <%@ 指令名 属性1="属性值1" 属性2="属性值2".... %>

               page指令提供了language,contentType,pageEncourage,import,autoFlush,buffer,

                  errorPage,extends,info,isErrorPage,isThreadSafe和session共13个属性。很多属性可以省略,

              这时,page指令会使用默认值来设置jsp页面。

                1. language属性:用于设置jsp页面使用的语言,目前只支持java语言。默认值是java。

                2. extends属性:设置jsp页面继承的java类所有jsp页面在执行之前都会被服务器解析成Servlet,

                                             而Servlet是由java定义的,所以jsp和Servlet都可以继承指定的父类。该属性不经常用。

               3. import属性:该属性用于jsp导入的类包。java代码在调用API时需要导入相应的类包。

                     <%@ page import="java.util.*"%>

               4. pageEncoding属性:用于定义jsp页面的编码格式,也就是指定文件编码。

               5. contentType属性:用于设置jsp页面的MIME类型和字符编码,浏览器会据此显示网页内容。

               6. session属性:指定jsp页面是否使用HTTP的session会话对象。其属性值是Boolean类型。true和false。

                                             默认值为true。如果设置为false,则当前jsp页面将无法使用session会话对象,

                                        任何对session对象的引用都会发生错误。

              7. buffer属性:用于设置jsp的out输出对象使用的缓冲区大小。默认大小是8KB。只能用kb。

              8. autoFlush属性:指定缓冲区已满时,自动将缓冲区中的内容输出到客户端。当缓冲区已满时,将抛出“jsp Buffer overflow”异常。

              9. isErrorPage属性:可以将当前jsp页面设置成错误处理页面来处理另一个jsp页面的错误,

                                                  也就是异常处理。这意味着当前jsp页面业务的改变。

             10. isErrorPage属性:用于指定当前jsp页面异常错误的另一个jsp页面,指定的jsp错误处理页面必须设置isErrorPage属性为true。

                                                    errorPage属性的值是一个url字符串。

 

       include指令:

                    通过该指令可以在一个jsp页面中包含另一个jsp页面。不过该指令是静态包含,

                       也就是说被包含文件中的所有内容会被原样包含到该jsp页面中,即使被包含文件中有jsp代码,

                        在包含时也不会被编译执行。使用include指令,被包含的和包含的文件最终将生成一个文件,

                   所以在被包含和包含的文件中不能有相同名称和变量。

            include指令的语法格式如下:

                  <%@ include file="path"%>

                    该指令只有一个file属性,用于指定要包含文件的路径。相对路径和绝对路径都可以。

                      但是不可以是通过<%=%>表达式所代表的文件。

             说明:使用include指令包含文件可以大大提高代码的重用性。便于以后的维护和升级。

//top.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
   pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
   <img src="images/banner.JPG">
</body>
</html>
//copyright.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
   pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
 String copyright="&nbsp;All Copyright &copy; 2012 吉林省明日科技有限公司";
%>
<footer>
<%=copyright %>
</footer>
</body>
</html>
//index.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
   pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
section{
  background-image:url(images/center.JPG);
  height:279px;
  width:781px;
  }
  footer{
   background-image:url(images/center.JPG);
   height:41px;
   width:761px;
   padding:20px 0px 0px 20px;
  }
  </style>
<title>Insert title here</title>
</head>
<body style="margin:0px;">
<%@ include file="top.jsp" %>
<section></section>
<%@ include file="copyright.jsp" %>
</body>
</html>

 

          taglib指令:

                  在jsp文件中,可以通过taglib指令标识声明页面中所使用的标签库,同时引用标签库,并指定标签的前缀。

                     在页面中,引用标签库后,就可以通过前缀来引用标签库中的标签。taglib指令的格式如下:

               <%@ taglib prefix="tagPrefix" uri="tagURI"%>

                  prefix属性:用于指定标签的前缀。该前缀不能命名为jsp,jspx,java,javax,sun,servlet和sunw。

                       uri属性:用于指定标签库文件的存放位置。

 

posted @ 2022-09-18 11:15  zjw_rp  阅读(167)  评论(0)    收藏  举报