我是靠谱客的博主 烂漫外套,最近开发中收集的这篇文章主要介绍05_JSP指令和动作,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

5.1 指令

5.1.1 指令基本概述

指令有三个page,include,taglib,而且始终被包含在<%@ %>中。

5.1.2 page指令

page指令用于导入需要的类,指明jsp输出内容类型,控制session等。

1.import属性

多个包的引入可以使用:

<%@ page import="package1.Class"%>
<%@ page import="package2.Class"%>

<%@ page import="package1.Class,package2.Class"%>

示例5-1:使用import指令

源文件:ImportDate.jsp

<%@ page contentType="text/html; charset=GBK" %>
<%@ page language="java" import="java.util.Date" %>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>Import Time</title>
  </head>
  
  <body>
  	现在时间是:<%= new Date() %>
  </body>
</html>

2.contentType和pageEncoding属性

contentType是用于指明JSP输出的内容的MIME类型,pageEncoding是用来改变文件的编码

示例5-2:通过contentType来在JSP中产生excel文件

源文件:Excel.jsp

<%@ page contentType="application/vnd.ms-excel; charset=GBK" %>
姓名		性别		年龄
张三		男		14
李四		男		35
王五		女		33

3.session属性

<%@ page session="false" %>

4.errorPage和isErrorPage属性

errorPage用来指明处理错误的页面:

<%@ page errorPage="errorHandle.jsp" %>

isErrorPage是处理错误的页面中的,这个页面中可以使用内置对象exception

<%@ page isErrorPage="true" %>

示例5-3:JSP错误处理

源文件:cal.jsp

<%@ page contentType="text/html; charset=GBK" %>
<%@ page errorPage="handleError.jsp" %>

<%
int a,b;
a = 5;
b = 0;

int c = a/b;
%>

示例5-4:处理错误的JSP程序

源文件:handleError.jsp

<%@ page contentType="text/html; charset=GBK" %>
<%@ page isErrorPage="true" %>

<html>
<head><title>错误处理</title></head>
	
<body>
出错啦!<br />
<% 
exception.printStackTrace(new java.io.PrintWriter(out));
%>
</body>	
</html>

5.buffer和autoFlush属性

buffer属性用来改变缓冲区的大小,autoFlush用来设置自动刷新缓存区

<%@ page buffer="64kb" %>
或
<%@ page buffer="none" %>

示例5-5:JSP中操作缓冲区

源文件:Buffer.jsp

<%@ page contentType="text/html; charset=GBK" %>
<%@ page buffer="1kb" autoFlush="false" %>

<html>
<head><title>buffer和autoFlush</title></head>
	
<body>
<%
for(int i=0; i<1000; i++){
	out.println("This is Line " + i);
}
%>
</body>	
</html>

6.info属性

info属性可以指定这个JSP的一些说明信息,在Servlet中通过Servlet的getServletInfo()方法取得

<%@ page info="Jsp Message" %>

7.isThreadSafe属性

设置这个JSP页面是否可以并发访问,不推荐使用

8.isELIgnored属性

设置是否忽略EL表达式

9.language属性

目前只有一种选择:

<%@ page language="java"%>

10.extends属性

指定JSP所转换成的Servlet的父类,很少使用

<%@ page extends="package.class"%>

5.1.3 include指令

示例5-6:使用include指令:包含的页面

源文件:header.jsp

<%@ page contentType="text/html; charset=GBK" %>

<center>
<img src="guru.gif"/><br />
AlexSoft,真诚奉献
</center>

示例5-7:使用include指令:包含的页面2

源文件:foot.jsp

<%@ page contentType="text/html; charset=GBK" %>

<center>
<%
int thisYear,lastYear;
java.util.Calendar date = java.util.Calendar.getInstance();
thisYear = date.get(java.util.Calendar.YEAR);
lastYear = thisYear - 1;
%>

Copyright(C) <%= lastYear %> - <%=thisYear %> AlexSoft, All Rights Reserved.
</center>

示例5-8:使用include指令包含其他文件

源文件:first.jsp

<%@ page contentType="text/html; charset=GBK" %>

<html>
<head><title>first</title></head>

<body>
<%@ include file="D06_header.jsp" %>
<br />
<br />
其他的页面输出
<br />
<br />
<%@ include file="D07_foot.jsp" %>
</body>
</html>

include缺点:当被包含的文件修改时无法及时更新。

5.2 JSP动作

5.2.1 JSP动作概述

JSP动作包括:

jsp:include,jsp:useBean,jsp:setProperty,jsp:getProperty,jsp:forward,jsp:plugin

5.2.2 include动作

include动作可以避免include指令不能及时刷新的缺点:

<jsp:include page="includeFile" />

示例5-9:用include动作包含文件

源文件:seconde.jsp

<%@ page contentType="text/html; charset=GBK" %>

<html>
<head><title>second</title></head>

<body>
<jsp:include page="D06_header.jsp"></jsp:include>
<br />
<br />
其他的页面输出
<br />
<br />
<jsp:include page="D07_foot.jsp"></jsp:include>
</body>
</html>

5.2.3 forward动作

forward动作不但可以跳转到页面,还可以跳转到WEB-INF下的资源:

<jsp:forward page="forward1.jsp" />


最后

以上就是烂漫外套为你收集整理的05_JSP指令和动作的全部内容,希望文章能够帮你解决05_JSP指令和动作所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(34)

评论列表共有 0 条评论

立即
投稿
返回
顶部