<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)航:
     
    主站蜘蛛池模板: 国产人妖ts在线观看免费视频| 57pao国产成视频免费播放| 最近最好的中文字幕2019免费 | 免费国产成人午夜私人影视| 亚洲一久久久久久久久| 中文字幕av无码无卡免费| 亚洲人成伊人成综合网久久| h视频在线免费看| 亚洲国产综合在线| 国内精品乱码卡1卡2卡3免费| 亚洲av乱码一区二区三区香蕉| 国产成人免费高清激情明星| 精品亚洲国产成人| 在线观看91精品国产不卡免费| 亚洲大码熟女在线观看| 免费一级一片一毛片| 免费国产黄网站在线观看动图| 国产亚洲精品不卡在线| 永久免费A∨片在线观看| 亚洲欧洲日产国产综合网| 国产免费女女脚奴视频网| 亚洲性色精品一区二区在线| 国产精品极品美女免费观看 | 久久精品亚洲男人的天堂| 一个人看的www免费在线视频| 亚洲国产日韩在线视频| 永久黄色免费网站| 中文字幕无码亚洲欧洲日韩| 四虎成人精品在永久免费| 久久国产精品免费一区二区三区| 亚洲AV色香蕉一区二区| 久久不见久久见中文字幕免费| 亚洲av永久无码精品秋霞电影秋| 精品亚洲一区二区三区在线观看| 国产精品免费大片| 亚洲乱亚洲乱妇无码| 国产亚洲欧洲精品| 毛片免费观看的视频| 久久久精品视频免费观看| 亚洲一区无码中文字幕乱码| 亚洲国产香蕉人人爽成AV片久久|