<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 閱讀(139) 評論(0)  編輯  收藏

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


    網站導航:
     
    主站蜘蛛池模板: 国产精品亚洲а∨天堂2021| 亚洲精品无码AV中文字幕电影网站| 激情综合色五月丁香六月亚洲| 国产精品亚洲综合网站| 黄页网站在线免费观看| 亚洲小说区图片区| 亚洲成人激情小说| 高潮毛片无遮挡高清免费视频| 在线免费观看视频你懂的| 免费A级毛片无码A| 亚洲av日韩av不卡在线观看 | 亚洲不卡在线观看| 337P日本欧洲亚洲大胆艺术图| 99re6在线视频精品免费| 13一14周岁毛片免费| 免费的一级片网站| 国产亚洲精品观看91在线| 国产色在线|亚洲| 人人玩人人添人人澡免费| 成人超污免费网站在线看| 亚洲日韩精品射精日| 美女黄网站人色视频免费| 亚洲精品国产综合久久一线| 两个人看的www高清免费视频| 亚洲精品在线观看视频| 在线91精品亚洲网站精品成人| 亚洲成a人无码av波多野按摩| 亚洲中文久久精品无码1 | 午夜毛片不卡高清免费| 美女黄频免费网站| 久久精品国产69国产精品亚洲| 黄色一级毛片免费看| 国产亚洲精久久久久久无码| **毛片免费观看久久精品| 亚洲av成人一区二区三区观看在线| 亚洲成人在线免费观看| 亚洲国产精品嫩草影院| 日本zzzzwww大片免费| 久久国产亚洲观看| 天天摸夜夜摸成人免费视频 | 在线免费观看你懂的|