现在的位置: 首页 > 综合 > 正文

在JSP中使用EL获取Javabean的属性值

2014年08月19日 ⁄ 综合 ⁄ 共 1694字 ⁄ 字号 评论关闭

首先,有如下的javaben文件:

package com.wrox.begjsp.ch5;

import java.beans.*;
import java.util.*;


public class NewsFeed extends Object implements java.io.Serializable {
    
    private String topic;
    
    private String value;
    
    private HashMap values;
    
    public NewsFeed() {

    }
    
    
    public void setTopic(String topic) {
        value = "";
        values = null;
        if (topic.equals("news"))  {
            value = "JSP Programmer Won 10 Million in Lottery";
        }
        if (topic.equals("entertainment")) {
            value = "Reality TV Show Ratings Falling";
        }
        if (topic.equals("weather")){
            values = new HashMap();
            values.put("Mumbai", "30 C");
            values.put("Tokyo", "18 C");
            values.put("Hong Kong", "28 C");

            
        }
        
    }
    
    public String getValue() {
        return this.value;
    }
    
    public Map getValues() {
        return this.values;
    }
    
}

我们要在JSP页面中获取该javabean的属性:有如下jsp页面

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

<jsp:useBean id="newsfeed" class="com.wrox.begjsp.ch5.NewsFeed" scope="page" />


<html>
<head>
<title>EL Property Access and Nested Properties Examples</title>
</head>
<body>
<h1>EL Property Access and Nested Properties Examples</h1>

<jsp:setProperty name="newsfeed"  property="topic" value="news"/>
News headline is <b>${newsfeed.value}</b>.<br/>

<jsp:setProperty name="newsfeed"  property="topic" value="entertainment"/>
Entertainment headline is <b>${newsfeed["value"]}</b>.<br/>

<jsp:setProperty name="newsfeed"  property="topic" value="weather"/>

The weather in Tokyo right now is ${newsfeed.values.Tokyo}.<br/>
The weather in Mumbai right now is ${newsfeed["values"].Mumbai}.<br/>
The weather in Hong Kong right now is ${newsfeed.values["Hong Kong"]}.<br/>

</body>
</html>

操作过程如下:

1)在JSP页面中声明所使用的JAVABEN

<jsp:useBean id="newsfeed" class="com.wrox.begjsp.ch5.NewsFeed" scope="page" />

2)  使用<jsp:setProperty>设订javaben某个属性的值

<jsp:setProperty name="newsfeed"  property="topic" value="news"/>

3)是用EL表达式获取JAVABEAN的属性值

News headline is <b>${newsfeed.value}</b>.<br/>

抱歉!评论已关闭.