标签:个数 inf array try turn java test meta jstl标签库
一、bean封装
public class Person {
	private String name="张三";
	private int age;
	private Date birthday;
	private Address addr;
	
	
	public Person() {
		super();
	}
	public Person(String name) {
		super();
		this.name = name;
	}
	public Address getAddr() {
		return addr;
	}
	public void setAddr(Address addr) {
		this.addr = addr;
	}
	public Date getBirthday() {
		return birthday;
	}
	public void setBirthday(Date birthday) {
		this.birthday = birthday;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public int getAge() {
		return age;
	}
	public void setAge(int age) {
		this.age = age;
	}
}
public class Address {
	private String city;
	public String getCity() {
		return city;
	}
	public void setCity(String city) {
		this.city = city;
	}
}
二、el表达式显示(模拟数据库)
<body>
	<!-- 普通方式传递数据 -->
	<%
		String data="abcd";
		request.setAttribute("data",data);
	%>
	
	${data}  <%-- pageContext.findAttribute("data") --%>
	</br>
	
	<!-- 数据从bean带过来 -->
	<%
		Person p=new Person();
		p.setName("张三");
		request.setAttribute("person",p);
	%>
	
	${person.name}
	</br>
	
	<!-- 数据从复杂bean带过来 -->
	<%
		Person p1=new Person();
		Address a=new Address();
		a.setCity("上海");
		p1.setAddr(a);
		
		request.setAttribute("p1",p1);
	%>
	
	${p1.addr.city}
	</br>
	
	<!-- 产生多个数据 -->
	<%
		List list=new ArrayList();
		list.add(new Person("aa"));
		list.add(new Person("bb"));
		list.add(new Person("cc"));
		
		request.setAttribute("list",list);
	%>
	
	${list[1].name}
	</br>
	<%
		Map map=new HashMap();
		map.put("aaa",new Person("a"));
		map.put("bbb",new Person("b"));
		map.put("ccc",new Person("c"));
		map.put("ddd",new Person("d"));
		request.setAttribute("map",map);
	%>
	
	${map.aaa.name}
	</br>
	
	<!-- 获取当前web应用的名字 -->
	${pageContext.request.contextPath }
	<a href="${pageContext.request.contextPath }/2.jsp">点击我</a>
	
</body>
三、使用jstl+el完成集合迭代
在页面中使用JSTL标签需要完成的两个步骤:
1)导入jstl.jar和standard.jar这两个jar包
2)在JSP页面中使用<%@tablib url="" prefix="" %>元素导入标签库 (uri standard.jar -> meta-inf -> c.tlduri standard.jar -> meta-inf -> c.tld)
JSTL标签库中常用标签:
  <c:foreach var="" items="">
  <c:if test="">
<body>
	<%
		List list=new ArrayList();
		list.add(new Person("aa"));
		list.add(new Person("bb"));
		list.add(new Person("cc"));
		
		request.setAttribute("list",list);
	%>
	<c:forEach var="person" items="${list}">
		${person.name }</br>
	</c:forEach>
	</br>
	
	
	<%
		Map map=new HashMap();
		map.put("aaa",new Person("aaa"));
		map.put("bbb",new Person("bbb"));
		map.put("ccc",new Person("ccc"));
		map.put("ddd",new Person("ddd"));
		request.setAttribute("map",map);
	%>
	<c:forEach items="${map}" var="entry">
		${entry.key}:${entry.value.name} </br>
	</c:forEach>
	
	</br>
	
	<!-- 代表用户登陆了 -->
	<c:if test="${user!=null}">
		欢迎您:${user.username}
	</c:if>
	
	<c:if test="${user=null}">
		用户名:<input type="text"/>
		密  码:<input type="password"/>
	</c:if>
</body>
标签:个数 inf array try turn java test meta jstl标签库
原文地址:http://www.cnblogs.com/syj1993/p/7257790.html