03 JSP基础编程_第1页
03 JSP基础编程_第2页
03 JSP基础编程_第3页
03 JSP基础编程_第4页
03 JSP基础编程_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第3章JSP 基础编程本课教学内容w B/S结构w 建立Web项目w 注释w jsp表达式、程序段和声明w URL传值w jsp指令和动作w 表单开发w 隐藏表单w 中文乱码问题B/S简介w B/S 结构 C/S(客户机(客户机/服务器)服务器) B/S(浏览器(浏览器/服务器)服务器)C/S结构模式图B/S结构模式图B/S简介w C/S(客户机/服务器) C/S,分为客户机和服务器两层,把应用软件安,分为客户机和服务器两层,把应用软件安装在客户机端,通过网络与服务器端相互通信。装在客户机端,通过网络与服务器端相互通信。如果客户端改动了如果客户端改动了(如界面丰富,功能增加如界面丰富,功能增加

2、),就必,就必须通知所有的客户端重新安装,维护稍有不便须通知所有的客户端重新安装,维护稍有不便B/S简介w B/S(浏览器/服务器) B/S结构却可以不用通知客户端安装某个软件,结构却可以不用通知客户端安装某个软件,内容修改了,也不需要通知客户端升级。内容修改了,也不需要通知客户端升级。B/S也分也分为客户机和服务器两层,但是客户机上不用安装为客户机和服务器两层,但是客户机上不用安装软件,只需要使用浏览器即可软件,只需要使用浏览器即可Web程序w 定义:Web原意是蜘蛛网,或网。在互联网等技术领域,特指网络,在应用程序领域,又是World Wide Web(万维网)的简称。在Web程序结构中,

3、浏览器端与Web服务器端采用请求/响应模式进行交互。Web程序运行描述客户端Web服务器数据库服务器1:用户输入2:发送请求5:返回响应3:访问数据4:返回结果6:显示 浏览器端与服务器端的交互模式 Web程序运行描述w 浏览器端与服务器端的交互模式过程描述: 客户端客户端(通常是浏览器,如通常是浏览器,如IE、Firefox等等)接受用接受用户的输入,如用户名、密码、查询字符串等户的输入,如用户名、密码、查询字符串等 客户端向客户端向Web服务器发送请求:输入之后,提交,服务器发送请求:输入之后,提交,客户端把请求信息(包含表单中的输入以及其他客户端把请求信息(包含表单中的输入以及其他请求等

4、信息)发送到请求等信息)发送到Web服务器端,客户端等待服务器端,客户端等待服务器端的响应服务器端的响应Web程序运行描述 数据处理:数据处理:Web服务器端使用某种脚本语言访问服务器端使用某种脚本语言访问数据库,查询数据,并获得查询结果数据库,查询数据,并获得查询结果 数据库向数据库向Web服务器中的程序返回结果服务器中的程序返回结果发送响应:发送响应:Web服务器端向客户端发送响应信息服务器端向客户端发送响应信息(一般是动态生成的(一般是动态生成的HTML页面)页面)显示:由用户的浏览器解释显示:由用户的浏览器解释HTML代码,呈现用户代码,呈现用户界面界面Web程序w 应用于Web的编程

5、语言: CGIPHPASPJSP。建立 Web 项目w 创建Web网站所涉及的几个步骤如下: 创建创建Web项目:建立基本结构项目:建立基本结构 设计设计Web项目的目录结构:将网站中的各个文件项目的目录结构:将网站中的各个文件分门别类分门别类 编写编写Web项目的代码:编写网页项目的代码:编写网页 部署部署Web项目:在服务器中运行该项目项目:在服务器中运行该项目在MyEclipse中创建Web项目见课本目录结构w Web项目要求按特定的目录结构组织文件,当在MyEclipse中创建完毕新的Web项目,就可以在MyEclipse的Package Explorer中看到该Web项目的目录结构,

