javaWeb--JSP三大指令和九大内置对象
来源:互联网 发布:建筑ar软件下载 编辑:程序博客网 时间:2024/05/16 19:54
一、JSP三大指令
1,page
(1)pageEncoding:指定当前jsp页面的编码,只要跟设置的编码方式是一致的,就不会有乱码。在服务器要把jsp编译成.java时,需要使用pageEncoding.
Content-Type:表示一个响应头,等同于response.setContentType("text/html;charset=UTF-8");
以上两个属性只设置其中一个,那么另一个与之设置的值一样。
(2)import导入包。可以多次出现。<@ page import="java.util.*;">
(3)errorPage和isErrorPage
--》errorPage:当前页面如果抛出异常,会转发到哪一个页面。
--》isErrorPage:指定当前页面是否为处理错误的页面,这个页面会设置状态码为500,而且这个页面可以使用9大内置对象的exception。只有声明了isErrorPage="true"的页面才能使用exception
还可以通过在web.xml设置出错显示页面的信息,这时候就不用在页面中设置“errorPage="errorPage.jsp"”的属性了。代码如下:
<error-page> <error-code>404</error-code> <location>/errorpage/errorPage.jsp</location> </error-page> <error-page> <error-code>500</error-code> <location>/errorpage/errorPage.jsp</location> </error-page> <error-page> <exception-type>java.lang.RuntimeException</exception-type> <location>/index.jsp</location> </error-page>
--》autoFlush和buffer
autoFlush:指定jsp的输出流缓冲区满时,是否自动刷新,默认为true,如果为false,那么缓冲区在满时会抛出异常;
buffer:指定缓冲区的大小,默认为8kb,通常不需要修改。
--》isELIgnored:是否忽略EL表达式,默认值为false。即不忽略EL表达式。
--》基本上不用的属性:
language:指定当前jsp编译后的语言类型,默认值为java。目前为止只能编译成java
info:信息
isThreadSafe:当前jsp是否支持并发访问,默认为false。允许并发。
session:当前页面是否支持session。如果为false,那么当前页面就没有session这个内置对象。
entends:让jsp生成的servlet去继承该属性指定的类。
2,include:静态包含
与RequestDispatcher的include()方法的功能相似。
两者的区别:
<%@include%>它是在编译成java文件时完成的共同生成一个java(就是一个servlet)文件,最后生成一个class。直接把被包含文件的代码包含进来,注意被包含页面不能在设置html的各种头信息了,直接写body内的内容即可。
RequestDispatcher的include()方法,包含和被包含的是两个servlet,即两个.class。他们只是把响应的内容在运行时合并了。
作用:把页面分解了,使用包含的方式组合在一起,这样页面中不变的部分,就是一个独立的jsp.
3,taglib:导入标签库
两个属性:
(1)prefix:指定标签库在本页面的前缀,有我们自己来起名称;
(2)url:指定标签库的位置
<%@taglib prefix="pre" url="/struts-tags"%>
<pre:text></pre:text>处多个理标签库中的名称冲突。例如a标签库有text标签,b标签库中也有text标签。那么为了区分这两个标签,会使用前缀。
二、九大内置对象:
记法:ORRCS APPE
out:等同于request.getWriter();输出数据
request:请求对象
response:响应对象
config:即对应被编译后的jsp文件中的ServletConfig
session:HttpSession类的对象
application:即ServletContext类的对象
page:当前JSP的真身类型,当前JSP页面的this,即当前对象
pageContext:页面上下文对象,它是一个域对象。
exception:只有在错误页面中使用这个对象
1.pageContext:一个顶九个
Servlet中有三个域。而JSP中有四个域。它就是JSP中最后一个域对象。setAttribute()、getAttribute()、removeAttribute()
--》ServletContext(application):整个应用程序
--》session:一次会话
--》request:一次请求
--》pageContext:当前JSP页面,这个域是在当前JSP页面和当前JSP页面中使用的标签之间共享数据。理解:在当前页面有两个空间,本页面和在本页面中使用的标签。
(1)可以代理其他域:pageContext.setAttribute("xxx","XXX",PageContext.SESSION_SCOPE);将xxx参数存到了session域中。
(2)全域查找:pageContext.findAttribute("xxx");从小域到大域,依次查找。大小域中存在同名的参数,那么小域优先级大于大域。非常重要
(3)可以获取其他8个内置对象:getPage(),getResponse().......
- javaWeb--JSP三大指令和九大内置对象
- JSP三大指令 九大内置对象
- JSP三大指令 九大内置对象 动作标签
- JSP三大指令、九大内置对象、动作标签
- jsp的三大指令、动作标签和九大内置对象
- JSP三大指令,九大内置对象,JSP动作标签,EL表达式与函数库
- jsp九大内置对象_七个动作_三大指令
- JSP 之 三大指令、四大基本语法、七大动作、九大内置对象
- JSP的三大指令 七大动作 九大对象
- Jsp的九大对象,七大动作,三大指令
- Jsp的九大对象,七大动作,三大指令
- jsp 九大对象 七大动作 三大指令
- Jsp的九大对象,七大动作,三大指令
- JSP的三大指令 七大动作 九大对象
- JSP的三大指令、七大动作、九大对象
- Jsp的九大对象,七大动作,三大指令
- Jsp的九大对象,七大动作,三大指令
- Jsp的九大对象,七大动作,三大指令
- 根据银行卡账号获取所属银行php代码
- 计算机学生的未来
- 2016 zjnu summer traning 5 题解
- 八连块
- Spring笔记
- javaWeb--JSP三大指令和九大内置对象
- 对jeesite初识
- Nginx安装
- PyCharm2016激活码
- 在一个客户端设置多个git账号
- GCC编程过程:预处理-编译-汇编-链接
- hibernate删除,和更新不存在的数据,返回0,不会报错
- 在 Sublime Text 中使用 SFTP 插件快速编辑远程服务器文件
- ubuntu安装eclipse for c++