转 JSP的三六九四(三大指令、六大标签、九大内置对象、四大作用域)

 

 

JSP的三六九四(三大指令、六大标签、九大内置对象、四大作用域)

青柠晶晶的1024

于 2018-11-25 17:28:40 发布

4586
收藏 30
版权
JSP的基本构成:HTML文件+Java片断+JSP标签

三大指令:page指令、include指令、taglib指令。

page指令:

1.language属性:设置当前页面中编写JSP脚本使用的语言,默认值为java。

<%@page language="java"%>

2.contentType属性:设置页面响应的MIME类型,通常被设置为text/html。

<%@page contentType="text/html"%>

还可以设置JSP字符的编码:<%@page contentType="text/html;charset=gb2312"%>

3.import属性:类似于Java中的import语句,用来向JSP文件中导入需要用到的包。

在page指令中可多次使用该属性来导入多个包。例如:

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

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

或者通过逗号间隔,来导入多个包。

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

在JSP中已经默认导入了以下的包。

java.lang.*

java.servlet.*

java.servlet.jsp.*

java.servlet.http.*

4.extends属性:

5.session属性:该属性默认为ture,表示当前页面支持session。

6.buffer属性:(缓冲)

7.autoFlush属性:

8.isThreadSafe属性:

9.info属性:该属性可设置为任意字符串,如当前页面的作者或其他有关的页面信息。可通过Servlet.getServletInfo()方法来设置的字符串。例如:

<%@page info="This is index.jsp!"%>

<%=this.getServletInfo()%>

访问页面后,显示如下结果: This is index.jsp!

10.errorPage属性和isErrorPage属性:

例如:若当前应用下包含index.jsp和error.jsp文件。

在index.jsp页面中进行数据类型的转换操作,其代码如下。

<%@page contentType="text/html;charset=utf-8" errorPage="error.jsp"%>
<%
String name="YXQ";
Integer.parseInt(name); //将字符串转化为int型
%>
上述代码将一个非数字格式的字符串转化为int型,因此将发生异常,最终进入errorPage属性指定的error.jsp页面显示错误信息。

在error.jsp页面中需要将isErrorPage属性设为true,然后才能调用exception对象输出错误信息。

error.jsp页面的代码如下。

<%page contentType="text/html;charset=gb2312" isErrorPage="true"%>
出现错误!错误如下:<br>
<%=exception.getMessage()%>
include指令:

<%@include file="文件的绝对路径或相对路径"%>

使用include指令引用外部文件,可以减少代码的冗余。(如:页面公用)

<%@page contentType="text/html;charset=utf-8"%>
<table>
<tr><td colspan="2"><%include file="top.jsp"%></td></tr>
<tr>
<td><%@include file="side.jsp"%></td>
<td>内容显示</td>
</tr>
<tr><td colspan="2"><%@include file="top.jsp"%></tr>
</table>
taglib指令:

六大标签:伪指令标签:<%@ %>

注释标签:<%-- --%>

声明标签:<%! %>

动作标签:<jsp:action Name/>

脚本标签:<% %>

表达式标签:<%= %>

九大内置对象: applicatin、config 、exception、out、page、pageContext、request、response、session

四大作用域:

JSP作用域

JSP页面中的对象,包括用户创建的和JSP内置对象都有一个范围属性。

Application——具有应用程序作用域的对象,在应用程序存活期间均可用。

Session——具有会话作用域的对象,在会话的存活期间可用。

Request——具有请求作用域的对象,在所有处理同一个请求的页面内部内都可以访问。

Page——具有页面作用域的对象,在当前页内可用

方法:setAttribute(String name,Object attribute)

getAttribute(String name)

作用域范围从大到小:

Allication作用域:范围最大

可以被不同页面、不同用户共享

可以通过Allication内置对象或ServletContext

访问Allication作用域对象

Session作用域:范围仅次于Allication作用域

可以被同一客户端的请求访问

可以通过Session内置对象访问Session作用域对象

Request作用域:范围小于Session作用域

可以被forward()方法转向页面或者include()包含页面访问

可以通过request内置对象访问request作用域对象

page作用域:范围最小

只能被创建对象的页面访问

只能通过pageContext内置对象访问page作用域对象
————————————————
版权声明:本文为CSDN博主「青柠晶晶的1024」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_38835140/article/details/84396365

posted on   xiaoluoke  阅读(115)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

导航

统计

点击右上角即可分享
微信分享提示