1. JSP
1.1 JSP简介
JSP是SUN公司提供的动态网页编程技术,是JavaWeb服务器端的动态资源
与html只能提供静态资源相比,JSP能为用户提供动态资源。允许嵌套Java代码
1.2 JSP的指令标签
a.静态标签:
<%@ include file="要包含的文件路径" %> <!-- 相对路径-->
b.动态标签:
<jsp:include page="include.jsp"></jsp:include>
1.3 JSP的四大域对象
属性 | 特点 |
---|---|
Page | 只在一个页面中保存属性 |
request | 只在一次请求中保存,服务器跳转后依然有效 |
session | 在一次会话范围中,无论何种跳转都可以使用 |
application | 在整个服务器上保存 |
2. EL表达式
2.1 EL语法结构
${expression}
EL操作的是域对象,不能操作局部变量
域对象的概念在 JSP 中一共有四个:pageContext, request, session, application;
范围依次是,本页面,一次请求, 一次会话,整个应用程序
2.2 EL表达式的使用
获取List
<%
List<String> list = new ArrayList<String>();
list.add("aaa");
list.add("bbb");
list.add("ccc");
request.setAttribute("list", list);
%>
<%--
获取List中指定下标的数据
${list[下标] }
获取集合的长度
${list.size()}
注:
list代表的是存在域对象中的变量名(限域变量名)
--%>
${list[1] }
获取Map
<%
Map map = new HashMap();
map.put("aaa", "111");
map.put("bbb", 2222);
map.put("ccc-a", 333);
request.setAttribute("map", map);
%>
<%
${map.key}
${map["key"]}
%>
获取JavaBean对象
user.java
<%
User user = new User();
user.setUserId(1);
user.setUname("zhangsan");
user.setUpwd("123456");
request.setAttribute("user",user);
%>
<%-- JavBean中的属性字段需要提供get方法 --%>
${user} <%-- 获取对象 --%>
${user.uname} <%--获取对象中的属性--%>
3. JSTL
3.1 标签的使用
JSP 标准标签库, 是一个定制标签类库的集合,用于解决一些常见的问题,例如迭代 一个映射或者集合、条件测试、XML处理,甚至数据库和访问数据 库操作等。
if标签
<c:if test="<boolean>" var="<string>" scope="<string>">
...
</c:if>
forEach标签
<c:forEach
items="<object>"
begin="<int>"
end="<int>"
step="<int>"
var="<string>"
varStatus="<string>">
</c:forEach>