ImageVerifierCode 换一换
格式:DOCX , 页数:36 ,大小:48.30KB ,
资源ID:9245426      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-9245426.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(电子商务网站设计原理.docx)为本站会员(b****0)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

电子商务网站设计原理.docx

1、电子商务网站设计原理电子商务网站设计原理补充材料电子商务系课程小组武汉理工大学武汉 WUHAN前 言为了配合电子商务网站设计原理课程的教学,体现教材的编写特色,更好地为读者服务,编写了此教学资料。教学资料内容有三个部分:限于编著者水平,教学资料中有错误或不妥之处,请读者给予批评指正。编 者2008年8月1 JSP概述1.1 JSP概述JSP又称JavaServer Pages,是java平台下用于构建包含动态网内容(比如HTML、DHTML、XHTML和XML)的技术。一个JSP页面是一个基于文本的文档,它可以用来描述如何处理客户端的请求,如何为客户端创建一个响应。在JSP页面中除了可以包含文

2、本、HTML标记等外,还可以包含JSP的自身的几种元素:指令、脚本元素和动作。1.2 访问机理静态页面文件的访问机理图:21动态页面文件的访问机理图:4 将接收到的结果返回给客户端3 执行结果返回给Web服务器2 转发给JSP容器1 请求的是*.jsp文件2 JSP的指令JSP有三类指令:page指令、include指令和taglib指令,它们的常用形式如下:JSP脚本中引号是在半角状态下输入。2.1 page指令page指令定义了一系列页面依赖属性,并能将这些属性传递给JSP容器。page指令的形式为:page指令的属性解释如下:(1)language定义了在jsp使用的脚本语言,目前jav

3、a是缺省又是唯一合法的选择。language=”java”(2)extendsextends=”package.class”。这将为servlet产生一个超类。请特别谨慎的使用这一功能,因为,服务器也许已经定义了一个。(3)importimport=”package.class”或import=”package.class1,.,package.classN”。通过该属性你可以导出在jsp文件中要使用到的类(在java中完成某种功能的类文件)。举例:import属性是这几个属性中唯一一个可以在一个JSP中出现多次的。(4)sessionsession=”true | false”。 如果值为“

4、true”(缺省)表示:预定义变量session(继承HttpSession)应该绑定到一个已存在的session,否则就应该创建一个并将之绑定。值为“false”时表示:将不使用session变量,如果试图使用,将在JSP向servlet转化时出现错误。(5)bufferbuffer=”sizekb | none”。为JspWriter输出确定缓冲的大小。缺省由服务器而定,但至少要有8kb。(6)autoflushautoflush=”true | false”。 如果值为”true”(缺省)表示:当缓冲满时将自动清空,值为”false“时表示:当缓冲满时递出一个异常,这很少使用。当buff

5、er=”none”是若”false”值是不合法的。(7)isThreadSafeisThreadSafe=”true | false”.如果值为“true”(缺省)表示:将进行普通的servlet处理,多个请求将被一个servlet实例并行处理,在这种情况下,编程人员同步访问多个实例变量。值为“false”时表示:servlet将实现单线程模式(SingleThreadModel),不管请求是顺序提交还是并发出现,都将提供不同的分离的servlet实例。(8)infoinfo =”message”。定义一个可以通过调用getServletInfo方法得到的串。(9)isErrorPageisE

6、rrorPage =”true | false”。指定当前页面是否可以处理来自另一个页面的错误,缺省为“false”。(10)errorPageerrorPage =”URL”。指定一个JSP页面来处理任何一个可抛出的但当前页面并未处理的意外错误。(11)contentTypecontenType =”MIME-Type”或contentType=”MIME-Type;charset=Character-Set”.它指定输出的MIME类型。缺省为“text/html”。举例:2.2 include指令include指令可以在jsp文件编译为servlet类文件时,将一个文件包含进来。inclu

7、de指令的形式如下:URL通常相对于指向它的JSP页面。但是,普遍使用相对“URL”,可以使用一个斜杠“/”作为URL的开始来告知系统URL相对的Web server的主路径。被包含的文件将以规则的JSP形式来解析,因此,您可以在其中使用静态HTML,scripting elements,directives,和 actions。让我们来看一个例子,许多站点在每一个页面上包含一个小型的导航条。它通常出现在页面的顶部或左右侧,并包含在每一个页面里。这用include directive 来实现是很自然的,若用规则的HTML来把这些语句拷到每一个页面无疑是个梦魇。请看下列代码: JSP教程因为文件

