一、JSP简介
JSP(Java Sever Pages):是为了能让 Java 在 Web 页面运行的一种语言。
在JSP中包括两种主要内容:
1. HTML、JS语言(静态内容)。由客户端浏览器负责执行。
2. Java 程序及其相关元素。包括 Java程序片、表达式、JSP指令与动作标签以及 Java变量、方法和类的声明(动态内容)。由服务器负责执行。
二、JSP基础指令
1. 在JSP中,在 ‘<%‘ 与 ‘%>‘ 之间书写Java程序
<% Java 程序 %>
一个JSP页面中可以有多个Java程序片,在Java程序片中声明的变量在它们所在的JSP页面所有程序片及表达式中都有效,故可将一个较大的程序片分成几个小的程序片。
注:在程序片中声明的变量只在页面有效,是局部变量。它在不同客户端访问同一个页面时是不能共享的。
2. 在 ‘<%!‘ 与 ‘!%>‘ 之间声明的变量其有效范围是整个Web应用,在服务器关闭后变量才会被释放。
3. 用 ‘<%=‘ 与 ‘%>‘可以直接输出变量或表达式的值。
4. 注释:<%--注释内容--%>
三、JSP中的Page指令
Page指令用于定义JSP文件中的全局属性,一般放在页面首部。
<%@ page contentType="text/html; charset=gb2312" %>
如果一个属性有多个值就用逗号隔开,在Page指令中也只有import属性可以指定多个值,它用力导入一些程序中要用到的包和类。
<%@ page import="java.util.*","java.awt.*" %>
Page常用属性(下面只提到两个,其余可自行百度)
1. language:定义页面使用的脚本语言,默认值为Java,编写JSP可不必设置
2. import:用来导入程序中要用到的包和类
四、JSP中的include指令
include指令用来在该指令处静态插入一个文件。它只是把文件代码与本文件组合起来形成一个大的程序文件。
<%@ include file="文件路径" %>
路径如果以‘/‘开头,则表明使用的是相对于JSP服务器应用的根目录;若直接用文件名,则为相对本JSP文件当前目录的相对路径。
五、JSP动作指令(引入)
<jsp: include page="文件路径" /> 不传递参数时 注意单标签闭合
<jsp: include page="文件路径"> 传递参数,且传入的文件必须是动态的
<jsp: param name="参数1" value="参数1的值" />
<jsp: param name="参数n" value="参数n的值" />
</jsp: include>
六、JSP中的JSTL
JSTL是开源的标准标签库,简化类JSP和Web程序开发,统一了开发接口,能方便地在各种服务器之间进行移植。
例如:国际化处理标签库 fmt /核心标签库 c
当要使用不同当标签库中的JSTL标签时,需要在JSP页面的首部加入如下的语句:
<%@ taglib prefix="标签库使用时的前缀" uri="标签库的URI" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jsl/core" %>
下面简要列出 核心标签库 c 的常用语句
1. <c: import url=".." /> 或者<c: import> ... </c: import> 引入其他静态/动态文件
2. <c: param name="参数名" value="参数值" /> 用于向导入的页面中传入参数
3. <c: url value="生成的url" /> 用于生成一个URL
<c: url value="value">
[<c: param > 子标签]
</c: url>
4. <c: redirect url="URL" /> 用于把客户端发来的请求重定向到另一个页面
<c: redirect url="value">
[<c: param > 子标签]
</c: redirect>
5. <c:forEach items="${ totaNamel }" var="itemName" />