<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網(wǎng)站下載一個ognl.jar插件包,將該文件復(fù)制到classpath路徑下即可。建立一個復(fù)合類型,如代碼8.1所示。

    代碼8.1定義復(fù)合類型

    package ch8;
    import java.util.Date;
    //
    團隊類
    public class Team {
    //
    團隊名稱
    private String teamname;
    //
    定義團隊人員屬性
    private Person person;
    //
    團隊人數(shù)
    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所示內(nèi)容定義了兩個復(fù)合類型:團隊(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所示內(nèi)容定義了一個Map類型的嵌套屬性,如圖8.1所示。

    ??

    8.1嵌套屬性示意圖

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

    團隊1
    pla2
    團隊2
    pla2

    說明

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

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

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


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 青青操免费在线观看| 亚洲最大福利视频| 亚洲VA综合VA国产产VA中| 亚洲免费观看网站| 免费无码AV一区二区| 国产免费人成视频在线观看| 亚洲线精品一区二区三区 | 国产区图片区小说区亚洲区| 午夜免费福利在线观看| 亚洲爆乳精品无码一区二区| 日本最新免费不卡二区在线| 亚洲一区二区在线免费观看| 99久久免费观看| 国产99在线|亚洲| 日韩一区二区三区免费体验| 亚洲成a人片在线观看中文动漫| 亚洲色偷偷综合亚洲av78| 免费精品一区二区三区在线观看| 亚洲第一福利视频| 黄页网站在线观看免费高清| 亚洲 欧洲 视频 伦小说| 国产精品极品美女免费观看| 一级做a爰片久久毛片免费陪 | 亚洲一本大道无码av天堂| 国产伦精品一区二区免费| 亚洲AV无码久久精品蜜桃| 中文毛片无遮挡高潮免费| 亚洲av无码日韩av无码网站冲| 免费国产黄网站在线观看视频| 国产a v无码专区亚洲av| 中文无码成人免费视频在线观看| 亚洲精品和日本精品| 美女视频黄a视频全免费网站色窝 美女被cao网站免费看在线看 | 亚洲日韩精品无码一区二区三区| 日本亚洲欧美色视频在线播放| 色播精品免费小视频| 高潮毛片无遮挡高清免费视频 | 亚洲精品尤物yw在线影院| 免费国产黄网站在线观看视频| 亚洲综合熟女久久久30p| 日韩中文字幕精品免费一区|