6、由MyEclipse自动生成。目录用途w src目录:用来存放Java源文件。w WebRoot目录:是该Web应用的顶层目录,也称为文档根目录,由以下部分组成: 两个重要目录两个重要目录(不要随意修改或者删除不要随意修改或者删除): WEB-INF目录:该目录存在于文档根目录下。但是该目录不能被引用,也就是说,该目录下存放的文件无法对外发布,当然就无法被用户访问到了目录用途 META-INF目录:系统自动生成,存放系统描述信息,一般情况下使用较少 其他目录,主要是网站中的一些用户文件,包括其他目录,主要是网站中的一些用户文件,包括HTML网页、网页、CSS文件、图像文件、文件、图像文件、JS

7、P 文件等文件等部署w 页面编写完成之后,必须要将整个项目放到服务器中去运行,这叫做部署Web项目,具体操作步骤分为以下几步: 单击单击MyEclipse工具栏上的部署图标工具栏上的部署图标 在新弹出的对话框中选择欲部署的项目,接着单在新弹出的对话框中选择欲部署的项目,接着单击击Add按钮按钮 在下一个新弹出的对话框中,选择在下一个新弹出的对话框中,选择server为为Tomcat 6.x,然后单击,然后单击Finish按钮按钮运行w 部署Web项目后,就要开始访问页面: 运运 行行 Tomcat 6.x 服服 务务 器器 ( 前前 面面 已已 经经 叙叙 述述 过过 ) , 开开 启启 IE

8、 窗窗 口口 , 输输 入入 URL 为为http:/localhost:8080/Prj03/welcome.jsp,按回,按回车键并查看运行结果车键并查看运行结果项目已经被放到了服务器中,路径是:项目已经被放到了服务器中,路径是:C:ProgramFilesApacheSoftwareFoundationTomcat 6.0webapps开发Web程序的常见错误w 未启动 Tomcatw 未部署 Web 应用就访问w URL 输入错误注释w 一类是能够发送给客户端,可以在源代码文件中显示出其内容。主要是以HTML 注释语法出现: 注释是代码不可或缺的重要组成部分。JSP 注释可以分成两类:

9、注释w 另一类是不能发送给客户端的,也就是说不会在客户端的源代码文件中显示其内容,仅提供给程序员阅读的,分为两种: JSP 注释语法: Java 代码注释:/注释内容 /* 注释内容 */ 表达式、程序段和声明w JSP 表达式的作用是定义 JSP 的一些输出。表达式基本语法如下所示: w JSP 表达式的作用是将其里面内容所运算的结果输出到客户端表达式、程序段和声明w 使用 JSP 表达式,需要注意几个细节: JSP 表达式中不能用表达式中不能用;结束结束 在在 JSP 表达式中不能出现多条语句表达式中不能出现多条语句JSP表达式的内容一定是字符串类型,或者能通过表达式的内容一定是字符串类型

10、,或者能通过 toString()函数转换成字符串的形式函数转换成字符串的形式 *详细代码示例见课本URL 传值w HTTP 是无状态的协议。Web 页面本身无法向下一个页面传递信息,如果需要让下一个 页面得知该页面中的值,除非通过服务器。Web 页面之间传递数据,是 Web 程序的重要功 能,其流程如图:URL 传值客户端页面1输入guokehua客户端页面2显示guokehuaP2发送guokehua响应服务器URL 传值w URL传值的局限性: 传输的数据只能是字符串,对数据类型具有一定传输的数据只能是字符串,对数据类型具有一定限制限制 传输数据的值会在浏览器地址栏里面被看到,传输数据的

11、值会在浏览器地址栏里面被看到,秘密性要求很严格的数据秘密性要求很严格的数据(如密码如密码),不应该用,不应该用 URL 方法来传值方法来传值URL 传值w URL传值的优势: 简单性和平台支持的多样性简单性和平台支持的多样性(没有浏览器不支持没有浏览器不支持 URL),很多程序还是用,很多程序还是用 URL 传值比较方便传值比较方便 集合集合框架包括接口、实现和算法框架包括接口、实现和算法JSP 指令和动作w JSP 指令告诉 JSP 引擎对 JSP 页面如何编译,不包含控制逻辑,不会产生任何可见的输 出。其用法如下: * 注意,属性名大小写是敏感的注意,属性名大小写是敏感的w JSP 包含三

