在jsp页面中获取数据,在JSP页面可使用${标识符}的形式,利用$调用servlet中的PageConnect.findAttribute()方法从各个对象中获取对象。如果有东西返回所对应的对象,否则返回位空null。
例1.
<%
String data = "dadsad";
request.setAttribute("data", data);
%>
${data }
jsp打开显示是 dadsad
例2.在JavaBean中调用service
java代码:
1.
package second;
public class Address {
private Stringcity;
public String getCity() {
return city;
}
public void setCity(Stringcity) {
this.city =city;
}
}
2.
package second;
public class Person {
private Stringname="单成";
private int age=2;
private Addressaddress;
public Address getAddress() {
return address;
}
public void setAddress(Addressaddress) {
this.address =address;
}
public String getName() {
return name;
}
public void setName(Stringname) {
this.name =name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age =age;
}
}
jsp代码:
1.
<%
Person p = new Person();
p.setName("aaaa");
request.setAttribute("person", p);
%>
${person.name }<%-- pageContext.findAttribute("person") page request session application --%>
<br/>
<%
Person p1 = new Person();
Address a = new Address();
a.setCity("上海");
p1.setAddress(a);
request.setAttribute("p1",p1);
%>
${p1.address.city }
结果为:
aaaa
上海
2.
<%
list list =new ArrayList();
list.add(new Person("aaa"));
list.add(new Person("bbb"));
list.add(new Person("ccc"));
request.setAttribute("list",list);
%>
${list[0].name }
结果为:aaa
3.
<%
map map =new HashMap();
map.put("aa",new Person("aaaaa"));
map.put("bb",new Person("bbbbb"));
map.put("cc",new Person("ccccc"));
map.put("dd",new Person("ddddd"));
map.put("111",new Person("eeeee"));
request.setAttribute("map",map);
%>
${map.bb.name }
${map['111'].name }<%-- 用el表达式在去数据时,通常用.(点)号,如果用.(点)好取不出来时,用[] --%>
结果为:bbbbb eeeee
${pageContext.request.contextPath } 动态获得当前Web的路径