标题：Core标签库
通用标签
用于将表达式的结果输出到当前的JspWriter对象中。
<c:out>
<c:out>标签用于在JSP中显示数据，它有如下属性 属 性 描 述 是否必须 缺省值
value 输出的信息，可以是EL表达式或常量 是 无 
default value为空时显示信息 否 无 
escapeXml 为true则避开特殊的xml字符集 否 true 
例子: 您的用户名是: <c:out value=”” default=”guest”/> 
显示用户的用户名，如为空则显示guest
<c:out value=""/> 
指定从session中获取username的值显示；
<c:out value="" /> 
显示username的值，默认是从request(page)中取，如果request中没有名为username的对象则从session中取， session中没有则从application(servletContext)中取，如果没有取到任何值则不显示。
<c:set>
<c:set>标签用于保存数据，它有如下属性 属 性 描 述 是否必须 缺省值
value 要保存的信息，可以是EL表达式或常量 否 
target 需要修改属性的变量名，一般为javabean的实例 否 无 
property 需要修改的javabean属性 否 无 
var 需要保存信息的变量 否 无 
scope 保存信息的变量的范围 否 page 
如果指定了target属性, 那么property属性也必须指定。
例子： <c:set value="" var="test2" scope=”session” /> 
将test.testinfo的值保存到session的test2中，其中test是一个javabean的实例，testinfo是test对象的属性。
<c:set target="" property="city" value=""/> 
将对象cust.address的city属性值保存到变量city中
<c:remove>
<c:remove>标签用于删除数据，它有如下属性 属 性 描 述 是否必须 缺省值
var 要删除的变量 是 无 
scope 被删除变量的范围 否 所有范围，包括page、request、session、application等 
例子: <c:remove var="test2" scope="session"/> 
从session中删除test2变量。
流控制标签
<c:if>
<c:if>标签有如下属性 属 性 描 述 是否必须 缺省值 
test 需要评价的条件，相当于if (...){}语句中的条件 是 无 
var 要求保存条件结果的变量名 否 无 
scope 保存条件结果的变量范围 否 page 
<c:choose>
这个标签不接受任何属性
<c:when>
<c:when>标签有以下属性 属 性 描 述 是否必须 缺省值 
test 需要评价的条件 是 无 
<c:otherwise>
这个标签同样不接受任何属性
例子： <c:if test="">
user.wealthy is true.
</c:if> 
如果user.wealthy值true，则显示user.wealthy is true.
<c:choose>
<c:when test="">
user.generous　is true.
</c:when> 
<c:when test="">
user.stingy is true.
</c:when>
<c:otherwise>
user.generous and user.stingy are false.
</c:otherwise>
</c:choose> 
只有当条件user.generous返回值是true时，才显示user.generous　is true.
只有当条件user.stingy返回值是true时，才显示user.stingy　is true.
其它所有的情况（即user.generous和user.stingy的值都不为true）全部显示user.generous and user.stingy are false.
由于JSTL没有形如if (){…} else {…}的条件语句，所以这种形式的语句只能用<c:choose>、<c:when>和<c:otherwise>标签共同来完成了。
循环控制标签
<c:forEach>
<c:forEach>标签用于通用数据，它有以下属性 属 性 描 述 是否必须 缺省值 
items 进行循环的项目 否 无 
begin 开始条件 否 0 
end 结束条件 否 集合中的最后一个项目 
step 步长 否 1 
var 代表当前项目的变量名 否 无 
varStatus 显示循环状态的变量 否 无 
例子： <c:forEach items="" var="vector">
<c:out value=""/>
</c:forEach> 
相当于java语句 for (int i=0;i<vectors.size();i++) {
out.println(vectors.get(i));
} 
在这里vectors是一个java.util.Vector对象，里面存放的是String数据，vector是当前循环条件下String对象。实际上这里的vectors可以是任何实现了java.util. Collection接口的对象。 
<c:forEach begin="0" end="100" var="i" step="1">
count=<c:out value=""/><br>
</c:forEach>
输出:
count=0
...
count=100
<c:forTokens>
<c:forTokens>标签有以下属性 属 性 描 述 是否必须 缺省值 
items 进行循环的项目 是 无 
delims 分割符 是 无 
begin 开始条件 否 0 
end 结束条件 否 集合中的最后一个项目 
step 步长 否 1 
var 代表当前项目的变量名 否 无 
varStatus 显示循环状态的变量 否 无 
例子 
<c:forTokens items="a:b:c:d" delims=":" var="token">
<c:out value=""/>
</c:forTokens>
这个标签的使用相当于java.util.StringTokenizer类。在这里将字符串a:b:c:d以：分开循环四次，token是循环到当前分割到的字符串。
导入文件和URL
JSTL核心标签库支持使用<c:import>来包含文件，使用<c:url>来打印和格式化URL,使用<c:redirect>来重定向URL。
<c:import>
<c:import>标签包含另外一个页面代码到当前页，它有以下属性 属 性 描 述 是否必须 缺省值 
url 需要导入页面的url 是 无 
context /后跟本地web应用程序的名字 否 当前应用程序 
charEncoding 用于导入数据的字符集 否 ISO-8859-1 
var 接受导入文本的变量名 否 page 
scope 接受导入文本的变量的变量范围 否 1 
varReader 用于接受导入文本的java.io.Reader变量名 否 无 
varStatus 显示循环状态的变量 否 无 
<c:url>
<c:url>标签输出一个url地址，它有以下属性 属 性 描 述 是否必须 缺省值 
url url地址 是 无 
context /后跟本地web应用程序的名字 否 当前应用程序 
charEncoding 用于导入数据的字符集 否 ISO-8859-1 
var 接受处理过的url变量名，该变量存储url 否 输出到页 
scope 存储url的变量名的变量范围 否 page 
例子： 
<c:param>标签用来传递参数给一个重定向或包含页面，它有以下属性 属 性 描 述 是否必须 缺省值 
name 在request参数中设置的变量名 是 无 
value 在request参数中设置的变量值 否 无 
例子： 
<c:redirect url="login.jsp">
<c:param name="id" value="888"/>
</c:redirect>
将参数888以id为名字传递到login.jsp页面，相当于login.jsp?id=888