JSP+Servlet+El+JSTL+Ajax学习笔记.docx
- 文档编号:30133327
- 上传时间:2023-08-05
- 格式:DOCX
- 页数:69
- 大小:102.36KB
JSP+Servlet+El+JSTL+Ajax学习笔记.docx
《JSP+Servlet+El+JSTL+Ajax学习笔记.docx》由会员分享,可在线阅读,更多相关《JSP+Servlet+El+JSTL+Ajax学习笔记.docx(69页珍藏版)》请在冰豆网上搜索。
JSP+Servlet+El+JSTL+Ajax学习笔记
JSP基础语法
一、JSP基础语法5
1.JSP注释5
(1)
--注释-->5
(2)<%//注释%>5
(3)<%--注释--%>5
2.JSP脚本代码5
(1)定义全局变量、方法、类5
(2)定义局部变量、或编写Java语句5
(3)输出语句5
3.page指令5
(1)page指令语法5
(2)page指令例子5
●设置MIME类型(contentType属性)6
●设置编码(pageEncoding属性)6
●错误页的设置(errorPage属性)6
●导包操作(import属性)6
4.JSP动作指令6
(1)JSP的7个动作指令6
(2)跳转指令(jsp:
forward)6
●jsp:
forward语法6
●例子6
(3)参数传递指令(jsp:
param)6
●jsp:
param语法6
●jsp:
param指令的作用6
(4)包含指令(jsp:
include)6
●静态包含(include不常用)6
●jsp:
include语法6
●动态包含( include>较常用)6 (5)jsp: plugin指令(不常用)6 ●jsp: plugin语法6 ●jsp: plugin作用7 (6)jsp: useBean指令7 ●jsp: useBean语法7 ●jsp: useBean作用7 (7)jsp: setProperty指令7 ●jsp: setProperty语法7 ●jsp: setProperty作用7 (8)jsp: getProperty指令7 ●jsp: getProperty语法7 ●jsp: getProperty作用7 JSP内置对象 二、JSP内置对象7 1.JSP的9个内置对象7 2.四种属性范围8 (1)page范围8 (2)request范围8 (3)session范围8 (4)application范围8 (5)四中属性范围的内置对象共有的方法8 3.request对象8 (1)request对象的说明8 (2)request对象的主要方法8 ●与request属性相关8 ●与request参数相关8 ●与request请求头相关8 ●与request请求正文相关8 ●其它8 (3)表单提交方式8 ●post9 ●get9 4.response对象9 (1)response对象说明9 (2)response对象的主要方法9 ●request响应头相关9 ●request响应相关9 ●request响应的字符编码相关9 ●request响应缓冲区相关9 ●URL相关9 ●request响应状态相关9 ●其他9 5.session对象9 (1)session对象说明9 (2)session对象的主要方法9 ●session绑定对象(属性)相关9 ●session会话相关10 6.application对象10 (1)application对象说明10 (2)application对象主要方法10 ●application属性相关10 ●application上下文或路径相关10 ●application日志相关10 ●application版本相关10 ●其他10 7.config对象10 (1)config对象说明10 (2)config对象主要方法10 8.out对象11 (1)out对象说明11 (2)out对象主要方法11 9.pageContext对象11 (1)pageContext对象说明11 (2)pageContext对象主要方法11 ●pagContext属性相关11 ●pageContext页面对象相关11 ●其它11 JavaBean 三、JavaBean11 1.JavaBean简介11 (1)JavaBean的本质11 (2)JavaBean的约束11 (3)关于JavaBean的名词11 (4)Web开发的文件目录结构及其作用12 2.JavaBean与表单12 (1)表单的参数自动赋值给JavaBean12 (2)例子12 3.JavaBean的删除12 (1)指定JavaBean实例属性范围12 (2)删除指定范围的JavaBean实例12 四、Servlet12 1.Servlet简介12 (1)Servlet的实现过程12 (2)自定义Servlet的结构(HelloWorld)12 2.Servlet生命周期13 (1)Servlet生命周期过程13 (2)Servlet生命周期对应的方法13 3.Servlet取得初始化参数13 (1)配置Servlet的初始化参数13 (2)Servlet取得初始化参数14 4.Servlet取得内置对象14 (1)Servlet取得session对象14 (2)Servlet取得application对象14 5.Servlet跳转14 (1)服务端跳转14 (2)客户端跳转14 6.Servlet过滤器14 (1)Servlet过滤器的本质14 (2)Servlet过滤器的例子14 (3)Servlet过滤器的配置15 7.Servlet监听器15 (1)Servlet监听器的功能15 (2)监听接口15 ●监听application主要实现如下接口15 ●监听session主要实现如下接口15 ●监听request主要实现如下接口16 (3)配置Servlet监听器16 表达式语言(EL) 五、表达式语言(EL)16 1.EL简介16 (1)EL功能16 (2)EL存取变量16 (3)EL的内置对象16 (4)EL的“.”与“[]”运算符16 (5)自动转变类型17 2.EL运算符17 (1)EL的算术运算符17 (2)EL关系运算符17 (3)EL逻辑运算符17 (4)Empty运算符17 (5)条件运算符17 3.EL的取值举例17 (1)取得四种属性范围里的属性值17 (2)取得cookie值17 (3)取得头信息值(header)17 (4)取得pageContext值17 JSTL标签 六、JSTL标签18 1.JSTL标签简介18 (1)JSTL说明18 (2)JSTL标签分类18 (3)JSTL标签库的使用与配置18 2.核心标签库18 (1)核心标签库的主要标签18 (2) out>标签18 (3) set>标签18 (4) remove>标签18 (5) catch>标签18 (6) if>标签19 (7) choose>、 when>、 otherwise>标签19 (8) forEach>标签19 (9) forTokens>标签19 (10) import>标签20 (11) url>标签20 (12) redirect>标签20 3.国际化标签库20 (1)国际化标签库20 (2) setLocale>标签20 (3) requestEncoding>标签21 (4) message>标签21 (5) bundle>标签21 (6) setBundle>标签21 (7) formatNumber>标签21 (8) parseNumber>标签21 (9) formatDate>标签22 (10) parseDate>标签22 4.SQL标签库22 (1)SQL标签库的主要标签22 (2) setDataSource>标签22 (3) query>标签22 (4) update>标签23 (5) param>标签23 (6) dateParam>标签23 (7) transaction>标签23 5.XML标签库23 (1)XML标签库的主要标签23 (2)XPath说明24 (3) parse>标签24 (4) out>标签24 (5) set>标签24 (6) if>标签24 (7) choose>、 when>和 otherwise>标签25 (8) forEach>标签25 (9) transform>标签25 (10) param>标签25 6.函数标签库25 (1)函数标签库说明25 (2)函数标签库里的主要函数25 7.自定义标签(极少用)26 (1)标签支持类26 (2)标签描述文件(.tld文件)26 (3)使用自定义的标签26 Ajax 七、Ajax26 1.Ajax技术简介26 (1)Ajax核心技术26 (2)XMLHttpRequest对象属性26 (3)XMLHttpRequest对象的主要方法26 (4)XMLHttpRequest.open()26 (5)XMLHttpRequest.send()26 (6)XMLHttpRequest.setRequestHeader()26 2.XMLHttpRequest的创建与使用26 (1)根据不同的浏览器创建XMLHttpRequest对象(通用)26 (2)XMLHttpRequest对象的使用27 作者: 李志伟 编写完成时间: 2013-11-19 1、JSP基础语法 1.JSP注释 (1) --注释--> --客户端可以看见的注释-->这种注释是客户端可以看到的注释,建议不要使用 (2)<%//注释%> <%//客户端看不见的注释%>这种注释是客户端看不到的注释,属于Java语言的注释 (3)<%--注释--%> <%--客户端看不见的注释--%>这种注释是客户端看不到注释,属于JSP的注释 2.JSP脚本代码 (1)定义全局变量、方法、类 <%! //定义全局变量、方法、类%> 定义的全局变量,每次刷新页面该变量都不会重新创建。 (2)定义局部变量、或编写Java语句 <%//定义局部变量、或编写Java语句%> 定义的局部变量,每次刷新页面该变量会重新创建。 (3)输出语句 <%=//需要输出的内容%>例如: <%="全局变量: i="+i%> 3.page指令 (1)page指令语法 page指令,通常位于JSP页面的顶端,一个JSP页面可以使用多条page指令。 page指令的语法格式如下: <%@page [language="Java"] [extends="package.class"] [import="package.class│package.*,…"] [session="true│false"] [buffer="none│8kb│sizekb"] [autoFlush="true│false"] [isThreadSafe="true│false"] [info="text"] [errorPage="relativeURL"] [contentType="mimeType[;charset=characterSet]"│"text/html;charSet=ISO8859-1"] [isErrorPage="true│false"] %> 例如: <%@pagelanguage="java"contentType="text/html;charset=GBK"pageEncoding="GBK"%> 下面依次介绍page指令各属性的意义: language: 声明当前JSP页面使用的脚本语言的种类,因为页面是JSP页面,该属性的值通常都是java,该属性的默认值也是java,所以通常无须设置。 extends: 指定JSP页面编译所产生的Java类所继承的父类,或所实现的接口。 import: 用来导入包。 下面几个包是默认自动导入的,不需要显式导入。 默认导入的包有: java.lang.*、javax.servlet.*、javax.servlet.jsp.*、javax.servlet.http.*。 session: 设定这个JSP页面是否需要HTTPSession。 buffer: 指定输出缓冲区的大小。 输出缓冲区的JSP内部对象: out用于缓存JSP页面对客户浏览器的输出,默认值为8kb,可以设置为none,也可以设置为其他的值,单位为kb。 autoFlush: 当输出缓冲区即将溢出时,是否需要强制输出缓冲区的内容。 设置为true时为正常输出;如果设置为false,则会在buffer溢出时产生一个异常。 isThreadSafe: true模式表示它以多线程方式运行。 false模式表示它是以Singleton模式运行。 info: 设置该JSP程序的信息,也可以看做其说明,可以通过Servlet.getServletInfo()方法获取该值。 如果在JSP页面中,可直接调用getServletInfo()方法获取该值,因为JSP页面的实质就是Servlet。 errorPage: 指定错误处理页面。 如果本页面产生了异常或者错误,而该JSP页面没有对应的处理代码,则会自动调用该指令所指定的JSP页面。 因为JSP内建了异常机制支持,所以JSP可以不处理异常,即使是checked异常。 isErrorPage: 设置本JSP页面是否为错误处理程序。 如果该页面本身已是错误处理页面,则通常无须指定errorPage属性。 contentType: 用于设定生成网页的文件格式和编码方式,即MIME类型和页面字符集类型,默认的MIME类型是text/html;默认的字符集类型为ISO-8859-1。 (2)page指令例子 ●设置MIME类型(contentType属性) contentType属性用于设置JSP页面的显示形式,即设置MIME类型。 常用的是contentType="text/html;charset=GBK"以网页类型显示。 还可以是contentType="application/msword;charset=gbk"以word文档类型显示。 ●设置编码(pageEncoding属性) 在JSP中如果pageEncoding属性存在则JSP页面得编码由pageEncoding的值决定,否则是由contentType中的charset的值决定。 若都不存在则是ISO8859-1编码。 ●错误页的设置(errorPage属性) 设置了errorPage属性后,当页面程序出错时,服务器会自动跳转到设置的页面上。 例如: <%@pageerrorPage="error.jsp"%>。 但是该error.jsp页面也要设置成是错误处理的页面,要有如下的page设置: <%@pageisErrorPage="true"%>。 ●导包操作(import属性) <%@pageimport="java.util.*"%>,使用import属性可以导入外部的jar包。 注意: 在page的所有属性中只有import属性可以重复使用。 4.JSP动作指令 (1)JSP的7个动作指令 jsp: forward: 执行页面转向,将请求的处理转发到下一个页面。 jsp: param: 用于传递参数,必须与其他支持参数曲标签一起使用。 jsp: include: 用于动态引入一个JSP页面。 jsp: p1ugin: 用于下载JavaBean或Applet到客户端执行。 jsp: useBean: 使用JavaBean。 jsp: setProperty: 修改JavaBean实例的属性值。 jsp: getProperty: 获取JavaBean实例的属性值。 (2)跳转指令(jsp: forward) ●jsp: forward语法 forwardpage="{relativeURL|<%=expression%>}"> { param.../>} forward> ●例子 forwardpage="include2.jsp"> paramvalue="TiaoZhuanCaoZuo"name="param"/> forward> 该跳转属于服务器跳转,服务器跳转也可以传递参数。 (3)参数传递指令(jsp: param) ●jsp: param语法 param name="paramName"value="paramValue"> ●jsp: param指令的作用 param指令用于设置参数值,这个指令本身不能单独使用,单独的param没有实际意义,param指令可与一下三个指令结合使用: jsp: include、jsp: forward、jsp: plugin。 (4)包含指令(jsp: include) ●静态包含(include不常用) 静态包含只是简单的替换。 不能传递参数。 例如: <%@includefile="include1.txt"%> ●jsp: include语法 includepage="{relativeURL│<%=expression%>}"flush="true"> paramname="parameterName"value="patameterValue"/> include> flush属性用于指定输出缓存是否转移到被导入文件中。 如果指定为true,则包含在被导入文件中;如果指定为false,则包含在原文件中。 ●动态包含( include>较常用) 动态包含可以传递参数,例如: includepage="include2.jsp"flush="true"> paramvalue="<%=param%>"name="param"/> include> 注意: 动态包含可以包含一个含有与当前页面相同变量名的文件,而不出错。 但静态包含不能! (5)jsp: plugin指令(不常用) ●jsp: plugin语法 plugin type="bean|applet" code="classFileName" codebase="classFileDirectoryName" [name="instanceName"] [archive="URIToArchive,..."] [align="bottom|top|middle|left|right"] [height="displayPixels"] [width="displayPixels"] [hspace="leftRightPixels"] [vspace="topBottomPixels"] [jreversion="JREVersionNumber|1.1"] [nspluginurl="URLToPlugin"] [iepluginurl="URLToPlugin"]> [ params> [ paramname="parameterName"value="{parameterValue|<%=expression%>}"/>]+ params>] [ fallback>textmessageforuser fallback>] plugin> ●jsp: plugin作用 plugin>标签表示执行一个applet或Bean,有可能的话还要下载一个Java插件用于执行它。 plugin>元素用于在浏览器中播放或显示一个对象(典型的就是applet和Bean),而这种显示需要在浏览器的java插件。 当Jsp文件被编译,送往浏览器时, plugin>元素将会根据浏览器的版本替换成 (6)jsp: useBean指令 ●jsp: useBean语法 useBeanid="name"class="classname"scope="page│request│session│application"/> id: JavaBean实例化的对象名。 class: JavaBean的包点类名称。 scope: 实例化对象的属性范围。 ●jsp: useBean作用 实例化一个JavaBean。 (7)jsp: setProperty指令 ●jsp: setProperty语法 setPropertyname="BeanName"proterty="propertyName"value="value"param="param"/> name: JavaBean的实例名。 proterty: JavaBean的属性名。 value: JavaBean需要设置的属性值。 param: request对象中的参数名。 ●jsp: setProperty作用 setProperty>标签表示用来设置JavaBean中的属性值。 (8)jsp: getProperty指令 ●jsp: getProperty语法 getPropertyname="name"property="propertyName"/> name: JavaBean的对象名,用于指定从哪个JavaBean中获取属性值 property: JavaBean中的属性名,用于指定获取JavaBean中的哪个属性值 ●jsp: getProperty作用 getProperty>标签表示获取JavaBean的属性的值并将之转化为一个字符串,然后将其插入到输出的页面中。 注意: 在使用 getProperty>之前,必须用 useBean>来创建它。 不能使用 getProperty>来检索一个已经被索引了的属性
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- JSP Servlet El JSTL Ajax 学习 笔记