12、个指令:page、include 和 taglib。其中,使用最多的是 page 指令和 include 指令JSP 指令w page 指令的作用有: 导入包:导入包: 设定字符集:设定字符集: 设定设定 MIME 类型和字符编码类型和字符编码 : JSP 指令w page 指令的作用有:设定错误页面:设定错误页面: 在发生异常的页面上写:在发生异常的页面上写: 在在anErrorPage.jsp页面上写:页面上写:JSP 动作w JSP 动作指使用 XML 语法格式的标记来控制服务器的行为。其用法如下: 相关内容相关内容 JSP 动作w 两个常见的 JSP 动作: jsp:include:当

13、页面被请求时引入一个文件:当页面被请求时引入一个文件 jsp:forward:将请求转到另外一个页面:将请求转到另外一个页面 表单开发w 在一些系统中,如果用户要进行登录,就必须输入账号密码,这就是表单,例如:系统登录界面表单开发w 表单有如下性质: 表单中可以输入一些内容,这些输入功能由控件表单中可以输入一些内容,这些输入功能由控件 提供,叫做表单元素提供,叫做表单元素 表单中一般都有一个按钮负责提交表单中一般都有一个按钮负责提交点击提交按钮,表单元素中的内容会提交给服务点击提交按钮,表单元素中的内容会提交给服务器端器端表单元素放在表单元素放在之间之间单一表单元素数据的获取w 单一表单元素,

14、是指表单元素的值送给服务器端时,仅仅是一个变量。这种情况下的表单元素主要有:文本框、密码框、多行文本框、单选按钮、下拉菜单等单一表单元素数据的获取w 文本框、密码框、多行文本框、单选按钮和下拉菜单,其中的内容的获取方法均相同,利用 request.getParameter(表单元素名)方法获得一个字符串。*具体代码示例见课本捆绑表单元素数据的获取 w 捆绑表单元素,是指多个同名表单元素的值送给服务器端时,是一个捆绑的数组。这种情况下的表单元素主要有:复选框、多选列表框、其他同名表单元素等捆绑表单元素数据的获取 w 具体获得方法和一般表单元素类似,同样利用request.getParameter

15、Values(表单元素名)获得字符串数组*具体代码示例见课本隐藏表单w 例子:页面 1 中定义了一个数值变量,并显示其平方;要求在页面 2 中显示其立方。很明显,页面 2 必须知道页面 1 中定义的那个变量。可以用 URL 传值。但 是通过 URL 方法,传递的数据可能被看到。为了避免这个问题,我们可以用表单将页面 1 中的变量传给页面 2,这个表单就可以设定为页面1中的隐藏表单。隐藏表单w 网页制作中,input 有一type=hidden的选项,它是隐藏在网页中的的一个表单元素,并不在网页中显示出来。这就是实现隐藏表单的方法实现方法:隐藏表单w 此时浏览器地址栏上的地址数据还是能够被看到。

16、解决该问题的方法是将 form 的 action 属性设置为 post(默认为 get)解决数据传输安全问题方法:隐藏表单w隐藏表单的弊端 和和 URL 方法类似,该方法传输的数据只能是字符方法类似,该方法传输的数据只能是字符串,对数据类型具有一定限制串,对数据类型具有一定限制 传输数据的值虽然在浏览器地址栏内不被看到,传输数据的值虽然在浏览器地址栏内不被看到,但是在客户端源代码里面也会被看到但是在客户端源代码里面也会被看到 *具体代码示例见课本中文乱码问题 如果使用的是 Tomcat 服务器,在提交过程中,如果提交的内容中含有中文,经常会出 现中文乱码问题,出现的种类如下:w 中文无法显示

17、没有把文件头上的字符集设置为中文字符集。一没有把文件头上的字符集设置为中文字符集。一定要保证文件头上写明:定要保证文件头上写明: 或或 中文乱码问题w 提交过程中显示乱码,有 3 种方法解决这个问题 将其转成将其转成 gb2312 格式格式 直接修改直接修改 request 的编码的编码利用过滤器利用过滤器 中文乱码问题w 将其转成 gb2312 格式方法如下:变量(字符串方法如下:变量(字符串 )= new String(变量变量(字符串(字符串 ).getBytes(ISO-8859-1),gb2312)中文乱码问题w 直接修改 request 的编码 可以将可以将 request 的编码修改为支持中文的编码,的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论