<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 495,  comments - 11,  trackbacks - 0

    下面以一個簡單的示例來幫助讀者理解OGNL表達式。使用OGNL表達式,需要在www.ognl.org網站下載一個ognl.jar插件包,將該文件復制到classpath路徑下即可。建立一個復合類型,如代碼8.1所示。

    代碼8.1定義復合類型

    package ch8;
    import java.util.Date;
    //
    團隊類
    public class Team {
    //
    團隊名稱
    private String teamname;
    //
    定義團隊人員屬性
    private Person person;
    //
    團隊人數
    private int personnum;
    //
    屬性的gettersetter方法
    public String getTeamname() {
    return teamname;
    }
    public void setTeamname(String teamname) {
    this.teamname = teamname;
    }
    public Person getPerson() {
    return person;
    }
    public void setPerson(Person person) {
    this.person = person;
    }
    public int getPersonnum() {
    return personnum;
    }
    public void setPersonnum(int personnum) {
    this.personnum = personnum;
    }
    }
    //
    定義人員類
    class Person {
    //
    姓名
    private String name;
    //
    年齡
    private int age;
    //
    人員出生日期
    private Date birthday;
    //
    屬性的gettersetter方法
    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 Date getBirthday() {
    return birthday;
    }
    public void setBirthday(Date birthday) {
    this.birthday = birthday;
    }
    }

    代碼8.1所示內容定義了兩個復合類型:團隊(team)和人員(person)類型。使用OGNL表達式示例,如代碼8.2所示。

    代碼8.2使用OGNL表達式示例

    package ch8;
    import java.util.HashMap;
    import java.util.Map;
    import ognl.Ognl;
    import ognl.OgnlException;
    public class TestOGNL {
    public static void main(String[] args) {
    //
    定義一個Map對象
    Map m = new HashMap();
    //
    定義一個Team對象
    Team team1 = new Team();
    team1.setTeamname("
    團隊1");
    //
    定義一個Person對象
    Person person1 = new Person();
    person1.setName("pla1");
    //
    添加team元素
    team1.setPerson(person1);
    //
    定義一個Team對象
    Team team2 = new Team();
    team2.setTeamname("
    團隊2");
    //
    定義一個Person對象
    Person person2 = new Person();
    person2.setName("pla2");
    //
    添加team元素
    team2.setPerson(person2);

    //
    添加Map元素
    m.put("team1", team1);
    m.put("team2", team2);
    try {
    System.out.println(Ognl.getValue("team1.teamname", m));
    System.out.println(Ognl.getValue("team2.person.name", m));
    System.out.println(Ognl.getValue("teamname", team2));
    System.out.println(Ognl.getValue("person.name", team2));
    } catch (OgnlException e) {
    }
    }
    }


    代碼8.2所示內容定義了一個Map類型的嵌套屬性,如圖8.1所示。

    ??

    8.1嵌套屬性示意圖

    運行該示例,控制器顯示如下信息:

    團隊1
    pla2
    團隊2
    pla2

    說明

    OGNL可以使用非常簡單的表達式來訪問多層嵌套屬性,為開發者提供了一個有力的工具。

    posted on 2009-08-13 14:25 jadmin 閱讀(135) 評論(0)  編輯  收藏

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 好紧我太爽了视频免费国产| 亚洲AV永久无码精品一福利| 巨胸喷奶水www永久免费| 国产乱色精品成人免费视频 | 成人au免费视频影院| 亚洲av日韩av无码av| 免费一本色道久久一区| 亚洲色偷精品一区二区三区| 免费电影在线观看网站| 亚洲最大中文字幕无码网站| 日韩一区二区免费视频| 香蕉视频免费在线| 亚洲综合亚洲综合网成人| 两个人日本WWW免费版| 夜夜亚洲天天久久| 国产免费久久精品99re丫y| 亚洲国产精品99久久久久久| yy6080久久亚洲精品| eeuss影院ss奇兵免费com| 亚洲AV无码乱码在线观看裸奔| 99re视频精品全部免费| 亚洲一区二区三区在线| 暖暖免费高清日本中文| yellow视频免费看| 亚洲视频精品在线观看| 在线精品免费视频| 两个人的视频www免费| 亚洲小说图片视频| 国产一级特黄高清免费大片| 黄 色一级 成 人网站免费| 亚洲黄网站wwwwww| 最好免费观看韩国+日本| caoporn国产精品免费| 亚洲白嫩在线观看| 波多野结衣免费视频观看| 免费久久人人爽人人爽av | 国产亚洲一卡2卡3卡4卡新区| 亚洲综合AV在线在线播放| 毛片免费在线视频| 少妇性饥渴无码A区免费| 亚洲成a人片在线观看天堂无码|