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. Java面试题之谈谈你对Struts的理解

    1. struts是一个按MVC模式设计的Web层框架,其实它就是一个大大的servlet,这个Servlet名为ActionServlet,或是ActionServlet的子类.我们可以在web.x ...

  2. Winform mschart 动态绑定X时间表

    效果图: 代码: using System; using System.Collections.Generic; using System.ComponentModel; using System.D ...

  3. PLSQL笔记

    /*procedurallanguage/sql*/--1.过程.函数.触发器是pl/sql编写的--2.过程.函数.触发器是在oracle中的--3.pl/sql是非常强大的数据库过程语言--4.过 ...

  4. Oracle EBS DBA常用SQL - 安装/补丁【Z】

    Oracle EBS DBA常用SQL - 安装/补丁 检查应用补丁有没有安装:select bug_number,last_update_date from ad_bugs where bug_nu ...

  5. iOS 网络请求——get请求

    -(void)getRequest{ NSString *urlString = [NSString stringWithFormat:@"http://f1.netgears.cn:808 ...

  6. 《转载》详解 CSS 属性 - 伪类和伪元素的区别

    首先,阅读 w3c 对两者的定义: CSS 伪类用于向某些选择器添加特殊的效果. CSS 伪元素用于将特殊的效果添加到某些选择器. 可以明确两点,第一两者都与选择器相关,第二就是添加一些“特殊”的效果 ...

  7. org.jawin.COMException: 8000ffff: Invalid ptr null flag(原址:http://osdir.com/ml/windows.devel.jawin/2006-01/msg00013.html)

    I now realise my arguments to invoke should be more along the lines of byte[] result = tApp.invoke(& ...

  8. Sublime Text3 插件安装教程

    链接地址:http://jingyan.baidu.com/article/4d58d541caeeaa9dd4e9c093.html

  9. JVM学习之GC常用算法

    出处:博客园左潇龙的技术博客--http://www.cnblogs.com/zuoxiaolong,多谢分享 GC策略解决了哪些问题? 既然是要进行自动GC,那必然会有相应的策略,而这些策略解决了哪 ...

  10. SQLSERVER 使用WITH函数查找时间点最大数据行

      --表结构及数据: DTIME TYPE MONEY 2015-10-14 13:50:35.000 shopping 20 2015-10-21 13:51:24.000 shopping 40 ...