JSP
Java Server Page 由SUN公司提供的动态网页编程技术,是Java Web服务器端的动态资源
基础语法
注释
//单行注释 /*多行注释*/
<!--HTML风格的注释-->
<%--JSP注释--%>
Scriptlet
所有嵌入在HTML代码中的Java程序都必须使用Scriptlet标记出来
<% %>
可以定义局部变量,编写java代码
<!% %>
可以定义全局变量,方法,类
<%= %>
显示一个变量和具体内容
JSP指令标签
MIME类型
<%@ page contentType="text/html;charset=UTF-8"%>
文件字符标识
<%@ page contentType="text/html" pageEncoding="UTF-8" %>
导包
<%@ page import="java.util.*" import="java.io.*"%>
注(在整个page指令的属性中,只有import可以多次出现,其它属性只能设置一次)
包含
静态包含
<%@include file="xxx.jsp"%>
动态包含
<jsp:include page="xxx.jsp"></jsp:include>
导入标签库
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
动作标签
<jsp:动作标签></jsp:动作标签>
内置对象
request
得到用户请求信息
response
服务器向客户端响应信息
session
保存每一个用户的信息
application
所有用户共享的信息
out
页面输出
pagContext
JSP页面容器
config
服务器参数,获取初始化信息
page
从该页面中表示出来的sevlet实例
exception
表示JSP页面发生的异常,在错误页中才起作用
EL表达式
EL语法
${expressio}
判断是否有元素
${empty xxx}
List
判断是否为空
${empty list}
取值
${list[i]}
获取长度
${list.size()}
Map
判断是否为空
${ empty map}
取值map对象
${map}
获取KEY对应的值
${map.key}
${map["key"]}
JSTL
Java Server Pages Standard Tag Libray(JSP标准标签库)
导入jar包
<%@taglib uri="http://java.sun.com/sp/stl/core" prefix="c"%>
条件动作标签
if标签
没有主体
<c:if test="${ }" var=""></c:if>
有主体
<c:if test="${ }">
body
</c:if>
choose/when/otherwise标签
<c:choose>
<c:when test=“testCondition”>body</c:when>
<c:when test=“testCondition”>body</c:when>
…
<c:otherwise>body</c:otherwise>
</c:choose>
迭代标签
forEach
<c:forEach [var=“varName”] begin=“begin” end=“end” step=“step”>
body content
</c:forEach>
格式化动作指令
formatNumber
有主体
<fmt:formatNumber value="" type=""/>
没有主体
<fmt:formatNumber type="">
value值
</fmt:formatNumber>
formatDate
parseNumber
有主体
<fmt:parseNumber var="" type=“number” value=""/>
没有主体
<fmt:formatNumber type=“number”>
</fmt:formatNumber>
parseDate
有主体
<fmt:formatDate var=“parseDate” pattern=“yyyy-MM-dd”/>
没有主体
<fmt:formatDate var=“parseDate”>
${ }
</fmt:formatDate>