page

include

taglib

语法:<%@ 指令名称 属性=值 属性=值 …%>

-------------------

page

1.language

默认值java

2.extends

3.session

4.import

5.buffer

6.autoFlush

7.IsELIgnored

false  不忽略

true   忽略,不解析

8.errorPage 和isErroPage控制JSP页面发生错误跳转

------------------

PageEncoding

ContentType

编辑JSP的时候,点击保存的时候,需要用到PageEncoding,保存文件到硬盘

Servlet程序返回给浏览器的时候,通过contentType属性,通知浏览器使用哪种编码去查看网页。

结论:如果pageEncoding不支持中文,JSP无法将中文信息保存到硬盘。

------------------

错误页面

一、设置erroPage

二、通过配置web.xml

<erro-page>

<erro-code>500

<location>/demo/error.jsp

-------------------

include

包含

静态include原理

index.jsp ---->index_jsp.java

当翻译到<%@ include file=”header.jsp”%>

翻译header.jsp,并且将翻译后的servlet内容引用到index对应的Servlet

静态包含:包含目标文件源代码,源代码合并到一起,一起进行执行。

--------------------

JSP九大内置对象

1.request                    HttpServletRequest

2.response                 HttpServletResponse

3.session                    HttpSession

4.application              ServletContext

5.out                          JspWriter

6.pageContext           PageContext

7.page                        this(HttpServlet)

8.config                      ServletConfig

9.exception                  Throwable

pageContext代表当前页面上下文

向page范围保存数据,必须通过它。

pageContext.setAttribute(name,value);

findAttribute 方法可以依次在page、request、session、application,四个数据范围进行数据的查找

Object value = pageContext.findAttribute(“name”);

EL中 直接写${name}  就会调用findAttribute(),在四个范围内查找数据

pageContext可以用来获得其他8个隐含对象

作用:框架的编写,得到pageContext对象,就相当于得到JSP9个内置对象

----------------------

out对象

内部使用PrintWriter实现,拥有独立缓冲区 8kb

out = pageContext.getOut();

-------------------------

out和response.getWriter()的区别

out.print(aaa);

response.getWriter().print(bbb);

out.print(ccc);

结果:

response.getWriter(),输出的内容在out之前

Out缓冲区                           response.getWriter()缓冲区

aaa                                            bbb

ccc

为何bbb先输出?

out必须通过response回写到浏览器,当out.flush,内容输出到response的缓冲区中。

所以bbb  aaa  ccc

----------------------

exception

使用前要设置isErrorPage=”true”

---------------------------------

JSP 6个动作标签

<jsp:userBean> <jsp: setProperty><jsp:getProperty> 与javaBean有关

<jsp:include> <jsp:forward> <jsp: param>

<jsp:include>等价于request.getRequestDispatcher().include

<jsp:forward>等价于request.getRequestDispatcher().forward

<jsp:include>功能等价于<%@ include%>

原理:动态包含而不是静态包含

在index servlet执行的时候,去完成包含动作。包含结果是目标jsp翻译Servelt生成的html页面结果

<jsp:forward>等价于 request.getRequestDispatcher(“/”).forward(request, response);

---------------------------------------------

JSP page include taglib的更多相关文章

  1. JSP指令(page include taglib)

    JSP指令指示JSP转换器如何翻译JSP页面到Servlet:JSP指令用来设置整个JSP页面相关的属性,如网页编码方式.脚本语言等 JSP指令的格式: <%@ directive attrib ...

  2. JSP中include动作与指令

    include指令 JSP中有三大指令:page,include,taglib,之前已经说过了page的用法.这里介绍下include. 使用语法如下: <%@ include file=&qu ...

  3. <%@page include%>、<%@include%>、<jsp:include>三者之间的本质区别

    <%@page include%>.<%@include%>.<jsp:include>三者之间的本质区别 先从它的几个内置对象说起. application和se ...

  4. 控制所生成的servlet的结构: JSP page指令

    在JSP中,主要有3种类型的指令:page, include和taglib.page指令允许我们通过类的导入.servlet超类的定制.内容类型的设置.以及诸如此类的事物来控制servlet的结构.p ...

  5. 牛客网Java刷题知识点之什么是JSP的3大常用指令、JSP的6大哪些动作、JSP中include指令和include动作有什么区别

    不多说,直接上干货! JSP的3大常用指令 包含指令(Include directive):用来包含文件和合并文件内容到当前的页面. 页面指令(Page directive):用来定义JSP页面中特定 ...

  6. jsp中自定义Taglib案例

    一.使用TagSupport类案例解析 1.自定义Tag使用jdbc连接mysql数据库 1.1定义标签处理器类 package com.able.tag; import java.sql.Conne ...

  7. 转: JSP中include指令和include动作的区别

    include指令是编译阶段的指令,即include所包含的文件的内容是编译的时候插入到JSP文件中,JSP引擎在判断JSP页面未被修改,否则视为已被修改.由于被包含的文件是在编译时才插入的,因此如果 ...

  8. Jsp的include指令静态导入和动态导入的区别

    1.什么是静态导入? 静态导入指的是,将一个外部文件嵌入到当前JSP文件中,同时解析这个页面的JSP语句,它会把目标页面的其他编译指令也包含进来. include的静态导入指令使用语法: <%@ ...

  9. 自定义JSP中的Taglib标签之四自定义标签中的Function函数

    转自http://www.cnblogs.com/edwardlauxh/archive/2010/05/19/1918589.html 之前例子已经写好了,由于时间关系一直没有发布,这次带来的是关于 ...

随机推荐

  1. table+js实现网站左侧列表下拉隐藏

    <script language="javascript">                    function showHide(obj){            ...

  2. C#中关于DBNULL的处理方法

    从数据库中获取数据有些会是空值的,这时一不注意就会被坑了…… String.Concat(db.可能为DBNULL的值) 在这种情况下,如果是DBNULL,得到的会是""

  3. 在.NET下学习Extjs(第四个案例 Extjs扩展的原理)

    1.构建如下代码 <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head& ...

  4. nutch2.3命令参数解析

    nutch中可执行的命令列表 [root@ewanalysis ~]# nutch Usage: nutch COMMAND where COMMAND is one of: inject injec ...

  5. C#根据汉字生成拼音首字母全称

    static void Main(string[] args) { string s = GetChineseSpell("周杰伦"); Console.WriteLine(s.T ...

  6. hibernate 简单查询

    1. 查询整个映射对象所有字段 //直接from查询出来的是一个映射对象,即:查询整个映射对象所有字段           String hql = "from Users";   ...

  7. JDBC连接数据库及增删改查操作

    什么是JDBC?Java语言访问数据库的一种规范,是一套APIJDBC (Java Database Connectivity) API,即Java数据库编程接口,是一组标准的Java语言中的接口和类 ...

  8. C++关键字(1)——const

    1. const修饰普通变量和指针 const修饰变量,一般有两种写法: const TYPE value; TYPE const value; 这两种写法在本质上是一样的.它的含义是:const修饰 ...

  9. statistics specify some columns count

    # -k1 follow the first column nr

  10. 常用DOM整理

    常用DOM整理   前言: html为document搭建了一棵DOM树,这棵树就是有一系列Node节点所构成的.他为我们定义了文档的结构. Node类型: Node.ELEMENT_NODE(1); ...