JSP的基本语法2

合集下载

第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;

chap2_JSP语法

chap2_JSP语法
作为类的成员变量,被所有用户共享。
example2_2.jsp:
5
2. JSP页面的成员变量和方法
JSP页面在“<%!”和“%>”之间声明 定义的方法 ,在该JSP页面有效,该方法 内的变量只在该方法内有效
对于在“<%!”和“%>”标记符号之间 定义类,可以在Java程序片中使用该类 创建对象。
18
不允许两次使用page 指令给contentType 属性指定不同的属性值 .
常用类型值有: text/html、text/plain、 image/gif、 image/jpeg、 application/x-shockwave-flash、 application/msword等
实例:example2_8.jsp
16
contentType属性
contentType 属 性 值 确 定 JSP 页 面 响 应 的 MIME (Multipurpose Internet Mail Extention)类型。
例如:
<%@ page contentType="text/html " %> <%@ page contentType="application/msword" %>
如果需要在JSP页面内某处整体嵌入一个文件,就 可以考虑使用include指令标记,其语法格式如下: <%@ include file= "文件的URL " %>
如果该文件和当前JSP页面在同一Web服务目录中, 那么“文件的URL”就是文件的名字;
如果该文件在JSP页面所在目录的子目录中,比如 fileDir子目录中,那么“文件的URL”就是 “fileDir/文件的名字”。

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中的脚本元素有四种:注释、声明、表达式和程序段。

chap2_JSP语法-student

chap2_JSP语法-student

1. JSP页面的变量和方法
总结1:局部变量和成员变量的区别1

语法区别(位置)

局部变量定义在<% %>之间,而且与位置有关,定义后,
在页面定义后面部分的代码中都可使用。

成员变量定义在<%!%>之间,而且与位置无关,在整个 JSP页面内有效,但是开发规范要求写在页面的前面。(如 <body>标记后)

方法的调用:直接在程序片中使用java语法调用方法即可 ,方法的调用语句可以在方法定义之前或者之后
1. JSP页面的变量和方法
方法

示例:观察如下例子,说出程序功能
<%@ page contentType="text/html;charset=gb2312"%> <%! int a = 0; public void test(){ 用户乙的线程 a=100; a=a+100; } %> 调用函数输出a的值:<%=a%> 用户甲的线程
%> 计算4999加5888的和: <% int a = add(4999,5888); out.print(a); %>
1. JSP页面的变量和方法
方法

注意:方法内的变量只在该方法内有效
<%! int a = 100; public void test(){ int b = 200; } %> 打印变量值 <% out.print(a); out.print(b);(编译错误) %>
思考1:更改程序,使用html将程序片分割的方法实现?
学生练习
<body> <h1>输出一个5行4列的表格</h1> <table width=“800" border="1"> <%for(int i=1;i<=5;i++) {%> <tr> <%for(int j=1;j<=4;j++){ %> <td>第<%out.println(i);%>行第 <%out.println(j);%>列的单元格</td> <%} %> </tr> <% }%> </table> </body>

第3章 JSP语法

第3章 JSP语法

运行该段代码将生成下面的HTML代码: <a href="welcome.jsp">链接到welcome.jsp</a>
20
(3) 动态指定Form表单处理页面,例如下面的代码:
<% String name="logon.jsp"; %> <form action="<%=name%>"></form>
isErrorPage属性:将该属性值设为true,此时在当 前页面中可以使用exception异常对象。若在其他页 面中通过errorPage属性指定了该页面,则当前者出 现异常时,会跳转到该页面,并可在该页面中通过 exception对象输出错误信息。相反,如果将该属性 设置为false,则在当前页面中不能使用exception 对象。该属性默认值为false。 【例3-1】errorPage属性及isErrorPage属性的应14用
<!-- JSP表达式 -->
今天是:<%=today%>
<!-- HTML标记语言 -->
</center>
</body>
3
</html>
3.1.1 JSP中的指令标识 利用JSP指令可以使服务器按照指令的设置来执行
动作和设置在整个JSP页面范围内有效的属性。
<%@ page language="java" contentType="text/html; charset=gb2312" %>
[ isELIgnored="true|false" ]

