`

jstl教程

    博客分类:
  • jstl
阅读更多

本文以jstl 1.1为参考

1:下载jstl1.1 http://jakarta.apache.org/site/downloads/downloads_taglibs-standard.cgi

2:在jsp页面中声明 <%@taglib prefix="c" uri="WEB-INF/c.tld"%>

(这里引入的是core核心库,其他库这里暂不介绍)

3:基本操作

 

一;循环

 

<c:forEach items="${map}" var="entry" begin="0">

</c:forEach >

  items 进行循环的项目
  begin 从第几项开始进行循环
  end     第几项结束循环
 step 步长 否 1
 var 代表当前项目的变量名
 varStatus 


  ====================demo1:遍历Map==================

 

java代码

   Map map = new HashMap();
	   map.put("key1", "value1");
	   map.put("key2", "value1");
	   request.setAttribute("map",map);

  jsp页面

<c:forEach items="${map}" var="entry">
			<c:out value="${entry.key}" />
			:
			<c:out value="${entry.value}" />
			<br>
		</c:forEach>

===================demo2:遍历对象Map==================

 

javaBran :User

public class User {
	private String username;

	public String getUsername() {
		return username;
	}

	public void setUsername(String username) {
		this.username = username;
	}

}

 核心代码:

Map map = new HashMap();
	   User user1 = new User();
	   user1.setUsername("zhangsan");
	   User user2 = new User();
	   user2.setUsername("lisi");
	   map.put("key1", user1);
	   map.put("key2", user2);
	   request.setAttribute("map",map);

 jsp页面

<c:forEach items="${map}" var="entry">
			<c:out value="${entry.key}" />
			:
			<c:out value="${entry.value.username}" />
			<br>
		</c:forEach>

  =================demo3:遍历对象集合==================

 

javaBran :User

public class User {
	private String username;

	public String getUsername() {
		return username;
	}

	public void setUsername(String username) {
		this.username = username;
	}

}

  核心代码:

	List list = new ArrayList();
		User user1 = new User();
		user1.setUsername("zhangsan");
		User user2 = new User();
		user2.setUsername("lisi");
		list.add(user1);
		list.add(user2);

		request.setAttribute("list", list);

  jsp页面

<c:forEach items="${list}" var="entry">
			
			<c:out value="${entry.username}" />
			<br>
		</c:forEach>
 

 

4.附:el表达式基本操作


二;判断

1 .if语句(jstl中无if...else语句,可用2过if语句完成同样的效果)

支持判断符 > < == gt it 等

demo1

if(3>2){
System.out.println("hello wrod");
}
   
<c:if test="${3>2}">

<c:out value="hello wrod"/>
</c:if>

  demo2

String name = "tom";

 if(name.eques("tom")){
System.out.println("hello .tom");
} 
session.setArratre("username",name);
 
<c:if test="${sessionScope.username=='tom'}">

<c:out value="hello tom"/>
</c:if>

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics