【Jsp精品源码栏目提醒】:网学会员为广大网友收集整理了,【精品】jsp知识简介 - 其它资料,希望对大家有所帮助!
JSP内容简介 讲师:王彦锋 2008年06月
JSP概述 HTTP请求/响应模型 HTTP通信模型的工作原理是:一个客户端(通常是浏览器) 为得到服务器上的某种资源resource而向服务器发起个请求 request而服务器则返回一个与所请求资源相对应的应答 respone或者由于服务器的某种原因无法提供资源,则会返回 一个带错误信息的应答。
资源可以是若干内容,比如说一字不错 地返回给浏览器的简单的HTML文件,或者产生一个动态应答的程 序。
JSP概述 HTTP请求/响应模型的不足之处 HTTP是一种无状态协议。
这就是说,在服务器在发送应答后,不会 保留关于客户端请求的任何信息,因此也无法分辨来自同一客户端 的不同请求信息 Web应用程序无法很容易地提供即时反馈。
也就是客户端与服务器端 都需要一次请求/应答的交换过程。
(频繁的请求响应对网络带宽而 言也是一种考验)
JSP概述 请求参数 参数的发送形式主要二种: 以查询字符串query string的形式附加在URI的后面。
get方法 http://www.sohu.com/developerworks/cn/fn/libraryview.jsptype_by E69599E7A88Bview_bysearchsearch_byJSP 查询字符串以问号””开始,由“ ”符号所分隔的名称/值对 组成。
这些名称和值必顺是经过URL编码的,也就是说像空格,问 号,符号以及其他所有不是字母和数字的特殊字符都需要经过编 码,这样它们才不会和用来分隔名称/值对和URI其他部分的那些 符号相混淆。
典型的空格被替换。
作为请求消息主体的一部分发送(post方法) 思考:get和post提交方法有什么区别
JSP概述 什么是
jsp 简明扼要地说,
jsp是一种用来开发含有动态内容网页的技 术。
纯HTML页面只含有静态内容,它的内容总是保持不变的。
而
JSP页面见不同,它可以根据任意数量的变量来改变网页的内容。
JSP页面和常规页面一样,包含标准的标记语言元素(如 HTML标签),但是在
JSP中还包含特殊的
JSP元素,这些元素使得 服务器可以把动态内容插入到网页中。
JSP用途很广泛,例如从数 据库获取相应的信息展示到页面中或记录用户信息。
JSP的执行过程是:当用户请求一个
JSP页面时,服务器先执 行
JSP元素,然后再与HTML静态部分内容相结合,最后将生成的静 态页面返回给浏览器。
JSP概述 为什么要使用
JSP 因为在以前采用CGI技术Common GateWay Interface公共网 关接口是开发动态web的唯一技术,但是CGI并非一种高效率的解 决方案。
而
JSP由于存在如下一些优点,所以在开发动态web上成为一 种优秀的解决方案: 在HTML中嵌入动态元素
JSP允许将特殊的活性元素嵌入到HTML页面中,而不是将 HTML页面嵌入到编程代码中。
典型的
JSP页面
JSP概述 通过servlet实现一个动态页面package cn.com.servlet.htmlimport java.io.IOExceptionimport java.io.PrintWriterpublic class HtmlServlet extends HttpServlet public void doGetHttpServletRequest request HttpServletResponse response throws ServletException IOException response.setContentTypetext/html PrintWriter out response.getWriter out.println out.println out.println out.println out.printHELLO WORLD out.println using the GET method 由servlet动态生成html内容 out.println out.println out.flush out.close
JSP概述 servlet容器
JSP是基于Java Servlet规范的。
事实上,
JSP页面经常和 Servlet组合起来使用。
所以
JSP需要运行在servlet容器里面,在 这里我们简单介绍一下servlet容器。
Servlet容器是web服务器和servlet这间的连接。
它根据 servlet规范的定义为服务器上的所有servlet提供运行时环境并 负责在恰当的时侯载入和调用servlet类。
在这里我们简单介绍tomcatMyEclipse进行
jsp开发环境的 搭配。
思考:J2EE容器与servlet容器之间的关系与区别
JSP概述 Servlet所带来的问题 在纯servlet生成动态内容的版本中存在如下一些问题: 开发和维护应用程序的所有部分需要有深厚的java编程基 础,因为处理代码和HTML是交织在一起的。
改变应用程序代码的外观或风格需要重新编译servlet代 码 很难利用网页开发工具的优势来设计应用程序界面。
JSP概述 一个简单的
jsp页面这是一个的演示例子 产生动态效果的原因
JSP概述 使用
JSP的优点与好处
JSP的编译方式
JSP在第一次调用的时侯会由服务器进行编译成可执行 的代码,并在随后的请求中直接调用结果代码。
JSP使程序员的分工更加细化 因为
JSP是将动态元素嵌入到HTML页面中,所以页面工 程师可以专注于静态页面的编写,而程序员可以专注于动态 部分的产生。
而且
JSP还可以与其他J2EE技术配合使用 JDBC、Servlet等等。
能与其他J2EE技术配合使用 如JDBC、SERVLET、JMS、JNDI、EJB等等内容。
JSP概述
JSP页面剖析
JSP页面只是一个带有
JSP元素的普通网页,这些
JSP元素将 根椐不同的请求产生网页的动态内容,如图:页面中任何不是
JSP元素的东西都叫做模板文本(包括htmlxml,纯 文本等等内容)注意:
JSP不依赖HTML语言,它可以与任何一种标记语言配合使用 只是目前HTML在大范围得到了应用,所以我们这里讲解的时侯都 是将二种配合在一起讲解。
JSP概述
JSP处理过程 Servlet容器负责解释对
JSP页面的请求。
为了处理页面中所 有的
JSP元素,容器首先将
JSP页面转换成servlet类(实际就是
JSP页面实现类),这种转换是直接的,比如会将其中的html标签 转换前面我所示实例中的out.println一样的代码,而且
JSP动 作实例转换成实现动态行为的java代码。
然后再由servlet容器进 行编译。
当
JSP页面转换成servlet并编译该servlet,这只是转换阶 段。
当servlet容器接收到
JSP页面的第一次调用时,
JSP容器会自 动开始对这个页面的转换(含编译)。
当然,转换及编译过程需 要一点时间来完成,所以当第一次调用一个
jsp页面的时侯会有一 点延迟。
JSP语法详解
JSP的构成 在一个
JSP文件中大概可以总结出5类元素: 注释 模板元素 脚本元素 指令元素 动作元素
JSP语法详解
JSP中的页面注释
JSP的注释有多种情况,有
JSP自带的注释,也有HTML/XML的注释规 范。
HTML/XML注释 语法如下: -- 例如: 或 在客户端的HTML源代码中显示为: 隐藏注释 隐藏注释写在
JSP程序中,但不发给客户端。
语法如下: 如
JSP语法详解
JSP中的页面注释 Scriptlets中的注释 由于Scriptlets中包含的是java代码,所以在Java中的注释规则在 Scriptlets中也适用。
常用的java注释有“//” “/ /”。
脚本元素 脚本元素主要包括: 声明 声明就是在
JSP程序中声明合法的变量和方法,如: 表达式 包含一个符合
JSP语法的表达式。
语法为: 也意味着表达式是位于””之间的代码。
最终在运行后,这个表达式的内容会被转化成一个字符串,然后插 入到这个表达式在
JSP文件中的位置并显示
JSP语法详解 脚本元素 ScriptletsScriptlets位于“”之间,它们是合法的JAVA代码。
如:思考:声明与scriptlets有什么区别 作业一. 搭建基于MyEclipseTomcat的开发环境二. 用
jsp生成一个hello world的动态页面三. 利用
jsp实现从数据库某个表中获取数据,并将其 查询结果显示在页面表格中
JSP元素介绍
JSP元素类型 一. 指令元素 二. 行为元素 三. 脚本元素 指令元素 用于指定关于页面本身的一些信息,这些信息在各个页 面请求间保持不变。
这些信息内容包括:是否需要会话跟踪, 对缓冲的要求,以及用于报告错误的页面名称等等。
内容 描述 定义页面的属性如页面类型,字符编码等等 在转换阶段导入一些类(相当于import功能) 声明在页面中使用的,包含自定义行为的标记库
JSP元素介绍 page指令 page指令用来定义
JSP文件中的全局属性。
在一个
JSP页面 中,可以定义一个或多个page指令。
但是除import属性外的其它 几种属性,只能定义一次。
也就是说在一个
JSP页面中定义了多 page指令,那么只有第一个page指令有效,其它page指令则是无 效的。
语法: