<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

    <?xml:namespace prefix = st1 />1.1.1 業務控制器

    為本示例建立一個業務控制器,該控制器用到了代碼8.1中定義的Person人員信息類。該業務控制器如代碼8.4所示。

    代碼8.4 Struts 2OGNL示例業務控制器

    package ch8;
    import java.util.Date;
    import java.util.LinkedList;
    import java.util.List;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import javax.servlet.http.HttpSession;
    import org.apache.struts2.ServletActionContext;
    import com.opensymphony.xwork2.ActionContext;
    import com.opensymphony.xwork2.ActionSupport;
    public class OgnlAction extends ActionSupport {
    //List
    類型屬性
    private List persons;
    //execute
    方法
    public String execute() throws Exception {
    //
    獲得ActionContext實例,以便訪問Servlet API
    ActionContext ctx = ActionContext.getContext();
    //
    存入application
    ctx.getApplication().put("msg", "application
    信息");
    //
    保存session
    ctx.getSession().put("msg", "seesion
    信息");
    //
    保存request信息
    HttpServletRequest request = ServletActionContext.getRequest();
    request.setAttribute("msg", "request
    信息");
    //
    persons賦值
    persons = new LinkedList();
    Person person1=new Person();
    person1.setName("pla1");
    person1.setAge(26);
    person1.setBirthday(new Date());
    persons.add(person1);

    Person person2=new Person();
    person2.setName("pla2");
    person2.setAge(36);
    person2.setBirthday(new Date());
    persons.add(person2);
    Person person3=new Person();
    person3.setName("pla3");
    person3.setAge(16);
    person3.setBirthday(new Date());
    persons.add(person3);
    return SUCCESS;
    }
    public List getPersons() {
    return persons;
    }
    public void setPersons(List persons) {
    this.persons = persons;
    }
    }

    該業務控制器分別在applicationsessionrequest中存入名為“msg”的字符串信息,另外定義了一個List類型屬性,同時添加了兩個Person類型元素。在配置文件中增加了相應的配置,代碼如下:


    /ch8/showognl.jsp

    1.1.2 JSP視圖

    showognl.jsp是使用了OGNL表達式的JSP視圖,視圖用來顯示Action中處理的各種信息,讀者可以看到,使用OGNL表達式,代碼更加簡潔和直觀,如代碼8.5所示。

    代碼8.5使用OGNL表達式的JSP視圖


    http://www.w3.org/TR/ xhtml1/DTD/xhtml1-transitional.dtd">
    http://www.w3.org/1999/xhtml">

    訪問OGNL上下文和Action上下文

    parameters: 
    request.msg: 
    session.msg: 
    application.msg: 
    attr.msg: 
    
    
    用于過濾和投影(projecting)集合
    年齡大于20
    1.???????????????????????   - 年齡:
    姓名為pla1的年齡: 
    
    
    構造Map
    The value of key "foo1" is 

    1.1.3 運行示例

    在瀏覽器中輸入http://localhost:8080/bookcode/ch8/OgnlAction.action?msg=hello,運行結果如圖8.3所示。

    8.3 Struts 2中使用OGNL表達式

    說明

    本示例演示了如何使用OGNL表達式來訪問OGNL上下文和值棧,同時演示了如何使用OGNL表達式進行集合操作。對讀者深入理解Struts 2OGNL表達式的使用有所幫助。

    posted on 2009-08-15 17:29 jadmin 閱讀(86) 評論(0)  編輯  收藏

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


    網站導航:
     
    主站蜘蛛池模板: 亚洲午夜福利在线观看| 亚洲欧洲日韩国产| 久9热免费精品视频在线观看| 本道天堂成在人线av无码免费| 国产亚洲精品精华液| 免费能直接在线观看黄的视频| 激情婷婷成人亚洲综合| 久久夜色精品国产亚洲AV动态图| 西西大胆无码视频免费| 一级毛片免费在线观看网站| 亚洲美女大bbbbbbbbb| 国产一区二区三区无码免费| 亚洲成人免费在线| 天天综合亚洲色在线精品| 亚洲午夜在线电影| 免费jjzz在线播放国产| 97在线视频免费播放| 黄色一级毛片免费看| 亚洲黄色免费电影| 亚洲精品WWW久久久久久| 国产精品入口麻豆免费观看| 国产人成网在线播放VA免费| 亚洲人成www在线播放| 亚洲国产精品无码久久久不卡| 精品免费国产一区二区三区| 免费国产成人α片| 国产V片在线播放免费无码| 亚洲乱码在线观看| 99亚洲精品高清一二区| 亚洲区小说区图片区| 成人免费视频试看120秒| 十九岁在线观看免费完整版电影| 黄色a三级三级三级免费看| 亚洲中文字幕久在线| 亚洲av无码成人黄网站在线观看| 亚洲精品高清一二区久久| 毛色毛片免费观看| 在线a免费观看最新网站| 亚洲人成网亚洲欧洲无码| 亚洲精品人成在线观看| 亚洲人成网站在线观看青青|