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. Android提高第十一篇之模拟信号示波器

    上次简单地介绍了AudioRecord和AudioTrack的使用,这次就结合SurfaceView实现一个Android版的手机模拟信号示波器(PS:以前也讲过J2ME版的手机示波器).最近物联网炒 ...

  2. 20141112 WinForm子窗口标签页

    (一)标签页 先看看效果: 代码: public partial class 标签页 : Form { string s = ""; public 标签页() { Initiali ...

  3. OC语法9——Category类别

    Category(分类): 当我们在开发过程中要给类添加新的方法时,一般不要去动原类. 再不改动原类的限制下,怎么拓展类的方法?以往我们的做法是新建子类使其继承该类,然后通过子类拓展类的行为. OC提 ...

  4. [分 享] PHPCMS V9 更换域名,附件地址无法批更新(更换变便)问题>解决方法!!

    大家应该都有在域名更换(比如说,从本地上传到空间)的情况下,用内容>附件管理>附件地址替换 功能. 基本上替换不了所有表中原来域名的地址. 现PHPCMS V9最新版本的依旧存在些问题. ...

  5. 基于位运算符的IP和数值转换

    直接上代码: $str = '192.168.2.100'; echo 'IP:',$str,'<hr />'; $int = ip_long($str); echo $int,'< ...

  6. PHP程序输出日历

    以下代码只是简单实现日历的效果和逻辑思路,没有使用类封装,权当抛砖引玉,有兴趣的朋友可以封装起来,方便调用. <?php /** * PHP利用时间函数输出日历 * Rain.zen $ int ...

  7. 走进C标准库(7)——"string.h"中函数的实现memcmp,memcpy,memmove,memset

    我的memcmp: int memcmp(void *buf1, void *buf2, unsigned int count){ int reval; while(count && ...

  8. MVC入门

    MVC开始是存在于桌面程序中的,M是指业务模型,V是指用户界面,C 则是控制器,使用MVC的目的是将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式.比如一批统计数据可以分别用柱状图.饼图 ...

  9. android 添加左右滑屏手势

    今天要在自己的项目中添加左右滑动,实现日期的加减(原来已经做了加减按键).滑动在一个中间的layout中进行 思路:添加左右划屏幕判断,得到判断后模拟加减按键按下. 模拟按键按下用 mbotton.p ...

  10. 限制ITEM读取其它物料的物料描述

    应用 Oracle   Purchasing 层 Level Function 函数名 Funcgtion Name CUXPOXPOEPO 表单名 Form Name POXPOEPO 说明 Des ...