




已阅读5页,还剩129页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第七章动态网站开发技术 本章要点 ASP PHP JSP程序的运行模式及编程思想ASP常用的内置对象和组件PHP和JSP的常用语法 7 1ASP技术简介 7 1 1ASP的特点7 1 2ASP的工作原理7 1 3搭建ASP的工作平台7 1 4创建ASP页面 7 2 7 3 7 4 7 5 7 6 7 7 7 8 7 9 7 1 1ASP的特点 1 使用简单易懂的脚本语言 JavaScript或VBScript等 结合HTML就可以快速开发出各种Web应用程序 2 无须编译 使用普通的文本编辑器即可编写 代码在服务器端直接执行 3 ASP源程序在服务器端执行 执行结果返回给客户端 保证了ASP源程序的安全性 4 ASP源程序在服务器端执行 客户端只需有执行HTML的浏览器即可 保证了ASP程序的通用性 5 可以使用VB Java等多种编程语言来开发ActiveX服务器组件 从而扩充服务器端程序的功能 6 可使用服务器端脚本来产生客户端脚本 7 ASP提供的内置对象使得脚本的功能更强 7 1 2ASP的工作原理 当用户在浏览器的地址栏中输入ASP文件的路径 并按回车键触发这个ASP的申请后 浏览器将该请求发送给Web服务器 Web服务器接收这些请求并根据文件的后缀名为 asp判断这是ASP请求 然后从硬盘或内存中读取正确的ASP文件 将这个文件发送到ASP DLL的特定文件中 ASP文件将会从头至尾执行并根据命令要求生成相应的HTML文件 最后HTML文件被返回到浏览器 用户的浏览器解释这些HTML文件并将结果显示出来 7 1 3搭建ASP的工作平台 ASP程序是在服务器端执行的 因此要在本地计算机上运行ASP程序就必须先安装相应的Web服务器软件 IIS是由微软公司发布 用于Windows系列操作系统的Web服务器软件 7 1 4搭建ASP的工作平台 ASP文件是以 asp为扩展名的文本文件 这个文本文件可以包含文本 HTML标记和ASP脚本的任意组合 创建一个ASP文件非常容易 只需在HTML文件中添加脚本 保存文件时后缀名改为 asp即可 编辑文件时可以选择任何一个文本编辑器 当然选择带有支持ASP增强功能的编辑器更能提高效率 7 2ASP编程基础 7 2 1服务器端脚本和客户端脚本7 2 2使用脚本语言7 2 3ASP内置对象 7 1 7 3 7 4 7 5 7 6 7 7 7 8 7 9 7 2 1服务器端脚本和客户端脚本 使用VBScript和JavaScript 既可编写服务器端脚本 也可编写客户端脚本 服务器端脚本在Web服务器上执行 生成HTML页面然后返回给客户端浏览器 它的语法格式是用分隔符括起服务器端脚本 或者放在标记之间表示脚本在服务器端执行 服务器端脚本一般用于开发能够连接数据库的动态网页 ASP网页中的客户端脚本在客户机上被IE浏览器中的脚本解释器执行 客户端脚本代码需要用标记嵌入到HTML页面中 客户端脚本目前广泛用于一些客户机数据的录入或者作为网页的特殊效果等 7 2 2使用脚本语言 脚本语言是介于HTML和Java VisualBasic之类的编程语言之间的语言 脚本语言的语法规则没有上述编程语言那么严格和复杂 它主要用来格式化文本和使用已编译好的组件 在ASP中 由于脚本是在服务器端读取和执行的 所以客户端的浏览器软件并不需要支持脚本 这保证了ASP脚本的通用性 ASP带有两个脚本引擎 VBScript和JavaScript脚本引擎 编写脚本时可以选择其中的一种或者把它们结合起来编写 7 2 3ASP内置对象 对象是由数据和程序代码封装而成的单元 ASP提供了一些内置对象 在脚本中不必创建这些对象便可以直接访问它们的属性或方法 从而扩展了脚本的功能 ASP内置对象简介绍 Request对象 包含客户端在请求一个页面或传送一个表单时提供的所有信息 Response对象 用于向客户端浏览器输出文本或数据 Server对象 创建对象以及提供服务器属性信息 Session对象 存储单个用户的信息 以便重复使用 Application对象 存储共享数据以供不同客户端共享信息 Request对象Request对象可以访问客户端页面上用户输入的内容以及存放在客户端的Cookie信息 Request对象的语法格式为 Request 属性 方法 集合 variable 其中 variable参数是一些字符串 这些字符串指定要从集合中检索的项目或作为方法或属性的输入 1 Request对象的属性Request对象只提供了一个TotalBytes属性 是只读属性 表示从客户端所接收数据的字节的长度 2 Request对象的方法Request对象只有一个方法 即BinaryRead BinaryRead方法以二进制数的方式来读取客户端使用POST传送方法所传递的数据 并将其存放到SafeArray数组中 3 Request对象数据集合 QueryString集合有时用户在浏览网页的时候 需要在页面跳转时传递一些查询信息 这可以通过获取查询字符串中的信息来达到目的 QueryString集合用于检索HTTP查询字符串中变量的值 其语法格式为 Request QueryString variable index count 其中 参数variable是在HTTP查询字符串中指定的要检索的变量名 参数index用来检索variable的多个值中的某一个值 为可选参数 参数count给出QueryString集合中变量的个数 Form集合使用Form集合可以检索在HTTP请求中通过post方法发送的表单控件的值 如单行文本框 多行文本框 复选框 单选按钮 下拉列表框 按钮 密码字段 隐藏字段等内容值 Cookies集合Cookies其实是一个标签 当访问一个需要惟一标识站址的Web站点时 它会在本地计算机磁盘上留下一个标记 下一次访问同一个站点时 站点的页面会查找这个标记 Cookies集合负责取得记录在客户端的Cookies数据 允许用户检索在HTTP请求中发送的Cookies的值 其语法格式为 CookieValue Request Cookies CookieName key Attribute Response对象Request对象用来获取客户端HTTP信息 Response对象正好相反 它用来控制发送给用户的信息 包括直接发送信息给浏览器 重定向浏览器到另一个URL或设置Cookies的值 其语法格式为 Response 属性 方法 集合 1 Response对象的属性 Buffer属性Buffer属性可以设置是否缓冲页面输出 其语法格式为 Response Buffer True False Expires属性当一个页面被传送到客户端浏览器后 它通常会被保存在客户端的计算机上 Expires属性指定了在浏览器上缓冲存储的页距离过期还有多长时间 如果用户在页面过期之前回到此页 就会使用保存的页面 否则要从服务器上重新下载 Expires属性语法格式为 Response Expires number 注意 该属性的代码必须放在标签之前 否则会出错 Charset属性Charset属性将字符集名称 如GB 附加到Response对象中content type标题的后面 用来设置Web服务器响应给客户端的文件字符编码 其语法格式为 Response Charset 字符集名称 ContentType属性ContentType属性指定服务器响应的HTTP内容类型 ExpiresAbsolute属性ExpiresAbsolute属性指定缓存于浏览器中的页面的确切到期日期和时间 在未到期之前用户返回该页 则显示缓存的页面 如果未指定时间 则该页面在当天午夜到期 如果未指定日期 则该页面在脚本运行当天的指定时间到期 其语法格式如下 Response ExpiresAbsolute date time 2 Response对象的方法 Write方法Response对象的Write方法可以向浏览器输出动态信息 其语法格式为 Response Write内容Response Write可以显示ASP中所有合法的数据类型 Redirect方法使用Response对象的Redirect方法可以使浏览器重定向到程序指定的URL 当有页面转换时常用到这个方法 语法格式为 Response RedirectURL Flush方法当已经将Response Buffer设置为True时 调用Response Flush方法可以立即发送缓冲区中的数据 如果Response Buffer没有设置为True 则调用以上方法将导致错误 语法格式为 Response Flush End方法使Web服务器停止处理脚本并返回当前结果 语法格式为 Response End Clear方法当已经将Response Buffer设置为True时 调用Response Clear方法将删除缓冲区中的所有HTML输出 但如果Response Buffer没有设置为True 则调用以上方法将导致错误 语法格式为 Response Clear 3 Response对象的集合Response对象只有一个集合 即Cookies集合 Cookies 有的中文翻译为 小甜饼 其实是用户访问某些网站时 由Web服务器在客户端磁盘上写入的一个标签 用于记录浏览者的个人信息 浏览器类型 访问时间以及执行的操作等信息 注意 Response对象只能向客户机上写Cookies而不能读 Request对象可以读取客户机的Cookies而不能写 Response对象的Cookies集合使用语法格式如下 Response Cookies CookiesName key Attribute Cookiesvalue Server对象Server对象可以用来创建各种服务器组件实例 1 Server对象的属性Server对象仅支持ScriptTimeout属性 该属性用于设置超时值 在脚本运行超时后作超时处理 其语法格式为 Server ScriptTimeout 秒数 2 Server对象的方法 CreateObject方法CreateObject方法用于在客户端建立一个ActiveXServer组件实例 在当前页面处理完成后由服务器自动破坏这些实例对象 其语法格式为 Set对象实例名称 Server CreateObject ActiveX控件 Execute方法Server对象的Execute方法调用一个 asp文件执行 执行Execute方法会停止当前页面的执行 转到新的网页执行 执行后返回当前页面继续执行Execute后面的代码 它类似于编程语言的函数调用 其语法格式为 Server Execute pFile 其中 pFile指定要执行的 asp文件 要指明相对路径或绝对路径 Transfer方法Transfer方法与Execute方法非常类似 两者的区别在于Transfer方法执行完新的网页后并不回到原网页继续执行 而是停止执行过程 其语法格式为 Server Transfer pFile 其中 pFile指定要执行的 asp文件 要指明相对路径或绝对路径 MapPath方法MapPath方法将指定的相对或虚拟路径映射为服务器上相应的物理目录 其语法格式为 Server MapPath 相对或虚拟路径 HTMLEncode方法HTMLEncode方法是对指定的字符串应用HTML编码 语法格式为 Server HTMLEncode string 其中 string指定要编码的字符串 URLEncode方法URLEncode方法用于将一个指定的字符串按URL编码输出 语法格式为 Server URLEncode string 其中 string指定要编码的字符串 Application对象一般来说 网页中的变量的生命周期会随着网页的生命周期的结束而结束 如果希望变量的生命周期可以跨越网页的生命周期 在网页之间共享某些变量的信息 需要使用Application对象 Application对象存储的内容是在一定的生命周期内 所有网站的ASP网页和客户机可以共享的内容 Application对象在网站开发中的实际用途就是记录整个网站的信息 例如在线名单 上线人数 意见调查等 1 Application对象的属性Application对象没有内置属性 可以用下列语法设置用户自定义的属性 Application Application名称 值 2 Application对象的方法为了避免同一时间出现多个客户同时更改Application对象的情况 Application对象提供了两个方法 Lock和Unlock方法 其中 Lock方法用于锁定Application对象 Unlock方法用于解除锁定 3 Application对象的事件 OnStart事件当ASP启动时触发 在用户请求的网页执行之前和任何用户创建Session对象之前 用于初始化变量 创建对象或运行其他代码 OnEnd事件当ASP应用程序结束时触发 在最后一个用户会话已经结束 并且该会话的OnEnd事件中的所有的代码已经执行结束之后发生 其结束时 应用程序中存在的所有变量被取消 Session对象网站的访问者同服务器的交互形象地称为 会话 Session Session对象可以存储用户会话的信息 Application对象记录的是所有用户共享的变量 而Session对象记录的是个别用户专用的变量 1 Session对象的属性 SessionID属性在创建会话时 服务器会为每一个会话生成一个惟一的标识 即SessionID SessionID以长整型数据类型返回 它用于跟踪访问者的活动情况 其语法格式为 Session SessionID Timeout属性默认情况下 用户在20分钟内没有请求或刷新页面 服务器就会结束会话 使用Timeout属性可以为Session对象指定超时时限 单位为 分钟 其语法格式为 Session Timeout 分钟 2 Session对象的方法Session对象到了超时时限后会自动清除 有时候需要在到期前人为地提前清除 需要使用Abandon方法 其语法格式为 Session Abandon 3 Session对象的事件 Session OnStart事件用户访问一次Web服务器 Session OnStart事件就会被触发一次 因此那些在创建会话时就执行的脚本可以放在Session OnStart事件过程中 其语法格式为 Session OnEnd事件当调用Session Abandon方法或在超时时限内没有请求或刷新页面 便会触发Session OnEnd事件并执行Session OnEnd事件过程 相应的会话随之结束 其语法格式为 7 3在ASP中使用组件 7 3 1AdRotator组件7 3 2BrowserCapabilities组件7 3 3PageCounter组件 7 2 7 1 7 4 7 5 7 6 7 7 7 8 7 9 7 3 1AdRotator组件 使用AdRotator组件 广告轮显组件 可以很容易实现在Web页面上插入一个循环播放广告横幅的播放器 通过定义一个决定播放顺序的文本文件 使播放器根据文件中定义的播放顺序轮流播放一系列广告图片 若要改变播放顺序 只需修改该文本文件 而不用修改与广告相关的每个页面 AdRotator组件的属性 1 Border属性该属性用于确定广告图片的边框宽度 其语法格式为 AdRotator组件对象 Border size其中 size为整数值 表示边框的宽度 2 Clickable属性该属性用于确定广告图片是否具有超链接功能 其语法格式为 AdRotator组件对象 Clickable Boolean其中 Boolean为逻辑值 取值为True表示提供超链接功能 取值为False表示不提供超链接功能 3 TargerFrame属性该属性用于确定超链接指向的Web页面 其语法格式为 AdRotator组件对象 TargerFrame Target targetname 其中 targetname表示超链接的窗口或框架名称 AdRotator组件的方法使用AdRotator组件的方法的语法格式为 AdRotator组件对象 GetAdvertisement 广告信息文本文件路径 其中 GetAdvertisement表示取得广告信息文件 7 3 2BrowserCapabilities组件通过BrowserCapabilities组件可以得到浏览器的一些属性信息 如浏览器的名称 版本信息 以及是否支持框架 ActiveX控件 Cookie和脚本程序等 这样可以根据收集的浏览器信息送出适合浏览器的页面内容 BrowserCapabilities组件的一些常用的属性 使用BrowserCapabilities组件 需要先用Server对象的CreateObject方法建立一个对象的实例 再用这个对象实例调用浏览器属性 其语法格式为 Set对象实例 Server CreateObject MSWC BrowserType 7 3 3PageCounter组件 PageCounter组件 页面计数器组件 可以记录和显示Web页打开的次数 为了在服务器关机时数据不会丢失 该组件每隔一定时间将访问次数写入点击次数数据文件里 点击次数数据文件是文本文件 位于服务器里 用于保存当前访问次数 创建页面计数器组件对象实例创建页面计数器组件对象的实例语法格式如下 页面计数器组件对象的方法 1 Hits方法Hits方法用于返回指定URL的Web页被打开的次数 其语法格式如下 PageCounter对象 Hits pathInfo 其中 参数pathInfo以 虚拟目录 asp文件名 的格式指定Web页的路径值 此参数可选 若不指定 则默认显示当前页的访问次数 2 PageHit方法PageHit方法将对当前Web页的访问次数加1 语法格式为 PageCounter对象 PageHit 3 Reset方法Reset方法将指定的Web页的访问次数置为0 语法格式如下 Reset pathInfo 其中 参数pathInfo可参照Hits方法的说明 若未指定参数值 则重置当前页的访问次数 7 4PHP技术简介 PHP是一种运行于服务器端的HTML内嵌式的网络程序设计语言 类似于IIS上的ASP PHP是HypertextPreprocessor 超文本预处理器 的缩写 作为服务器端内嵌式的脚本语言 它是在服务器端执行的 从浏览器端看不到PHP的源代码 只能看到执行结果 7 2 7 1 7 3 7 5 7 6 7 7 7 8 7 9 PHP以其代码全部公开 开发容易 跨平台 功能强大以及支持的数据库类型繁多等特点赢得了众多Web开发人员的青睐 现在已经成为国内外流行的Web开发工具之一 PHP的优势 1 PHP的简单易用PHP的语法来源主要是C和C 这样就延续了编写程序简单自由的特点 并且PHP也加入了自己的新特点 如变量不用定义 变量类型可以改变等 使编写程序更加简便 2 PHP的强大功能PHP功能的强大体现在对数据库提供了广泛的支持 这使得创建基于数据库的网站变得极为方便 PHP支持很多协议 如HTTP FTP IMAP SNMP NNTP POP3等 3 PHP的跨平台性PHP在UNIX和Windows平台下都可以工作 4 PHP的开放性选择PHP作为开发工具的一个很好的理由是PHP的开放性 PHP不仅是免费的 而且开放源代码 任何人都可以无偿使用甚至修改 复制和分发该软件 7 5PHP语法基础 7 5 1基本语法7 5 2数据类型7 5 3变量7 5 4常量7 5 5表达式7 5 6控制语句7 5 7函数 7 2 7 1 7 3 7 4 7 6 7 7 7 8 7 9 7 5 1基本语法 PHP的脚本由文件中一对特殊的标记符号标记 当解释器分析一个PHP文件时 所有特殊标记外的普通文件 解释器不对其做任何处理 而特殊标记内的文件将作为PHP代码被解释器解析执行 标记PHP代码块最常用的方法 从HTML中分隔 指令分隔符同C或Perl一样 PHP需要在每个语句后用分号结束指令 一段PHP代码中的结束标记隐含表示了一个分号 而在一个PHP代码段中的最后一行可以不用分号结束 如果后面还有新行 则代码段的结束标记包含了行结束 注释PHP程序在加注释的时候 方法很灵活 有多种加入注释的方法 PHP支持C C 和UNIXShell风格的注释或者是它们的复合注释 注意 在使用C语言风格的注释时 不能让注释陷入嵌套的分支结构当中 否则会引起错误 7 5 2数据类型 PHP支持8种原始数据类型 4种标量类型 boolean 布尔型 integer 整型 float 浮点型 也作double string 字符串型 2种复合类型 array 数组 object 对象 2种特殊类型 resource 资源 NULL 布尔型一个布尔型数据表达了一个真值 可以取True或者False 用True或者False指定一个布尔值时 不区分大小写 整型整型值可以用十进制 十六进制或八进制符号指定 前面可以加上可选的符号 或者 如果用八进制符号 数字前必须加上0 零 如果用十六进制符号 数字前必须加上0 x 浮点型浮点型 双精度 可以用下面的方式来定义 字符串型字符串型数据代表了一系列字符 在PHP中 不管单一字符还是多个字符构成的字串都指定为字符串型数据 字符串型可以用三种方式定义 1 单引号 2 双引号 3 定界符 数组可以用array 语言结构来新建一个array 它接受一定数量用逗号分隔的key value参数对 Key可以是整型或字符串型变量 对象类是一个有很多变量和操作这些变量的函数 这里要称为方法 的集合 多个类描述了一个对象 关于对象的概念和初始化 可参考PHP类和对象的相关概念 资源一个资源是一个特殊变量 保存了到外部资源的一个引用 资源是通过专门的函数来建立和使用的 NULLNULL类型值表示一个变量没有值 NULL类型只能取值为NULL 注意 NULL类型和资源类型是PHP4 0中新引进的 7 5 3变量 PHP中变量由一个美元符号后面跟上一个变量名称组成 变量名区分大小写 变量名遵循PHP标识符拼写规则 一个有效的变量名由字母或者下划线开头 后面跟上字母 数字或下划线来构成 7 5 4常量 常量是某个固定值的标识符 常量在默认情况下区分大小写 常量名遵循PHP标识符拼写规则 一个有效的常量名由字母或者下划线开头 后面跟上任意数量的字母 数字或下划线 可以用define 函数来定义常量 一个常量一旦被定义 就不能再改变或者取消定义 常量只能指定标量类型数据 boolean integer float和string 7 5 5表达式 PHP提供了一套完整强大的表达式 表达式是PHP最重要的组成元素 表达式可以认为是由运算符和数据经适当连接而成的式子 也可以通俗地认为是 任何有值的东西 7 5 6控制语句 PHP在程序段分隔符上 用 作为程序段的开头 用 作为结尾 PHP的每条指令结束时都要加上 但在程序段结尾符号 后面不需要加分号结束 if else语句 1 单纯的If条件转移语句if expr statement 2 if else结构If expr statement1 else statement2 3 if else嵌套结构If expr1 statement1 Elseif expr2 statement2 其中 expr为判断条件 statement为符合条件的执行语句 do while结构do while是一种循环结构 有两种模式 1 while expr statement 2 do statement while expr for语句for语句是一种循环语句 语法格式为 for expr1 expr2 expr3 statement 其中 expr1为条件的初始值 expr2为判断的条件 expr3为执行statement后要执行的指令 用来改变循环条件 statement为循环体语句 foreach语句PHP4 0支持foreach语句 该语句能很方便地遍历数组 foreach语句有以下两种用法 Foreach array expressionas value statementForeach array expressionas key value statement第一个语句在遍历array expression数组时 数组当前的数组值将赋给 value 并将指针指向下一个数组元素 第二个语句和第一个语句相似 不过每次循环都将当前元素的索引值赋给 key switch语句switch语句通常用来处理开关式的条件判断 switch expr caseexpr1 statement1 break caseexpr2 statement2 break default statementN break 7 5 7函数 一个用户自定义函数可以由以下语法来定义 其中 foo为函数名 arg n为函数参数 retval为返回值 7 6PHP的安装与配置 7 6 1PHP的安装7 6 2PHP的配置7 6 3PHP的测试 7 2 7 1 7 3 7 5 7 4 7 7 7 8 7 9 7 6 1PHP的安装 Apache可以从地址下载 PHP可以从地址下载 Apache的安装程序下载完成之后 可以直接双击运行 按照提示进行安装 需要注意的是 在下载PHP安装程序时要选择下载ZIP包 而不要下载Installer 另外 将下载的PHP安装包解压到C盘根目录下 并将解压出来的文件夹改名为PHP 7 6 2PHP的配置 有两种方法可以使PHP工作在Windows Apache平台中 一种是使用CGI二进制文件 另一种是使用Apache模块DLL 1 如果要使用CGI二进制文件 那么要将如下指令插入到Apache的httpd conf配置文件中 以设置CGI二进制文件 ScriptAlias php c php AddTypeapplication x httpd php phpActionapplication x httpd php php php exe 2 如果要把PHP作为Apache2 0的模块 则要移动php5ts dll到winnt system32 WindowsNT 2000 或windows system32 WindowsXP 目录中 覆盖原有文件 如果有的话 然后插入如下语句到httpd conf中 以使PHP作为Apache的PHP Module安装 7 6 3PHP的测试 打开浏览器 在地址栏中输入localhost后按回车键 如果可以出现Apache测试页面 则说明Apache可以正常工作了 测试Apache 测试PHP设置可以简单编写一个PHP页面 html head title Hello title head body phpecho hello php body html 将这个文件保存并命名为hello php 将其放在Apache的htdocs目录中 然后在浏览器中输入http localhost hello php后按回车键 如果能够正确显示 hello php 则说明PHP配置正常 7 7JSP技术简介 7 7 1JSP介绍7 7 2JSP的运行原理7 7 3JSP开发运行环境搭建 7 2 7 3 7 4 7 5 7 1 7 6 7 8 7 9 7 7 1JSP介绍 JSP JavaServerPages 即Java应用页面程序 它是由SunMicrosystems公司倡导且由许多公司共同参与制定的一种动态网页技术标准 使用JSP可以将网页中的动态部分和静态HTML相分离 以便更好地设计动态网页 这种Web开发技术的设计目的在于使构造基于Web的应用程序更加容易和快捷 7 7 2JSP的运行原理 JSP的工作方式是请求 应答模式 JSP所有的程序都是在服务器端运行的 当用户在客户端通过浏览器向服务器提交请求之后 服务器上的JSP程序负责处理客户端的请求 并把处理结果以HTML的形式返回给客户端 其中客户端和JSP的交互是通过HTTP协议来实现的 整个过程中JSP程序对客户端来说是不可见的 在具体的交互过程中 客户端首先和服务器建立连接 然后用户通过浏览器发出的请求信息被储存在Request对象中并发送给Web服务器 JSP引擎根据JSP文件的指示处理Request对象 或者根据实际需要将Request对象转发给由JSP文件所指定的其他的服务器端组件 如Servlet组件 JavaBean组件或EJB组件等 进行处理 处理结果以Response对象的方式返回给JSP引擎 JSP引擎和Web服务器根据Response对象最终生成JSP页面并返回给客户端浏览器 7 7 3JSP开发运行环境搭建 1 下载JDKJDK是Sun公司Java应用程序和组件的开发环境 是调试和运行JSP所不可缺少的工具 用户可以从Sun公司的官方网站下载 JDK的安装 2 安装JDK安装过程比较简单 运行安装程序j2sdk 1 4 0 win exe 选择安装路径后将会自动完成安装 3 设置JDK环境变量在不同的操作系统中配置环境变量的方法有所不同 但本质是一样的 它的作用是让应用程序可以方便快捷地找到所需路径 配置Java运行环境主要用到的环境变量有三个 JAVA HOME设定Java的安装路径 PATH它是Windows所固有的 追加JAVA HOME bin目录后 在执行JAVA HOME bin文件夹下的命令时就不用输入长长的路径了 如javac java等命令 CLASSPATHCLASSPATH是运行Java非常重要的环境变量 Java在编译和运行应用程序时都要通过它去找到需要的类文件 Tomcat的安装 1 下载Tomcat可以从Apache站点下载 2 安装Tomcat只要解压jakartatomcat4 0 6 zip文件即可 建议解压到磁盘根目录中的jakartatomcat4 0 6文件夹中 3 设置环境变量 TOMCAT HOME设定Tomcat的安装路径 PATH追加Tomcat安装目录 bin目录 CLASSPATH为了Servlets能够顺利编译 须设定Tomcat安装目录 common lib servlet jar类文件 4 运行Tomcat进入Tomcat安装目录 bin目录 双击startup bat即可启动Tomcat 打开IE浏览器 在地址栏中输入 按回车键即可打开Tomcat的测试主页 表明Tomcat服务器可以正常运行了 注意 8080为Tomcat默认的端口号 将编写的JSP程序文件 如helloworld jsp 放到Tomcat安装目录的webapps ROOT中 在浏览器地址栏中输入 就可以运行了 7 8JSP语法基础 7 8 1JSP基本语法示例7 8 2注释7 8 3变量 方法的声明和表达式7 8 4JSP指令7 8 5JSP动作元素 7 2 7 3 7 4 7 5 7 6 7 7 7 1 7 9 7 8 1JSP基本语法示例 Hello 7 8 2注释 JSP网页自身注释JSP网页自身注释又称隐藏注释 它是对JSP程序进行的注释 服务器不会将它发送到客户端 对客户而言 它是不可见的 其语法格式为 另外 也可以使用脚本语言的注释方法对JSP程序进行注释 但是这种注释必须包含在之间 嵌入式注释嵌入式注释一般采用HTML及XML的语法格式为 JSP引擎对此类注释不进行任何解释 而直接将其返回给客户端的浏览器 客户在查看源代码时可以看到这条注释 嵌入式注释中可以使用JSP的表达式 这是与一般HTML注释最大的不同之处 其语法格式为 注释 其中 expression是任何合法JSP表达式 7 8 3变量 方法的声明和表达式 变量 方法的声明声明是用来声明在JSP程序中将会用到的变量和方法 在JSP中使用这些变量和方法前必须事先声明 声明语句必须符合指定脚本语言 Java 的语法规范 声明的语法格式为 注意 声明必须以 结尾 一次可以声明一个或多个变量和方法 变量在声明时可以设置初始值 一个声明仅在一个页面中有效 如果想在每个页面中都有效 可以把它们写成一个单独的文件 包含在或元素中 表达式JSP表达式可以将某个计算结果转换成一个字符串并且直接在网页上输出 JSP表达式元素可以为任意符合Java语法规则的表达式 其语法格式为 注意 在JSP中不能用一个分号来作为结束符 7 8 4JSP指令 JSP指令主要用来和JSP引擎沟通 向JSP引擎传递处理JSP页面的控制信息 而JSP不直接生成可见的输出 JSP中的三种指令是page include和taglib JSP指令的语法格式如下 page指令 page指令定义的是JSP文件中与页面相关的全局属性 无论page指令放在JSP文件的哪个地方 对整个页面都有效 可以在一个页面里用多个page指令 除了import属性 其他属性只能用一次 注意 属性值间的 符号表示被其分隔开的属性值可任选一个 1 language java 定义当前JSP程序文件要使用的脚本语言 目前只能用Java 2 extends package class 该属性标明JSP编译时需要加入的JavaClass的全名 需谨慎使用 它会限制JSP的编译能力 3 import package class package 在程序中导入一个或多个类 包 在同一页面 页面指令的属性只有import可以设置多次 JSP默认import属性的值已有 java lang java servlet java servlet jsp java servlet http 故不需要再设定 4 session true false 指定当前页面是否参与一个HTTP会话 取值为true或false 5 buffer none 8kb sizekb 指定到客户的输出流中的缓存的模式 6 autoFlush true false 设置缓冲区填满时是否进行缓冲自动刷新 值为false时 运行时如果出现缓存溢出则导致一个异常报错 7 isThreadSafe true false 设置JSP页面是否支持多线程 值为false时限制每次只能有一个用户访问该页面 反之则可以同时接受多个用户的请求 8 info text 通过Servlet getServletInfo 方法获得一个字符串 用来设置页面的文本信息 9 errorPage relativeURL 指定当前网页的出错处理网页的URL 10 isErrorPage true false 指定当前页面是否可以作为另一页面的错误处理网页 默认值为false 11 contentType mimeType charset characterSet text html charset ISO 8859 1 指定JSP字符的编码和JSP页面响应的MIME类型 默认MIME类型是text html 默认字符集类型是ISO 8859 1 include指令元素include指令用来指定JSP文件被编译的时候 需要插入的文本或者代码 它只有一个属性file 值为被包含文件的名称 include指令的语法格式为 其中 指被包含的文件的名称 包含进来的文件要能够被JSP引擎控制和访问 被包含的文件可以是一个HTML文件 一个JSP文件 一个文本文件或者是一个用Java语言写成的代码文件 如果被包含的文件是一个JSP文件 那么它里面的JSP的标记就会被解析 并把它们的执行结果和其他的文本内容一起加入JSP包含文件中 taglib指令元素taglib指令用于定义一个标签库以及其自定义标签的前缀 taglib指令的语法格式为 其中 uri惟一地确定标签库的路径 prefix表示定义所使用的标签库的前缀 注意 jsp jspx javax servlet sun和sunw是保留的标签库前缀 用户不能自定义这些标签库前缀 7 8 5JSP动作元素 JSP动作利用XML语法格式的标记来控制Servlet引擎的行为 使用JSP动作可以执行一些标准的常用的JSP网页动作 例如将网页转向 使用JavaBean 设置JavaBean的属性等 动作动作可以在即将生成的页面上动态地插入一些文件 即插入文件的时间是在页面被请求的时候 这是与前面所讲include指令的区别所在 动作允许包含静态文件和动态文件 语法格式为 其中 page属性指定需要包含进页面的文件的URL地址 flush属性必须设置为true 动作动作是将浏览器显示的网页转到另一个HTML网页或者JSP网页 执行动作时当前页面被终止 即JSP引擎不会再处理这个页面中剩下的任何内容 缓冲区被清空 的语法格式为 或者 动作动作提供了一种在JSP文件中嵌入客户端运行的Java程序 如Applet JavaBean 的方法 以确保一个Java插件软件可用 一般来说 动作会指定嵌入的对象是Applet还是Bean 指定class的名字及位置 还会指定从哪里下载这个Java插件 动作的语法格式为 jsp plugintype bean applet code 保存类的文件名称 codebase 类路径 name 对象名称 archive 相关文件路径 align 对齐方式 h
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 跨境童装童鞋电商本土化营销风险与机遇分析报告
- 私立幼儿园教师聘用合同中的师资队伍可持续发展协议
- 产品营销推广的方案设计
- 离婚协议签订前必读:五项核心法律注意事项详解
- 人力资源信息管理劳动合同范本设计
- 离婚协议书:财产分割、子女抚养及子女探视权协议
- 竞业限制合同中的地域限制与商业利益平衡
- 离婚房产分割及子女抚养权补充协议范本
- 金融信贷合同履行失职被骗罪法律救济协议
- 《生猪活体运输保险服务合同范本》
- 公司储备干部培训启动大会
- 《旅游研究方法课程》-课程教学大纲
- 神经调节的基本方式课时检测2
- 聚焦高质量+探索新高度+-2025届高考政治复习备考策略
- 【基于危险预知训练方法的安全实践探究12000字(论文)】
- 《智慧农业关键技术与装备》课件-第11章 农业预测预警
- 农村宅基地自建住房技术指南
- 2024年河北省石家庄市轨道交通有限责任公司招聘笔试参考题库含答案解析
- (高清版)TDT 1066-2021 不动产登记数据库标准
- 《金相基础知识普及》课件
- T-CEA 7024-2024 电梯应急救援处置平台技术规范
评论
0/150
提交评论