
第一步:创建JavaWeb工程
第二步:创建jsp页面
第三步:在JSP页面中编写代码
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
EL表达式入门案例
<%--使用java代码在请求域中存入一个名称为message的数据--%>
<% request.setAttribute("message","expression Language");%>
Java代码块获取:<% out.print(request.getAttribute("message"));%>
JSP表达式获取:<%=request.getAttribute("message")%>
EL表达式获取:${message}
第四步:部署工程
第五步:运行测试
EL表达式的注意事项
在使用EL表达式时,它帮我们做了一些处理,使我们在使用时可以避免一些错误。它没有空指针异常,没有数组下标越界,没有字符串拼接。
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
EL表达式的注意事项
<%--EL表达式的三个没有--%>
第一个:没有空指针异常
<% String str = null;
request.setAttribute("testNull",str);
%>
${testNull}
第二个:没有数组下标越界
<% String[] strs = new String[]{"a","b","c"};
request.setAttribute("strs",strs);
%>
取第一个元素:${strs[0]}
取第六个元素:${strs[5]}
第三个:没有字符串拼接
<%--${strs[0]+strs[1]}--%>
${strs[0]}+${strs[1]}
EL表达式的使用细节
EL表达式除了能在四大域中获取数据,同时它可以访问其他隐式对象,并且访问对象有返回值的方法.
4)EL表达式的运算符
EL表达式中运算符如下图所示,它们都是一目了然的:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <%@ page import="com.itheima.domain.User" %>JSTL概述EL两个特殊的运算符 <%--empty运算符: 它会判断:对象是否为null,字符串是否为空字符串,集合中元素是否是0个 --%> <% String str = null; String str1 = ""; Listslist = new ArrayList (); pageContext.setAttribute("str", str); pageContext.setAttribute("str1", str1); pageContext.setAttribute("slist", slist); %> ${empty str}============当对象为null返回true
${empty str1 }==========当字符串为空字符串是返回true(注意:它不会调用trim()方法)
${empty slist}==========当集合中的元素是0个时,是true
<%--三元运算符 条件?真:假 --%> <% request.setAttribute("gender", "female"); %> 男 女
JSTL的全称是:JSP Standard Tag Libary。它是JSP中标准的标签库。它是由Apache实现的。
使用要求
要想使用JSTL标签库,在javaweb工程中需要导入坐标。首先是在工程的WEB-INF目录中创建一个lib目录,接下来把jstl的jar拷贝到lib目录中,最后在jar包上点击右键,然后选择【Add as Libary】添加。如下图所示
JSTL使用
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%--导入jstl标签库 --%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
JSTL的常用标签
<%-- c:if c:choose c:when c:otherwise --%>
<% pageContext.setAttribute("score","F"); %>
优秀
一般
AAA
BBB
CCC
DDD
其他
<%-- c:forEach 它是用来遍历集合的
属性:
items:要遍历的集合,它可以是EL表达式取出来的
var:把当前遍历的元素放入指定的page域中。 var的取值就是key,当前遍历的元素就是value
注意:它不能支持EL表达式,只能是字符串常量
begin:开始遍历的索引
end:结束遍历的索引
step:步长。i+=step
varStatus:它是一个计数器对象。里面有两个属性,一个是用于记录索引。一个是用于计数。
索引是从0开始。计数是从1开始
--%>
<% List list = new ArrayList();
list.add("AAA");
list.add("BBB");
list.add("CCC");
list.add("DDD");
list.add("EEE");
list.add("FFF");
list.add("GGG");
list.add("HHH");
list.add("III");
list.add("JJJ");
list.add("KKK");
list.add("LLL");
pageContext.setAttribute("list",list);
%>
${s}
${num}
索引
序号
信息
${vs.index}
${vs.count}
${s}
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)