第2章 JSP语法

第2章 JSP语法


<jsp :param name= »param2 »value= »value2 »/> </jsp:forward>
<jsp :param name= »param1 »value= »value1 »/>
小结


本章主要介绍了JSP页面的组成、指令、动作等技术,重点介绍 了JSP的page指令、include指令的使用,<jsp:include>、 <jsp:forward>等动作指令的使用。 通过本章的学习,读者可以建立一个简单功能的JSP网站。

1.page指令 page指令就是通过设置内部的多个属性来定义JSP文件中的全局 特性。需要注意的是,page指令只能对当前自身页面进行设置, 即每个页面都有自身的page指令。如果没有对属性进行设置, JSP将使用默认指令属性值。


2.include指令 在JSP开发中,可以将一些重用的代码写入一个单独的文件中, 然后通过include指令引用该文件,从而缓解代码的冗余问题, 修改也比较方便。Include指令语法格式为: <%@ include file=”被包含的文件路径”%>
扩展——代码编写规范


1.JSP文件命名 JSP文件名称要以小写字母命名,名称要体现出该页面的意义, 最好能够与模块名称联系在一起。 例如: login.jsp --登录页面 register.jsp --注册页面 message.jsp --消息页面



新知识点——JSP页面组成、声明、代码段、表达式、注释 JSP页面由两部分组成,一部分为静态部分,即HTML标记,用 来完成数据页面显示;另一部分为动态部分,用来完成数据处理, 包括脚本元素、指令元素和动作元素。 脚本元素用来嵌入Java代码,这些Java代码将成为转换得到的 Servlet的一部分;JSP指令元素用来从整体上控制Servlet的结 构;动作元素用来引入现有的组件或者控制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>

第3章:JSP基础语法

第3章:JSP基础语法
JSP基础语法
<1>、掌握JSP中注释语句的使用; <2>、掌握JSP中Script的使用及使用的区别; <3>、掌握page指令的作用; <4>、掌握两种包含语句及两种包含语句的 区别; <5>、掌握跳转指令的操作; <6>、可以使用JSP基础语法结合JDBC完成登 录程序的开发;
JSP注释分两种,一种是显示注释,这 种注释客户端是允许看见的;另一种是隐 式注释,这种注释客户端是无法看见的; 在JSP中最重要的就是Scriptlet脚本小 程序,所有嵌入在HTML代码中的java程序 都必须使用Scriptlet标记出来;在JSP中一 共提供了3中Scriptlet代码; 第一种:<%!%> 第二种:<%%> 第三种:<%=%>一定要明确记住字符 串的内容不可改变这一重要特征,一个 String对象内容的改变,实际上是通过内存 地址的“断开-连接”变化完成的,而本身 字符串的内容没有发生任何变化; 可以直接使用String类中的charAt方法 取出字符串指定位置的字符; 在String中使用indexOf方法可以返回 指定字符串的位置; 在
由于那种嵌入scriptlet的代码看起来很 乱,而且不易管理;所以我们应该使用 scriptlet标签指令 <jsp:scriptlet>这里可以定义一些变 量</jsp:scriptlet>; 在使用标签指令时一定要完结; 在JSP中,pageEncoding指的是jsp页 面本身的编码,而contentType中的charset 是服务器发给客户端的内容编码。

第2章 JSP语法基础 2.3 JSP指令元素、2.4 JSP动作元素

