首先,使用JSTL表达式,需要导入两个jar包,放在web工程MEB-INF下的lib目录下,两个Jar包分别是:jstl.jar和standard.jar
然后在Jsp页面中加入这句:<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>,其中uri的值是在standard.jar的MEB-INF下c.tld文件里面。
prefix是给JSTL标签起一个前缀,这个值可以随便取
一、简单实用EL表达式:
<%
String data="my data";
request.setAttribute("data",data);
%>
${data } <%--pageContext.findAttribute("data") page request session application --%>
<br/>
<%
Person p=new Person();
p.setName("namenamename");
request.setAttribute("p",p);
%>
${p.name }
<%
Person p1=new Person();
Address a=new Address();
a.setCity("huang gang");
p1.setAddress(a);
request.setAttribute("p1",p1);
%>
${p1.address.city }
<%
List list=new ArrayList();
list.add(new Address("上海"));
list.add(new Address("北京2"));
list.add(new Address("武汉"));
request.setAttribute("list",list);
%>
${list[1].city } <%--北京2 --%>
<%
Map map=new HashMap();
map.put("aa",new Address("上海"));
map.put("bb",new Address("北京2"));
map.put("cc",new Address("武汉"));
map.put("111",new Address("南京"));
request.setAttribute("map",map);
%>
${map.aa.city } <%--上海 --%>
${map["111"].city } <%--如果id是数字 ,通常取不出来,用[]来取--%>
${pageContext.request.contextPath }<%--/day09 --%>
<a href=" ${pageContext.request.contextPath }/index.jsp">点击</a>
二、简单实用JSTl举例:
<%
List list=new ArrayList();
list.add(new Address("上海"));
list.add(new Address("北京2"));
list.add(new Address("武汉"));
request.setAttribute("list",list);
%>
<c:forEach var="a" items="${list}">
${a.city}
</c:forEach>
<%
Map map=new HashMap();
map.put("aa",new Address("上海"));
map.put("bb",new Address("北京2"));
map.put("cc",new Address("武汉"));
map.put("111",new Address("南京"));
request.setAttribute("map",map);
%>
<c:forEach var="b" items="${map }">
${b.key } : ${b.value.city } <br/>
</c:forEach>
<c:if test="${user!=null }">
欢迎
</c:if>
<c:if test="${user==null }">
请登录
</c:if>