8、是在页面被转换时插入的,因此,如果导航条改变了,您需要将所有指向它的JSP页面全部重新编译一次。如果您的导航条并不常改变这样做无疑是高效的,但是,如果您的被包含文件更改频繁,则建议您使用动作(后面将谈到)来替代,它在页面被请求时才包含文件。2.3 taglib指令有待进一步扩充。3 JSP的脚本元素3.1 JSP的声明JSP声明用来定义JSP页面的脚本命令使用到的变量和方法,其语法如下: 由于声明不会有任何输出,因此它们往往和JSP表达式或脚本命令结合在一起使用。例如,下面的JSP代码片断输出自从服务器启动(或Servlet类被改动并重新装载以来)当前页面被请求的次数: 自从服务器启动以来页面

9、访问次数为:3.2 JSP的表达式JSP表达式用来把Java数据直接输出页面。其语法如下: 计算Java表达式得到的结果,并将其转换成字符串,然后输出到页面。计算在运行时进行(页面被请求时),因此可以访问和请求有关的全部信息。例如,下面的代码显示页面被请求的日期/时间: 当前时间: 或 输出远程主机例子: Your hostname: 3.3 JSP的脚本如果你要完成的任务比插入简单的表达式更加复杂,可以使用JSP脚本。JSP脚本允许你把任意的Java代码插入JSP页面中。JSP脚本语法如下:和JSP表达式一样,脚本也可以访问所有预定义的变量。例如,如果你要向结果页面输出内容,可以使用out变

10、量: JSP脚本和HTML标记混合使用的例子: % if (Math.random() Have a nice day!Have a lousy day!3.4 JSP的注释JSP注释的形式为:或JSP注释和字符引用约定 下面是一些特殊的标记或字符,你可以利用它们插入注释或可能被视为具有特殊含义的字符。 语法 用途 JSP注释,也称为“隐藏注释”。JSP引擎将忽略它。标记内的所有JSP脚本元素、指令和动作都将不起作用。 HTML注释,也称为“输出的注释”,直接出现在结果HTML文档中。标记内的所有JSP脚本元素、指令和动作正常执行。 % 在模板文本(静态HTML)中实际上希望出现“ 在脚本元素

11、内实际上希望出现“%”的地方使用。 使用单引号的属性内的单引号。不过,你既可以使用单引号也可以使用双引号,而另外一种引号将具有普通含义。 使用双引号的属性内的双引号。参见“”的说明。3.5 脚本和指令应用 下面是一个使用JSP表达式、Scriptlet、声明、指令的简单例子。 JavaServer Pages JSP应用实例下面是一些利用各种JSP功能生成的动态内容: 表达式. 你的主机名: . JSP Scriptlet. 声明(和表达式). 服务器启动以来访问次数: 指令(和表达式). 当前日期: 4 JSP的预定义对象为了简化JSP表达式和脚本的代码编写,JSP提供了一些预先定义对象,使

12、用这些对象时可以不事先定义它们。JSP页面中可以使用的预定义对象如下表所示:预定义对象类型描述存活范围requestjavax.servlet.ServletRequestjavax.servlet.HttpServletRequest触发服务的请求requestresponsejavax.servlet.ServletResponsejavax.servlet.HttpServletResponse对请求的响应pagepageContextjavax.servlet.jsp.PageContextJSP页面的页面上下文pagesessionjavax.servlet.http.HttpSes

13、sion为发出请求的客户端创建的会话对象,该对象仅对HTTP协议有效。sessionapplicationjavax.servlet.ServletContext从servlet配置对象中获取的servlet上下文,也可通过getServletConfig().getContext()获得。applicationoutjavax.servlet.jsp.JspWriter写入输出流的对象pageconfigjavax.servlet.ServletConfig当前页面的ServletConfigpagepagejava.lang.Object执行当前请求的页面实现类的实例。page另外,在出错

14、处理页面中,你还可以访问预定义对象exception:预定义对象类型描述存活范围exceptionjava.lang.Throwable导致出错处理页面被唤醒的未捕获的Throwable。page下面逐一对上述预定义对象进行详细描述。4.1 request对象通过request对象可以获得客户请求的参数、方法类型、HTTP头、客户端主机信息等。下表列出request对象的部分方法。返回值方法StringgetParameter(String name)以字符串类型返回请求参数的值;如果参数不存在返回null。参数类java.util.EnumerationgetParameterNames()

15、返回包含在请求中的所有参数名称的枚举型。ObjectgetAttribute(String name)以对象类型返回命名属性的值;如果命名属性不存在返回null。属性类voidsetAttribute(String name,Object object)在request对象中保存一个命名属性。 java.util.EnumerationgetAttributeNames()返回包含在请求中的所有命名属性的名称的枚举型。voidremoveAttribute(String name)删除request对象中的命名属性。StringgetCharacterEncoding()获得request对象

16、中字符编码的名称。字符集类voidsetCharacterEncoding(String charSet)设置request对象中字符编码的名称。StringgetRemoteAddr()获得发送请求客户端主机的IP地址。客户主机StringgetRemoteHost()获得发送请求客户端主机的名称。CookiegetCookies() 以数组形式返回包含在客户机请求中的所有Cookie对象。StringgetHeader(String name)略。Http头java.util.EnumerationgetHeaderNames()略。HttpSessiongetSession()返回与本请

17、求相关联的当前会话;如果不存在,则创建一个新的会话。会话类举例:4.2 response对象response对象是对客户请求的响应,一般由继承HttpServletResponse而来。可以用来添加Cookie、设置HTTP状态码和response头等。下表列出request对象的部分方法。返回值方法voidaddCookie(Cookie cookie) 向响应添加特定的Cookie。voidaddHeader(String name,String value) 添加一个含有名称和值的响应头部。vodisendError(int sc) 使用特定的状态码向客户端发送一个错误响应,并清空缓冲。

18、voidsendError(int sc, java.lang.String msg) 使用特定的状态码向客户端发送一个错误响应,并清空缓冲。voidsetStatus(int sc) 设置相应的状态码。4.3 pageContext对象pageContext对象主要用来管理页面的属性。4.4 session对象session对象是和请求关联的HttpSession对象。前面我们已经介绍过会话的自动创建,我们知道,即使不存在session引用,这个对象也是自动绑定的。但有一个例外,这就是如果你用page指令的session属性关闭了会话,此时对session变量的引用将导致JSP页面转换成Se

19、rvlet时出错。下表列出session对象的部分方法。返回值方法ObjectgetAttribute(String name)Returns the object bound with the specified name in this session, or null if no object is bound under the name.java.util.EnumerationgetAttributeNames()Returns an Enumeration of String objects containing the names of all the objects boun

20、d to this session.voidremoveAttribute(String name) 从会话中删除绑定到指定名称的对象。voidsetAttribute(java.lang.String name, java.lang.Object value) 根据制定的名称将对象绑定到会话中。StringgetId()返回分配给会话的唯一标示符。voidinvalidate()取消会话,并解除绑定到它上面的所有对象。intgetMaxInactiveInterval() Returns the maximum time interval, in seconds, that the serv

21、let container will keep this session open between client accesses.voidsetMaxInactiveInterval(int interval) 以秒为单位设置两个客户请求之间的最大时间间隔,超过该间隔将取消会话。举例:4.5 application对象application对象是一个ServletContext,也可以通过getServletConfig().getContext()获得。可以在其中存放应用程序的初始化参数、全局性对象等。下表列出application对象的部分方法。返回值方法ObjectgetAttribu

22、te(String name)Returns the servlet container attribute with the given name, or null if there is no attribute by that name.java.util.EnumerationgetAttributeNames()Returns an Enumeration containing the attribute names available within this servlet context.voidremoveAttribute(String name) 从servlet上下文(此

23、处即application对象)中删除绑定到指定名称的对象。voidsetAttribute(java.lang.String name, java.lang.Object value) 根据制定的名称将对象绑定到servlet上下文中。ObjectgetInitParameter(java.lang.String name) Returns a String containing the value of the named context-wide initialization parameter, or null if the parameter does not exist.java.

24、util.EnumerationgetInitParameterNames() Returns the names of the contexts initialization parameters as an Enumeration of String objects, or an empty Enumeration if the context has no initialization parameters.RequestDispatchergetRequestDispatcher(java.lang.String path)Returns a RequestDispatcher obj

25、ect that acts as a wrapper for the resource located at the given path.举例:4.6 out对象out对象是用来向客户端发送内容的PrintWriter。然而,为了让response对象更为实用,out是带缓存功能的PrintWriter,即JspWriter。JSP允许通过page指令的buffer属性调整缓存的大小,甚至允许关闭缓存。 out一般只在Scriptlet内使用,这是因为JSP表达式是自动发送到输出流的,很少需要显式地引用out。out对象的方法有out.pringln(Object object)、out.fluse()、out.clear()、out.clearBuffer()、out.close()等方法。4.7

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2