JSP概述、元素、语法、解释

合集下载

JSP页面基本结构

JSP页面基本结构

JSP 页面基本结构一个JSP 页面有两部分组成,一部分是JSP 页面的静态部分,如HTML ,CSS 标记等,用来完成数据显示和样式;一部分是JSP 页面的动态部分,如脚本程序,JSP 标签等,用来完成数据处理。

JSP 静态部分可以用任何通常使用的Web 制作工具编写,编写方式也和原来的一样。

JSP 页面动态部分包括四部分,分别为脚本元素(Scripting Element ),指令(D irective ),动作(Action )和注释。

脚本元素用来嵌入Java 代码,这些Java 代码将成为转换得到的Servlet 的一部分,脚本元素又可以划分为声明、表达式和脚本执行程序;JSP 指令用来从整体上控制Servlet 的结构;动作用来引入现有的组件或者控制JSP 引擎的行为。

为了简化脚本元素,JSP 定义了一组可以直接使用的变量(预定义变量),比如前面代码片断中的request 就是其中一例。

JSP 页面构成元素详细信息如图2-1所示:c图2-1 JSP 页面构成元素我们来看一个完整的JSP 案例,其中包括了大多数JSP 页面结构元素。

具体代行号0是page指令的用法。

行号1是taglib指令的用法。

行号2-8、33、34是HTML语法中的元素用法。

行号9-11、20-22是JSP隐藏注释的用法。

行号12是include指令的用法。

行号13、14、30、32是JSP动作元素的用法。

行号15是自定义标记,它与行号中的内容相关。

行号16是脚本元素中JSP表示式的用法。

行号17、18、19是脚本元素中JSP声明的用法。

行号23-29、31是脚本元素中JSP脚本小程序的用法。

第2章 JSP语法

第2章 JSP语法

五、Java控制结构
• 顺序结构 • 选择结构 • 循环结构
顺序结构
• 按设计时所确定的次序,一个一个语句的顺序执行 • 一般程序主体采用顺序结构,其中嵌套选择和循环结构。
选择结构控制
单选if、 双选if„else、 多选switch
if语句
if (条件表达式) 语句
条件?
True
例:
String x="男",s=""; if(x=="男") s="不能进入";
实践环节: 上机实战,验证结果
• 例3:利用Switch语句编程实现分数和等级的对应 • 0~59:E 60~70:D 70~80:C • 80~90:B 90~100:A
实践环节: 编写网页 exa2_14.jsp:表单页面,输入学生的成绩 exa2_15.jsp:根据成绩值显示成绩的等级
二、循环结构控制
知识点介绍
• 乱码问题: • ex9.jsp页面获取的信息可能是乱码(由很多?组 成),此时必须对含有汉子的字符进行特殊的处 理。
• 解决方案:在获取表单信息之前设置统一编码 • request.setCharacterEncoding("GBK");
• 例1写出程序 • • y= •
-1 0 1
案例
例1: int x=6, y=10, k=5; switch( x%y ) { case 0: k=x*y; break; case 6: k=x/y; break; case 12: k=x-y; break; default: k=x*y-x; break; } 例2: char ch='A'; int r=6; switch( ch+5 ) { case 'A': r=r+3; break; case 'B': r=r+5; break; case 'C': r-=6; break; default : } r/=2;

JSP技术简介

JSP技术简介

第1章JSP技术简介JSP(Java Server Pages)技术是由Sun公司发布的用于开发动态Web应用的一项技术。

它以其简单易学、跨平台的特性,在众多动态Web应用程序设计语言中异军突起,在短短几年中已经形成了一套完整的规范,并广泛地应用于电子商务等各个领域中。

在国内,JSP 现在也得到了比较广泛的重视,得到了很好的发展,越来越多的动态网站开始采用JSP技术。

本章就对JSP及其相关技术进行简单的介绍。

1.1 认识HTTP协议HTTP协议(Hypertext Transfer Protocol,超文本传送协议)是WWW服务器使用的主要协议,对HTTP协议细节的基本理解是编写JSP或Java小程序的开发人员所必需的。

因此在学习JSP技术之前有必要更加仔细地研究一下HTTP消息的格式(这里的讨论源自HTTP/1.1协议规范。

参见规范2616,网址为/rfc/rfc2616.txt)。

HTTP 协议的关键部分有HTTP请求和HTTP响应,以及客户端Web程序设计的一些基础知识,在第4章4.4节将会具体介绍。

1.2 客户端Web程序设计介绍Web浏览器现已成为深受大多数用户喜爱的用户界面。

HTML语言提供了丰富的控件,第三方厂商提供了Visual Basic编写的数百个额外的控件,这些都使得Web浏览器独具特色。

虽然Web浏览器与传统的GUI界面有一定的差距,但它提供了一种独立而又简单的方法来访问分布式资源,尤其是Internet资源。

而且越来越多的客户端Web程序扩展技术变得更加成熟,出现了包括CSS、JavaScript、VBScript、动态HTML、Java1.1.Applet应用程序等技术在内的客户端Web程序设计技术,它们的相互结合使得Web程序更加迷人。

下面简单介绍几种常用的客户端Web程序设计技术的特点。

本书假定读者对这些技术都有一定的了解,不对这些技术作详细介绍。

1.2.1 CSSCSS(Cascading Style Sheets)称为层叠样式表,是动态HTML技术的一个部分,但可以和HTML结合使用。

Jsp基本语法

Jsp基本语法

Jsp基本语法Jsp语法分为3类:脚本元素、指令元素、动作元素。

jsp的脚本元素有以下4个:1. 隐藏注释:<%--这是客户端不可见的隐藏注释--%>2. 声明(declarations):<%!这是声明%>3. 脚本段(scriptlets):<%这是脚本段%>4. 表达式(expression):<%=这是表达式%>jsp的指令元素有以下3个:指令主要用来提供整个JSP网页相关的信息,并且用来设定JSP页面的相关属性。

一、page指令功能:设定整个JSP网页的属性和相关功能。

语法:<%@ page attribute1="value1" attribute2="value2" %>标签元素:<jsp:directive.page attribute1="value1" attribute2="value2" />page指令元素的属性language="language" 指定JSP Container要用什么语言来编译JSP网页。

目前只可以使用Java语言,不过不排除增加其它语言。

默认值为Java。

extends="className" 定义此JSP页面产生的Servlet是继承自哪个父类。

必须为实现HttpJspPage接口的类。

JSP规范对不完全理解其隐意的情况下使用此属性提出警告。

import="importList" 定义此JSP页面可以使用哪些Java API。

用逗号分隔列出一个或多个全质类名。

此列表用于在生成的java servlet中创建相应的导入语句。

以下包是自动包含的,不必被指出:ng.*;java.servlet.*;java.servlet.jsp.*;java.servlet.htt.*session="true|false" 指明JSP页面是否需要一个HTTP会话,如果为true,那么产生的servlet 将包含创建一个HTTP会话(或访问一个HTTP会话)的代码,缺省为true。

第2章 JSP语法

第2章 JSP语法

7.JSP 动作标记
• include 动作标记 <jsp:include page= "文件的URL"/> 或 <jsp:include page= "文件的URL"> param子标记 </jsp:include>
include 动作标记是在JSP页面运行时才处理文件,被处理的文件在逻辑 和语法上独立于当前JSP页面.
• param动作标记
param标记以“名字—值”对的形式为其它标记提供附 加信息. param 标 记 不 能 独 立 使 用 , 需 作 为 jsp:include 、 jsp:forward、jsp:plugin标记的子标记来使用。 param动作标记语法格式:
<jsp:param name= “名字” value= “指定给param的值”> 当该标记与jsp:include动作标记一起使用时,可以将param标记中 的值传递到include动作标记要加载的文件中去,被加载的JSP 文 件 可 以 使 用 Tomcat 服 务 器 提 供 的 request 内 置 对 象 获 取 include动作标记的param子标记中name属性所提供的值
• contentType属性
contentType 属性值确定JSP页面响应的MIME (Multipurpose Internet Mail Extention)类型和JSP页 面字符的编码。 例如:
<%@ page contentType2" %>
不允许两次使用page 指令给contentType属性指 定不同的属性值 .
l language属性 定义JSP页面使用的脚本语言,该属性的值目前只能取"java"。 为language属性指定值的格式: <%@ page language="java" %> l import 属性 该属性的作用是为JSP页面引入Java运行环境提供的包中的类, 这样就可以在JSP页面的程序片部分、变量及函数声明部分、 表达式部分使用包中的类。 例如: <%@ page

JSP基本语法

JSP基本语法

JSP脚本JSP通用语法规则JSP通用语法规则包括:JSP的标记规则、JSP元素中的相对路径规则、JSP元素中的转义规则。

JSP的标记规则每一个JSP元素都有一个起始标记和一个结束标记。

起始标记为“<%”或“<jsp:”,结束标记为“%>”或“/>”。

比如:<jsp:include page=”/index.jsp”/><%if(sum>0) sum=sum+42;%>注起始标记和结束标记一定要在同一个JSP页面中,且成对出现JSP元素中的相对路径规则在JSP中可以使用相对路径,相对路径是以字符“/“开头的。

比如:/test/testChinese.jsp——说的实际路径是“C:\Program Files\Apache Software Foundation\Tomcat 5.0\webapps\test\testChinese.jsp “JSP元素中的转义规则我们已经知道,“<%”和“%>”是JSP中的标记字符,那么如果我们想在程序中用到这两个字符,该怎么区分呢?这就要用到转移规则了。

这里的转义规则包括:“’”被转义为“\’”“””被转义为“\””“\”被转义为“\\”“<%”被转义为“<\%”“%>”被转义为“%\>”下面我们通过一个小例子来看看。

其显示结果如图2-2所示。

图2-2 JSP转义规则示例上面显示结果,可以看到,本来是JSP标记语言的字符,也都显示出来了,实现这样功能的程序代码是怎么样的呢?02-02.jsp文件源代码:<html><head><title>JSP转义规则的例子</title></head><%@page contentType="text/html;charset=gb2312" %><body><p><%out.print("测试要避免冲突的字符串1:\'");%><p><%out.print("测试要避免冲突的字符串2:\"");%><p><%out.print("测试要避免冲突的字符串3:\\");%><p><%out.print("测试要避免冲突的字符串4:%\>");%></p></body></html>JSP脚本元素语法讲了语法规则以后,我们来看看脚本元素,JSP中的脚本元素有四种:注释、声明、表达式和程序段。

第2章 JSP的基础语法

第2章 JSP的基础语法

2.6 小结
本章详细介绍了什么是JSP,以及JSP具有哪些特点,还详细介绍了JSP的 运行机制。通过实例介绍了JSP声明语句、JSP Scriptlets、JSP表达式的 使用。
北京源智天下科技有限公司
1-11
联系方式:
北京源智天下科技有限公司
1-1
联系方式:
2.1 JSP简介
JSP是Java Server Pages的缩写,是由Sun Microsystem公司于 1999年6月推出的新技术。通过在传统的HTML中,利用插入JSP脚本代 码从而构成JSP页面。JSP是基于Java Servlet以及整个Java体系的Web 开发技术,利用这一技术来构建安全的、跨平台的动态Web站点,而且 目前在不断进行更新和优化。 如果读者对微软的ASP技术比较熟悉,应该知道ASP的编程语言 是VBScript和JavaScript,JSP使用的是Java。与ASP相比,在许多方面 有了大大的改进,具有动态页面与静态页面想分离,并摆脱系统平台的 束缚。JSP是通过编译后执行的,完全克服了ASP的脚本级解释执行的缺 点,目前以成为Web开发的主流选择。
2.4 注释
JSP的注释分为两类,一类为可以在客户端显示的注释,即HTML注释;一 类是不能在客户端显示的注释,即JSP注释。 HTML注释使用<!--作为开始,以-->作为结束,中间包含的代码即为注释部 分。 JSP注释使用<%- -作为开始,以--%>作为结束,中间包含的代码即为注释 部分。
北京源智天下科技有限公司
01 02 03 04 05 06 07 08 0lt;head> <title>JavaScriptletsDemo</title> </head> <body> <% String str = "Java Scriptlets Demo"; //声明字符串str out.println(str); //输出字符串str %> </body> </html>

JSP介绍

JSP介绍

JSP简介一、JSP介绍JSP全名为Java Server Pages,中文名叫java服务器页面,其根本是一个简化的Servlet设计。

JSP是SUN公司推出的,是J2EE(Java 2 Enterprise Edition,Java2企业版)十三种核心技术中最重要的一种。

JSP是基Java 语言的一种Web应用开发技术,利用这一技术可以建立安全、跨平台的先进动态网站。

如今,许多著名的Web网站都使用了JSP技术。

二、JSP技术概述JSP技术有点类似ASP技术,它是在传统的网页HTML文件中插入Java程序段和JSP 标记,从而形成JSP文件,后缀名为(*.jsp)。

用JSP开发的Web应用是跨平台的,既能在Linux下运行,也能在其他操作系统上运行。

它实现了Html语法中的java扩展(以<%, %>形式)。

JSP与Servlet一样,是在服务器端执行的。

通常返回给客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。

JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。

网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。

JSP 将网页逻辑与网页设计的显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。

JSP是一种动态页面技术,它的主要目的是将表示逻辑从Servlet中分离出来。

Java Servlet是JSP的技术基础,而且大型的Web应用程序的开发需要Java Servlet 和JSP配合才能完成。

JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。

作为一种基于文本的、以显示为中心的开发技术,JSP以Java Servlet为基础,提供了Java Servlet的所有优点,并且当与一个JavaBeans类结合在一起时,提供了一种使内容和显示逻辑分开的简单方式。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

JSP概述、元素、语法、解释
JSP概述
JSP(IAVA SERVER PAGES)是由Sun 公司在java语言上开发出来的一种动态网页制作技术,其静态的HTML相分离。

您可以使用平常得心应手的工具并按照平常的方式来书写HTML语句。

然后,将动些标记常常以“<%”开始并以“%>”结束。

例如,这儿有一个JSP页面:
<html>
<head><title>jsp教程</title></head>
<body>
<I><%out.println(“hello world”);%></I>
</body></html>
它将输出“hello world”。

通常,您要将文件以“.jsp”为扩展名,并将它放置到任何您可以放置普通WEB页面的路径下。

尽管J 而不是Servlet文件,但,事实上,它恰恰将转换为Servlet文件,其中的静态HTML仅仅用来输出Servl pages 已经被转换为Servlet且Servlet 被编译进而被装载(在第一次被Request时),当您再次Req 一瞬的延迟。

也请留意这个现象,一些Web Servers允许您为它定义别名,从而,好象一个URL是指向一个Servlet 或JSP pages.
构造一个JSP page,除了可内嵌的规则的HTML,还有三类主要的JSP元素:Scripting elements, Scripting elements您可以定义最终转换为Servlet的部分,Directives 使您可以控制这个Servlet的整定可重用的已有组件,另外,还可控制JSP引擎的运行。

为了简化Scripting elements,您可以在某一段上利
本教程式是以JSP最新的1.1版本,进行讲解的。

其语法概括如下表,其详细使用在随后的课程中详细讲解
JSP 元素
语法
解释
JSP Expression
<%= 表达式%>
Expression 用于计算并用于输出。

<jsp:expression>表达式</jsp:expression>,可使用的预定义的变量有request, response, out, se pageContext(在Sriptlets中也可使用)。

JSP Scriptlet
<% 代码%>
插入用于服务的代码。

<jsp:scriptlet>代码</jsp:scriptlet>
JSP Declaration
<!% 代码%>
属于Servlet部分的代码但并不是服务方法。

<jsp:declaration>代码</jsp:declaration>
JSP page Directive
<%@ page att=”val” %>
指向Servlet引擎的路径。

<jsp:directive.page att="val">. 以下是其合法的属性(缺省值加粗): l import="package.class"
l contentType="MIME-Type"
l isThreadSafe="true|false"
l session="true|false"
l buffer="sizekb|none"
l autoflush="true|false"
l extends="package.class"
l info="message"
l errorPage="url"
l isErrorPage="true|false"
l language="java"
JSP include Directive
<%@ include file =”URL” %>
当JSP page被翻译成Servlet 时将被包含进去的本地系统上的文件。

<jsp:directive.include file=”URL”> 这个URL必须是相对的。

当页面被请求时才用“jsp:include action”调入。

JSP 注释
<%-- 注释--%>
当JSP 转换为Servlet 时将被忽略。

<-- 注释-->
The JSP:include Action
<jsp:include page=”relative URL” flush=”true”/>
在页面被请求(Requested)时调入文件。

如果您想要在页面被转化(Translated)时将文件包含进来,则,请使用上面所提到的directive来代替。

警告:在一些服务器上被包含的文件只能是HTML或JSP,一般以文件的后缀名来判定。

The jsp:useBean Action
<jsp:useBean att=val*/>或<jsp:useBean att=val*>
…..
</jsp:useBean>
寻找或生成一个Java Bean.
可能的属性是:
l id="name"
l scope="page|request|session|application"
l class="package.class"
l type="package.class"
l beanName="package.class"
The jsp:setProperty Action
<jsp:setProperty att=val*/>
设置bean的属性,通过明确的指定或使用request得到的参数。

合法的属性:
l name="beanName"
l property="propertyName|*"
l param="parameterName"
l value="val”
The jsp:getProperty Action
<jsp:getProperty name=”propertyName” value=”val”/>
检索并输出bean的属性。

The jsp:forward Action
<jsp:forward page=”relative URL”/>
向前请求(request)另一个页面。

The jsp:plugin Action
<jsp:plugin attribute=”value”*>
</jsp:plugin>
生成特定的浏览器的OBJECT 或EMBED标签,用来明确运行Applet所使用的JAVA插件(plugin)。

相关文档
最新文档