第2章 JSP语法基础 2.3 JSP指令元素、2.4 JSP动作元素
JSP开发案例教程
第2章 JSP语法基础
2.3 JSP指令元素 2.4 JSP动作元素
JSP开发案例教程
本章内容
01 脚本元素 03 JSP指令元素
02 案例ch2.2_datetime: 时间格式化
04 JSP动作元素
05 案例ch2.5_include: 框架类型网页
06 小结与练习
2.3 JSP指令元素
指定在当前页
4
session
中是否允许 10 isThreadSafe 指定是否线程安全
session操作
5
buffer
指定处理页面 输出内容时的 11 缓冲区大小
autoFlush
是定当缓冲区满时是 否自动清空
指定当前页面
说明当前页面是否为
6
errorPage 运行异常时调 12 isErrorPage 其他页面的异常处理
该JSP动作表示获取或创建一个名称为guess的、属于类com.GuessNumber的、生命周期 为session的对象,详见本书案例ch5.4_guessNumber(猜数游戏)。
JSP开发案例教程
所有的动作元素需要两个属性:
id属性
id属性是动作元素的唯一标识,可以在 JSP页面中被引用。动作元素创建的id值 可以通过PageContext来调用。
可以使用绝对或相对URL。 ✓ tagDir属性指示前缀将被用于标识在WEB-INF/tags目录下的标签文件。
2.4 JSP动作元素
JSP开发案例教程
2.4 JSP动作元素
JSP动作元素
➢ JSP动作利用XML语法格式的标记,来控制JSP容器Servlet引擎的行为。 ➢ 利用JSP动作可以动态地插入文件、重用JavaBean组件、把用户重定向到另外的页面、为Java插件

实验三 JSP基本语法

实验三  JSP基本语法

《Java Web开发》实验三JSP基本语法学号:___________________ 姓名:____________________实验目的:1,熟悉和理解MyEclipse下的创建JSP的方法及模板的基本内容2,掌握JSP程序段、JSP表达式、JSP声明等基本JSP元素及其综合应用3,熟悉常见JSP错误的修改方法及调试JSP的方法实验内容和步骤:1,在配置好Tomcat基础上(假设解压在d:\tomcat6.x下),MyEclipse中创建Web Project,项目名为project3,并部署(也称为发布,Deploy)该Web项目,并打开浏览器测试该项目。

然后按照如下Step 1-1到1-4的要求创建JSP。

Step 1-1,在WebRoot下创建一个jiecheng1.jsp,显示10的阶乘的运算结果。

提示:1)用JSP程序段(JSP Scriptlet)即可,用out.print()方法来显示Step 1-2,在WebRoot下创建一个jiecheng2.jsp,显示10行,分别显示从1到10的阶乘的运算结果。

提示:1)用JSP程序段(JSP Scriptlet)来运算,用JSP表达式(JSP Expression)来显示。

Step 1-3,在WebRoot下创建一个jiecheng3.jsp,显示10行,用随机的不同颜色显示从1到10的阶乘的运算结果。

提示:1)实现不同颜色,可以用JSP声明(JSP Declaration)中编写自定义方法。

2)实现随机颜色,可以用JDK提供的Math.random()方法结合HTML标记<font color=”rgb(xxx,xxx,xxx)”>来创建。

Step 1-4,在WebRoot下创建jiecheng4.jsp,用表格显示1到10的阶乘的运算结果。

提示:1)混合使用JSP程序段、JSP表达式、HTML标记。

2,在src下创建一个类Student.java,它具有姓名、性别、年龄、班级等不同的成员变量,例如:package model.student;public class Student {String name; // 姓名boolean sex; // 性别,true表示男,false表示女int age; // 年龄String className; // 班级public Student { } // 默认无参构造函数public Student(String name, boolean sex,int age, String className) { // 有参构造函数 = name;this.sex = sex;this.age = age;this.className = className;}}6, 在WebRoot下创建studentList.jsp,用程序段创建5个上述学生类型的个人信息,并用表格显示出来。

JSP基本语法

JSP基本语法

26
Jsp动作标记- jsp:forward动作标记
3、 jsp:forward动作标记 jsp:forward动作允许将用户请求定位到其它页 面,基本的语法格式是:
<jsp:forward page={"要转向的页面url"|"<%=表达式 %>"} /> 或者 <jsp:forward page={"要转向的页面url"|"<%=表达式 %>"} > <jsp:param name="属性名" value="属性值" /> </jsp:forward>
6
演示:示例 1
JSP Scriptlet 2-1
JSP Scriptlet概念
JSP Scriptlet就是在JSP页面里嵌入一段Java代码
JSP Scriptlet在JSP页面中的表现形式
<% Java代码 %>
7
JSP Scriptlet 2-2
使用JSP Scriptlet进行JSP编程
第九章
JSP 基础(二) 脚本、指令与动作的使用
回顾
JSP 的英文全称是JavaServer Page,是一种 Java服务器端编程技术之一,用于创建动态网页 JSP的页面由静态内容、JSP Scriptlet、 JSP 表 达式、申明、JSP 指令和注释等组成 JSP 生命周期包括转换、编译和执行阶段 JSP 页面可使用 Dreamweaver 和 MyEclipse8.5 等开发工具来创建
24
Jsp动作标记- jsp:param动作标记
ห้องสมุดไป่ตู้ ch9_1.jsp文件内容: <%@ page contentType="text/html;charset=GB2312" %> <%! public String getMax(double x,double y){ if (x>y){ double temp; temp=x; x=y; y=x; } return ("大数是:"+y+",小数是:"+x); } %>

J2EE JSP组件编程基础与语法详解——JSP中的指令及应用

J2EE JSP组件编程基础与语法详解——JSP中的指令及应用

(3)最好采用每个属性为一条标签的形式 <%@ page contentType="text/html;charset=gb2312" > <%@ page isErrorPage="true"%>
建议:最好采用此方式 以提高页面的可读性
3、注意页面中的“中文编码”的设置定义 (1)在页面中不添加下面的标签时 <%@ page contentType=“text/html;charset=gb2312”%> 或者 <%@ page pageEncoding="gb2312"%> (2)注意页面在浏览时出现中文乱码的主要原因
JSP规范中的指令及应用
JSP规范中的指令及应用
The Emphases in Teaching Materials
在本讲中重点掌握如下知识点 page指令的主要功能 page指令应用的语法格式 page指令中的常用的属性 JSP页面中的include指令
1、page指令(Page Directive)功能 (1)Page指令其实是一种标签 它给JSP容器提供要求用来处理页面的特殊设置要 求——实现JSP页面被编译时的各种处理规则的选项 (2)通过这些Page指令可以改变该JSP页面所对应的 Servlet程序的结构,以便当页面被编译处理时能够生 成所要求的Servlet类程序 2、page指令应用的语法格式 (1)语法格式 <%@ page{ 属性名称=“值” } %> (2)页面示例
(4)页面示例
(5)该指令主要的功能 它一方面可以把整个页面拆分为多个不同的子部分(版 块),每部分可以独立地变化和更新 另一方面只要改变所包含文件的内容,就可以迅速地更 新整个页面的内clude指令时注意页面可能出现中文乱码 在每个被包含的目标JSP页面中添加下面的指令声明<%@ page pageEncoding=“gb2312”%>,否则页面将会出现中文 乱码。

Jsp入门--语法格式(%%)、指令(page、include、taglib)

Jsp入门--语法格式(%%)、指令(page、include、taglib)

Jsp⼊门--语法格式(%%)、指令(page、include、taglib)JSP脚本1. <% java代码 %>⽅法内部的代码都可以写在个位置<% String s1 = "hello jsp"; %>2. <%=java代码 %>把java代码运⾏的结果在页⾯显⽰, 要求java代码是⼀个表达式<%=s1 %>3. <%! java代码 %> 使⽤很少对属性的声明,⽅法的声明4、jsp的注释 <%-- ... --%>JSP是特殊的Servlet JSP是⼀种特殊的Servlet,当JSP页⾯⾸次被访问时,容器(Tomcat)会先把JSP编译成Servlet,然后再去执⾏Servlet。

所以JSP其实就是⼀个Servlet!JSP真⾝存放⽬录 JSP⽣成的Servlet存放在${CATALANA}/work⽬录下,我经常开玩笑的说,它是JSP的“真⾝”。

我们打开看看其中的内容,了解⼀下JSP的“真⾝”。

你会发现,在JSP中的静态信息(例如<html>等)在“真⾝”中都是使⽤out.write()完成打印!这些静态信息都是作为字符串输出给了客户端。

JSP的整篇内容都会放到名为_jspService的⽅法中!JSP指令语法:语法格式: <%@ 指令名属性名1=值1 属性名2 = 值2.... %>1. page指令: 对jsp页⾯⼀些设置2. include指令: 包含其他jsp页⾯3. taglib指令: 引⼊标签库 (往后)page指令page指令是最为常⽤的指定,也是属性最多的属性!page指令没有必须属性,都是可选属性。

例如<%@page %>,没有给出任何属性也是可以的!在JSP页⾯中,任何指令都可以重复出现!默认创建的jsp: <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>属性:1、 language: jsp⽀持的编程语⾔: 值只能是java2、 pageEncoding: 设置jsp的编码:指定当前JSP页⾯的编码!这个编码是给服务器看的3、 Content-type: contentType属性与response.setContentType()⽅法的作⽤相同! 它会完成两项⼯作,⼀是设置响应字符流的编码,⼆是设置content-type响应头。

JSP基本语法教程

JSP基本语法教程
(2)property
property属性赋予不同的值代表不同的含义。

Property=“*”:这种赋值方式表示所有请求参数
的所有值,用于匹配Bean中的属性值。在Bean
中的属性的名字必须和Request对象中的参数名 一致。

Property=“propertyName”[param=“parameter
4.2.3 脚本段( Scriptlets )
脚本段代码的格式:
<% scriptlet %>
脚本段在Web服务器响应时就会运行。
【注意】
脚本段内不能定义方法。
4.2.4 表达式(Expression)
JSP表达式用来把Java数据直接插入到输出。
表达式的格式为:<%=Java Expression %>
4.3.2 include指令
include指令用于在JSP页面中包含另一个文
件的内容。
include指令的语法格式:
<%@ include file=“relativeURL” %>
“relativeURL”表示此file的路径,路径名一般
来说是指相对路径。 【注意】
include包含文件的内容也是JSP代码,即可以包
Bean的作用域。此属性是可选的,其缺省值为page。
求范围内有效。
session-创建一个与当前用户相关的实例,该实例只在当前用 户范围内有效。
application-创建一个与当前应用相关的实例,该
实例只在当前用户范围内有效。
(3)class
class指Bean的.class文件的名称。
4.4.2 <jsp:setProperty>

JSP基本的语法、3个编译指令、7个动作指令、9个内置对象

JSP基本的语法、3个编译指令、7个动作指令、9个内置对象

JSP基本的语法、3个编译指令、7个动作指令、9个内置对象⽬录⼀、jsp概述JSP是java server page的缩写,其**==本质是⼀个简化的servlet**,是⼀种动态⽹页技术标准。

jsp页⾯是在HTML页⾯中嵌⼊java程序段。

使⽤jsp开发的应⽤程序能够跨平台。

⼆、jsp基本的语法2.1 jsp表达式jsp表达式⽤于向页⾯输出信息。

语法格式例如以下:<%= 表达式 %>如:<%= 5+6 %>注意:<%与=之间不能有空格,=与后⾯的表达式之间能够有空格,另外没有语句结束符号;。

2.2 jsp声明标识声明标识⽤语在jsp页⾯中定义全局的变量或者⽅法,通过声明标识定义的变量和⽅法能够被整个jsp页⾯訪问。

语法格式例如以下:<%!声明变量或者⽅法的代码%>如<%!String str = "test";%>注意:<%与!之间不能有空格,!与其后⾯的代码之间能够有空格。

2.3 jsp代码段代码⽚段就是嵌在jsp页⾯中的java代码或脚本代码。

会在页⾯请求的处理期间被运⾏,java代码能够实现定义变量、流程控制等功能。

脚本代码能够通过使⽤jsp内置对象在jsp页⾯输出内容、处理请求和响应、訪问session等,代码⽚段的语法格式例如以下:<% java代码或者脚本代码 %>2.4 jsp注释2.4.1 HTML注释HTML注释格式:<!-- html凝视 -->html凝视不会显⽰在⽹页中。

在浏览器中查看源代码的时候能够看到注释信息。

2.4.2 代码⽚段注释由于代码⽚段即为java代码或者脚本代码,代码⽚段的注释和java语法⼀样。

单⾏注释写在//之后,多⾏注释写在/* */ 之间,⽂档提⽰注释写在/**与 */之间。

//单⾏注释/*多⾏注释第⼀⾏多⾏注释第⼆⾏*//**⽂档注释*/2.4.3 隐藏注释html注释在查看⽹页源代码的时候能够看到,所以严格来说这样的注释并不安全,jsp提供的隐藏注释在浏览器和查看源代码的时候都看不到。

JSP的学习(3)——语法知识二之page指令

JSP的学习(3)——语法知识二之page指令

JSP的学习(3)——语法知识⼆之page指令 本篇接上⼀篇《》,继续来学习JSP的语法。

本⽂主要从JSP指令中的page指令,对其各个属性进⾏详细的学习:JSP指令: JSP指令是为JSP引擎⽽设计的,JSP指令不产⽣任何可见输出,只是告诉在转换成Servlet的过程中如何处理JSP页⾯中的其余部分。

在JSP 2.0 规范中共定义了三个指令: 1) page指令 2) include指令 3) taglib指令 taglib指令是导⼊标签库的指令,以后会介绍到。

JSP指令格式:<%@指令(如page、include或taglib) 属性1="属性值" 属性2="属性值" … %>例如:<%@page contentType = "text/html;charset=utf-8" %> 如果⼀个指令有多个属性,这多个属性可以写在⼀个指令中,也可以分开写。

例如:1<%@page contentType = "text/html;charset=utf-8" %>2<%@page import = "java.util.Date" %>或者写成: <%@page contentType="text/html;charset=utf-8" import="java.util.Date" %>page指令 page指令⽤于定义JSP页⾯的各种属性,⽆论page指令出现在JSP页⾯中的什么地⽅,它作⽤的都是整个JSP页⾯,为了保持程序的可读性和良好习惯,page指令最好都放置在整个page页⾯的起始位置。

page指令包含以下属性(属性值为⽰例): (1). language = “java ” 指⽰JSP页⾯如果嵌⼊的代码为Java代码。

JSP语法基础

JSP语法基础

JSP语法基础1、JSP基本概念JSP(Java Server Pages,Java服务器页面)是一种Web动态页面技术,JSP是嵌入了Java程序段的HTML 文件,由HTML元素(静态部分)、JSP元素(动态部分)和JSP注释组成。

JSP文件后缀名为.jsp。

JSP运行时会被容器翻译为Servlet源代码(xxx_jsp.java)、自动编译为.class文件(xxx_jsp.class)、载入.class文件,然后生成Servlet对象。

JSP和Servlet一样是服务器端技术,允许运行在Web服务器端。

JSP定义在JavaWeb工程中WebRoot根路径下或其下的某个目录,其访问方式和访问HTML文件一致。

注意:如果JSP文件放在WEB-INF目录中时,不能直接访问,需通过Servlet转发。

JSP在运行时会动态编译成一个Servlet,其本质上是就是一个Servlet,JSP是对Servlet技术的扩展。

Servlet完全由Java程序代码构成,擅长于流程控制和业务逻辑处理,一般用作控制器(Controller);JSP 由HTML元素和JSP元素构成,对页面的静态内容和动态内容进行了有效分离,擅长于内容的展示,一般用作视图(View)。

注:翻译生成的xxx_jsp.java和xxx_jsp.class文件的位置:Tomcat中,在apache-tomcat\work\Catalina目录需;在Eclipse中,在workspace下\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\work\Catalina\localhost\XXX\org\apache\jsp。

2、JSP元素JSP元素包括脚本元素、指令元素和动作元素。

脚本元素(3种)用来声明类成员与方法。

使用<%!与%>声明变量时,必须小心数据共享与线程安全的问题。

chapter2_JSP语法基础

chapter2_JSP语法基础
JSP示例(hello.jsp)
<%@ page contentType="text/html;charset=gb2312" %> <%@ page import="java.util.*"%> <html> <body> <% for ( int i=0; i<2; i++ ) { %> 你好<br> <% } %> </body> </html> <HTML> <BODY> 你好<br> 你好<br> </BODY> </HTML>
15/56

3. JSP指令元素
3.1 Page指令 属性: language="java" 声明脚本语言的种类,目前只能用"java" 。 import="{package.class | package.* },..." 需要导入的Java包的列表,这些包作用于程序段,表达式,以 及声明。下面的包在JSP编译时已经导入了,所以就不需要再 指明了: ng.* javax.servlet.* javax.servlet.jsp.* javax.servlet.http.* 例如: <%@ page import = “java.util.*” %> <%@ page import = “java.sql.*” %> 孙
</h2> </body> </html> Template 文本
孙 丰 伟
Template 文本
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、JSP模版元素
JSP页面中的HTML内容称之为JSP模版元素。

JSP模版元素定义了网页的基本骨架,即定义了页面的结构和外观。

二、JSP表达式
JSP脚本表达式(expression)用于将程序数据输出到客户端
语法:<%= 变量或表达式%>
举例:输出当前系统时间:
1<%= new java.util.Date() %>
JSP引擎在翻译脚本表达式时,会将程序数据转成字符串,然后在相应位置用out.print(…) 将数据输给客户端。

JSP脚本表达式中的变量或表达式后面不能有分号(;)。

三、JSP脚本片断
JSP脚本片断(scriptlet)用于在JSP页面中编写多行Java代码。

语法:
<%
多行java代码
%>
在<% %>中可以定义变量、编写语句,不能定义方法。

范例:在Scriptlet中定义变量、编写语句
1<%2int sum=0;//声明变量34 /*编写语句*/5for (int i=1;i<=100;i++){6
sum+=i;7 }8 out.println("<h1>Sum="+sum+"</h1>");9%>
注意事项:
∙JSP脚本片断中只能出现java代码,不能出现其它模板元素,JSP引擎在翻译JSP页面中,会将JSP脚本片断中的Java代码将被原封不动地放到Servlet的_jspService方法中。

∙JSP脚本片断中的Java代码必须严格遵循Java语法,例如,每执行语句后面必须用分号(;)结束。

∙在一个JSP页面中可以有多个脚本片断,在两个或多个脚本片断之间可以嵌入文本、HTML 标记和其他JSP元素。

举例:
1<%2int x = 10;3 out.println(x);4%>5<p>这是JSP页面文本</p>6<%7int y = 20;8 out.println(y);9%>
多个脚本片断中的代码可以相互访问,犹如将所有的代码放在一对<%%>之中的情况。

如:out.println(x);
单个脚本片断中的Java语句可以是不完整的,但是,多个脚本片断组合后的结果必须是完整的Java语句,例如:
1<%2for (int i=1; i<5; i++) 3
{4%>5<H1>http://localhost:8080/JavaWeb_Jsp_Study_20140603/</H1>6<%7 }8%>
四、JSP声明
JSP页面中编写的所有代码,默认会翻译到servlet的service方法中,而Jsp声明中的java代码被翻译到_jspService方法的外面。

语法:
<%!
java代码
%>
所以,JSP声明可用于定义JSP页面转换成的Servlet程序的静态代码块、成员变量和方法。

多个静态代码块、变量和函数可以定义在一个JSP声明中,也可以分别单独定义在多个JSP声明中。

JSP隐式对象的作用范围仅限于Servlet的_jspService方法,所以在JSP声明中不能使用这些隐式对象。

JSP声明案例:
1<%!2static { 3 System.out.println("loading Servlet!"); 4}5 6privateint globalVar = 0; 7 8public void jspInit(){ 9 System.out.println("initializing jsp!");10 }11%>1213<%!14public void jspDestroy(){15
System.out.println("destroying jsp!");16 }17%>
五、JSP注释
在JSP中,注释有两大类:
显式注释:直接使用HTML风格的注释:<!- -注释内容- ->
隐式注释:直接使用JAVA的注释://、/*……*/
JSP自己的注释:<%- -注释内容- -%>
这三种注释的区别
1<!--这个注释可以看见--> 2 3<% 4 //JAVA中的单行注释 5 6 /* 7 JAVA中的多行注释 8 */ 9%>1011<%--JSP自己的注释--%>
HTML的注释在浏览器中查看源文件的时候是可以看得到的,而JAVA注释和JSP注释在浏览器中查看源文件时是看不到注释的内容的,这就是这三种注释的区别。

相关文档
最新文档