JSP和Servlet笔记
一、JSP的3个编译指令
作用:page指令用于设置整个jsp页面相关的属性,比如页面的编码格式、所包含的文件等等,它们包含在<%@ page %>标记中。
1)page 指令
以下为page指令各属性的描述:
. language ——指定jsp脚本所采用的语言种类,默认为Java
. extends ——定义当前jsp页面产生的Servlet继承哪个分类
. import ——定义当前jsp页面所使用的JavaAPI,多个API用逗号分开
. session ——指定当前jsp页面是否使用Session,默认为true
. buffer ——指定输出流缓存的大小,默认值为8KB
. autoFlush ——指定输出流缓冲区是否需要自动清除,默认值为true
. isThreadSafe ——指定当前jsp页面是否能处理多个线程的同步请求
. info ——指定当前jsp页面的相关信息
. errorPage ——指定当前jsp页面发生错误时转向的错误页面
. contentType ——指定当前jsp页面mime类型的编码格式
. isErrorPage ——指定当前jsp页面是否为处理错误的页面
. pageEncoding ——指定当前jsp页面编码的字符集,默认值为ISO--
page指令对整个页面都有效,包含静态的包含文件,但不能用于被动态包含的文件,例如:<jsp:include>包含的文件。
2) include 指令
作用:include指令用于在JSP页面中包含其他文件。
语法:<%@ include file="路径名"%>
include指令只有一个属性file,其值为文件的相对路径。
3)taglib 指令
taglib 指令允许用法使用标签库自定义新的标签,语法如下:
<%@ taglib uri="taglibURI" prefix="tabPrefix"%>
uri:用于根据标签库的前缀对自定义的标签进行唯一的命名,其值可以是相对路径、局对路径或标签库描述文件。
prefix:指定了标签的前缀。
二、JSP的7个动作指令
JSP的动作指令和编译指令不同,编译指令用于设置整个JSP页面相关属性,而动作指令则是用于脚本动作。
1)jsp:include指令
作用:用于在请求处理阶段包含来自一个Servlet或JSP页面的响应。编译指令中的include只能包含静态页面,而jsp:include指令则同时包含静态页面和动态页面。
语法格式:
. <jsp:include page="文件路径"/>
或者:
. <jsp:include page="文件路径">
. <jsp:param name="参数1" value="参数值"/>
. 。。。。。。
. <jsp:param name="参数n" value="参数值"/>
. </jsp:include>
2)jsp:forward指令
作用:用于执行页面转向,将请求处理转发到下一页面。
语法格式:
. <jsp:forward page="文件路径"/>
或者:
. <jsp:forward page="文件路径">
. <jsp:param name="参数名1" value="参数值"/>
. ......
. <jsp:param name="参数名n" value="参数值"/>
. </jsp:forward>
3) jsp:useBean指令
作用:用来在JSP页面创建一个JavaBean实例。
语法格式:
<jsp:userBean id="JavaBean的名称" scope="有效范围" class="包名.类名"></jsp:usebean>
1. id:指定JavaBean 的名称,只要在它的有效范围内,均可使用这个名称来调用它。
2. scope:JavaBean的有效范围,它有4个值:request、session、page、application。
3. class:指定所归属的类。
4)jsp:setProperty指令
作用:用来设置Bean属性值。
语法格式:
<jsp:setProperty name="JavaBean 的名称" property="*"/>
或者
<jsp:setProperty name="JavaBean 的名称" property="属性名称"/>
或者
<jsp:setProperty name="JavaBean 的名称" property="属性名称" param="参数名称"/>
或者
<jsp:setProperty name="JavaBean 的名称" property="属性名称" value="属性值"/>
1. property值为*表示保存用户在JSP输入的所有值,用于匹配Bean中的属性。
2. property值为其它值时表示匹配的一个Bean的属性。
3. param属性表示根据指定的request对象中的参数与属性匹配。
4. value属性表示使用指定的值来设置属性。
5)jsp:getProperty指令
作用:用来读取Bean中的属性值,并将其转换为一个字符串在页面上输出。
语法格式:
<jsp:getProperty name="bean的名称" property="属性名称"/>
1. name的值对应着jsp:userBean的id值。
2. property的值对应着userBean中的属性名。
6)jsp:plugin指令
jsp:plugin指令用于下载服务器端的 JavaBean 或 Applet 到客户端执行。
7)jsp:param指令
jsp:param 指令用于设置参数值,它不能单独使用,主要用在jsp:include 指令、jsp:forward 指令和jsp:plugin指令中。
三、JSP的9个内置对象
内置对象是指不需要预先定义就可以在JSP页面中直接使用的对象。
1)request 对象
request对象用于获取客户端提交的数据,这些数据包括头信息、客户端地址、请求方式等。
. getParameter(String name) ——获取表单提交的数据
. getParameterNames() ——获取客户端提交的所有参数名
. getAttribute(String name) ——获取 name 指定的属性值
. getAttributeNames() ——获取 request 对象所有属性的名称集合
. getSession(Boolean create) ——获取HttpSession对象
. getCookies() ——获取Cookie对象
. getProtocol() ——获取客户使用的协议名称
. getServletPath() ——获取客户端请求的脚本的相对路径
. getMethod() ——获取客户端提交数据的方式,如GET、POST等
. getHeader() ——获取文件头信息
. getRermoteAddr() ——获取客户端的IP地址
. getServerName() ——获取服务器名称
. getRemoteHost() ——获取客户端主机的名称
. getServerPort() ——获取服务器的端口号
2)response对象
response 对象用于对客户端的请求作出动态的响应,向客服端发送数据。
1. getCharacterEncoding() ——返回响应用的字符编码格式
2. getOutputStream() ——返回响应的输出流
3. getWrite() ——返回可以向客户端输出字符的一个对象
4. getContentLength(int leng) ——设置响应头的长度
5. getContentType(String type) ——设置响应的 mime 类型
6. getRedirect(String location) ——重新定向客服端的请求
7. flushBuffer() ——强制把当前缓冲区的数据发送到客户端
8. addCookie(Cookie cookie) ——在客户端添加一个Cookie
3)session 对象
session对象可用来保护用户的会话信息和会话状态。
. getId() ——获取 session 的标识符
. getAttribute(String key,Object obj) ——将参数Object指定的对象obj添加到session对象中,并为添加的对象指定一个索引值
. getAttribute(String key) ——获取session对象中含有关键字的对象
. isNew() ——判断用户是否参与了会话
. inValidate() ——使当前会话失效
. removeAttribute(String name) ——删除一个指定session的值
. getCreationTime() ——获取 session 对象创建的时间
4)out对象
out对象用来向客户端输出各种数据。
. print()/println() ——输出各种类型的数据
. clearBuffer() ——清除缓冲区的数据,并将数据写入客户端
. clear() ——清除缓冲区当前内容,但不将数据写入客户端
. flush() ——输出缓冲区中的数据
. newLine() ——输出一个换行符号
. close() ——关闭输出流
5)page对象
page对象就是当前JSP页面本身,类似于Java中的this。
. getClass() ——获取page对象的类
. hashCode() ——获取page对象的hash码
. equals(Object obj) ——判断page对象是否与参数中的obj相等
. copy(Object obj) ——把此page对象复制到指定的Object对象中
. clone() ——克隆当前的page对象
. toString() ——把page对象转换成String类型的对象
6)application对象
application对象实现了用户间数据的共享,可存放全局变量。
. setAttribute(String key,Object obj) ——将参数Object指定的对象obj添加到application对象中,并为添加的对象指定一个索引值
. setAttribute(String name) ——获取指定的属性值
. setAttributeNames() ——获取一个包含所有可用属性名的枚举
. removeAttribute(String name) ——删除一个指定的 application 的值
. getContext(String uripath) ——获取指定WebApplication 的application对象
. getResource(String path) ——获取指定资源(文件及目录)的URL路径
. getResourceAsStream(String path) ——获取指定资源的输入流
. getServlet(String name) ——返回指定的Servlet
. log(String msg) ——把指定消息写入Servlet的日志文件
7)pageContext对象
pageContext对象用于管理对属性JSP中特殊可见部分中已经命名对象的访问。
. setAttribute(String name,Object obj) ——设置默认页面范围或特殊对象范围之中的已命名对象
. setAttribute(String name,[int scope]) ——获取一个已命名为name的对象的属性,可选参数scope表示在特定范围内
. removeAttribute(String name,[int scope]) ——删除指定范围内的某个属性
. forward(String relativeUrlPath) ——将当前页面重定向到其他页面
. include(String relativeUrlPath) ——在当前位置包含另一个文件
. release() ——释放 pageContext 对象所占用的资源
. getServletContext() ——获取当前页面的ServletContext对象
. getException() —— 获取当前页面的Exception对象
8)config对象
config对象用来获取服务器初始化配置参数。
. getServletContext() ——获取当前的Servlet上下文
. getInitParameter() ——获取指定的初始参数的值
. getInitParameterNames() ——获取所有初始参数的值
. getServletName() ——获取当前的Servlet名称
9)exception对象
exception对象用于处理JSP页面中发生的错误和异常
. getMessage() ——获取当前的错误信息
. getLocalizedMessage() ——获取本地化语言的异常错误
. printStackTrace() ——输出一个错误和错误的堆载跟踪
. fillStackTrace() ——重写异常的执行栈轨迹
. toString() ——关于异常错误的简单信息描述
JSP和Servlet笔记的更多相关文章
- jsp、servlet笔记
1.init 初始化Jsp&Servlet方法 destroy 销毁Jsp&Servlet之前的方法 service 对用户请求生成响应的方法2.Jsp文件必须在jsp服 ...
- # jsp及servlet学习笔记
目录 jsp及servlet学习笔记 JSP(Java Server Page Java服务端网页) 指令和动作: servlet(小服务程序) jsp及servlet学习笔记 JSP(Java Se ...
- 新手学习JSP+Servlet笔记一
作为一个新手,初次接触jsp,servlet,习惯了后台的开发,前台的知识一窍不通,利用闲暇时间,给自己补补,从MyEclipse开始. 安装好MyEclipse之后,没有安装程序的可以下载 http ...
- JSP和Servlet学习笔记1 - 访问配置
1. 访问 WebContent 目录下的 JSP 文件 在 WebContent 目录下的文件可以直接在浏览器中访问.新建一个 test.jsp 文件 <%@ page language=&q ...
- JSP的Servlet监听器
JSP的Servlet监听器 来源: http://blog.csdn.net/phoenix_17th/article/details/3868670 Servlet 监听器用于监听一些重要事件的发 ...
- Jsp之神笔记
JSP笔记 Tomcatserver port: port就是指的某一个程序网络入口,Tomcat的初始化port为:8080: port的个数:256*256=65536个: 一般常见协议的缺省po ...
- jsp与servlet(转)
一.基本概念 1.1 Servlet Servlet是一种服务器端的Java应用程序,具有独立于平台和协议的特性,可以生成动态的Web页面.它担当客户请求(Web浏览器或其他HTTP客户程序)与服务器 ...
- 一、jsp和Servlet基础理论及jstl和EL表达式用法
1.题外话:使用JSP有近一年半的时间了,但是开发量不大.昨天部门突然让做个读取EXCLE文件,然后在前台页面进行展示.并通过点击查看按钮可以对每条明细记录进行跳转后进行详情查看,并按照页面原型进行页 ...
- 【转】(超详细)jsp与servlet之间页面跳转及参数传递实例
初步学习JavaEE,对其中jsp与Servlet之间的传值没弄清楚,查看网上资料,发现一篇超详细的文章,收获大大,特此记录下来.具体链接:http://blog.csdn.net/ssy_shand ...
随机推荐
- MPSOC之7——开发流程uramdisk
用petalinux的预编译目录里有rootfs文件,选择rootfs.tar.gz作为初始输入. 1.原始文件-->uramdisk 1.1 解压原始rootfs.tar.gz,得到若干文件 ...
- Netty学习笔记(一):接收nodejs模拟表单上传的文件
好久不写博客了,也好久不写代码了,这两天临时遇上一个事情,觉得不难,加上觉得手有些生,就动手做了一下,结果遇上了不少坑,有新坑,有老坑,痛苦无比,现在总算差不多了,赶紧记录下来,希望以后不再重复这种痛 ...
- ATL环境:设置父窗口激活属性
设置窗口激活属性:窗口A->B->C,这里设置在C对话框显示时A和B都不能操作 LRESULT sindykTools::AttrPOIDlg::OnBatchCreateSubPoint ...
- java表单重复提交常用解决办法
最近在看些基础的东西,顺便做下笔记.相信大家在平时网页使用中,经常会有按钮重复点击,然后点不动刷新,还有当网络延时比较厉害点了没反应在点击的重复提交.为了避免这种情况,总结了一下4点处理方案 表单重复 ...
- 《大型网站系统与JAVA中间件实践》【PDF】下载
<大型网站系统与JAVA中间件实践>[PDF]下载链接: https://u253469.pipipan.com/fs/253469-230062557 内容简介 到底是本什么书,拥有这样 ...
- DotNetCasClient 如何获取Cas服务器返回的attributes中的数据
最近开始接触做与其它认证系统的集成,其中有个是与某学校的CAS服务器集成.cas服务器认证成功后返回的数据格式如下: 其中红色部分是我需要取出来用于识别用户身份的数据. 一开始,我根据网上的教程,引用 ...
- iOS UICollectionView(转二)
UICollectionView的布局是可以自己定义的,在这篇博客中先在上篇博客的基础上进行扩充,我们先使用UICollectionViewFlowLayout,然后好好的介绍一下UICollecti ...
- Effective Java 第三版——10. 重写equals方法时遵守通用约定
Tips <Effective Java, Third Edition>一书英文版已经出版,这本书的第二版想必很多人都读过,号称Java四大名著之一,不过第二版2009年出版,到现在已经将 ...
- 如何写一个SSH项目(三)如何进行交互的
下面以登录为例子,展示从前台到后端的一整套流程并进行分析. 首先介绍一下我的SSH的分层结构 action和service一起是业务逻辑层 action层调用service层 dao ...
- tar: This does not look like a tar archive tar: Skipping to next header tar: Exiting with failure status due to previous errors
解压一个.tar.zip文件时报错 tar -zxvf bcl2fastq2-v2---linux-x86-.zip tar: This does not look like a tar archiv ...