IT人生
          專注于java相關(guān)技術(shù).
          posts - 53,comments - 87,trackbacks - 0
          假設(shè)在Action類里有這么一個(gè)變量

          private String str = "Hello jsp and struts2";

          還必須有str的get方法。

          在JSP頁(yè)面我們要引入org.apache.struts2.ServletActionContext
          <%@page import="org.apache.struts2.ServletActionContext"%>

          然后
          <%
          String str = request.getAttribute("str");
          System.out.println(str); //結(jié)果將輸出: Hello jsp and struts2
          %>


          減肥瘦身品總匯     值得信賴*脈脈美妝*正品現(xiàn)貨謝絕講價(jià)     〓深港商盟〓名品歐衣坊(美國(guó)休閑品牌AF系列)     QQ三國(guó)游戲幣及道具專賣店     小臉紅紅的瘦身旗艦店
          posted on 2009-04-17 11:37 龍華城 閱讀(14235) 評(píng)論(7)  編輯  收藏

          FeedBack:
          # re: jsp頁(yè)面通過(guò) request對(duì)象直接獲取 struts2 Action的變量的值。
          2009-04-17 13:15 | 鉛筆
          這個(gè)jsp是通過(guò)action跳過(guò)來(lái)的?

          還有如果是這樣的話那只需要有g(shù)et方法就可以了。

          能不能說(shuō)的詳細(xì)點(diǎn)呢樓主?

          <%@page import="org.apache.struts2.ServletActionContext"%>

          這個(gè)導(dǎo)入的具體原理是什么呢?  回復(fù)  更多評(píng)論
            
          # re: jsp頁(yè)面通過(guò) request對(duì)象直接獲取 struts2 Action的變量的值。
          2009-04-17 14:31 | 龍華城
          當(dāng)Struts2的過(guò)濾器啟動(dòng)的時(shí)候,首先會(huì)初始化

          org.apache.struts2.ServletActionContext 類

          它掌管著所有的作用域?qū)ο螅?nbsp; 回復(fù)  更多評(píng)論
            
          # re: jsp頁(yè)面通過(guò) request對(duì)象直接獲取 struts2 Action的變量的值。
          2009-04-17 16:50 | 重慶理工小子
          (1)像一樓說(shuō)的,樓主,這個(gè)jsp應(yīng)該是通過(guò)那個(gè)action跳過(guò)來(lái)的哈。
          (2)我也覺得只要一個(gè)set就行。
          (3)如果是在struts2中,用不著這么麻煩,直接在jsp頁(yè)面加入
          <s:property value="sty"/>就能傳值過(guò)來(lái)了```!  回復(fù)  更多評(píng)論
            
          # re: jsp頁(yè)面通過(guò) request對(duì)象直接獲取 struts2 Action的變量的值。
          2009-04-17 16:53 | 龍華城
          是可以把值傳過(guò)來(lái),但要想把這個(gè)值傳給jsp頁(yè)面
          的<%%&>里面的變量呢?
          其實(shí)我這還出了個(gè)問(wèn)題,就是第一次啟動(dòng)tomcat時(shí) 點(diǎn)擊那個(gè)action。 在jsp里面接收不到action屬性那個(gè)值,并且action里面的值已經(jīng)被賦值了。

          其實(shí)我的目的就是想把a(bǔ)ction里的屬性的值傳到j(luò)sp頁(yè)面的java變量里。

          ~~
            回復(fù)  更多評(píng)論
            
          # re: jsp頁(yè)面通過(guò) request對(duì)象直接獲取 struts2 Action的變量的值。
          2009-04-19 01:32 | 鉛筆
          @龍華城
          在Struts2 中 ,確實(shí)是通過(guò)ServletActionContext 來(lái)獲取request,session的。不過(guò)你上面的jsp頁(yè)面上引入這個(gè)類我就不明白是為什么了。因?yàn)槟愕恼Z(yǔ)句也沒有用到這個(gè)類。

          還有就是既然你的程序已經(jīng)應(yīng)用了struts2框架,那就應(yīng)該按照MVC框架來(lái)分層設(shè)計(jì),又為什么要把屬性在JSP里賦給其他變量呢?難道還要進(jìn)行進(jìn)一步運(yùn)算?那這就違背了運(yùn)用struts的初衷。

          還有就是你文章中的方法我運(yùn)行了,提示出錯(cuò)。jsp頁(yè)面無(wú)法compile。

          如果你是想達(dá)到這個(gè)目的的話,可以直接在action中的 execute方法中把屬性setAttribute中啊。  回復(fù)  更多評(píng)論
            
          # re: jsp頁(yè)面通過(guò) request對(duì)象直接獲取 struts2 Action的變量的值。
          2009-04-19 01:44 | 鉛筆
          @龍華城
          還有您所說(shuō)的struts2的Filter會(huì)初始化ServletActionContext,這點(diǎn)我有點(diǎn)不明白。 為什么要初始化這個(gè)類? 我在org.apache.struts2.dispatcher.FilterDispatcher的源代碼中并沒有看到相關(guān)的信息支持您的這種說(shuō)話。
            回復(fù)  更多評(píng)論
            
          # re: jsp頁(yè)面通過(guò) request對(duì)象直接獲取 struts2 Action的變量的值。
          2011-12-15 12:27 | serisboy
          @重慶理工小子
          這個(gè)簡(jiǎn)單實(shí)用!  回復(fù)  更多評(píng)論
            

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


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 桑植县| 鞍山市| 民县| 湾仔区| 赣州市| 巫山县| 新密市| 桃源县| 宜宾县| 平阳县| 新民市| 修文县| 建阳市| 行唐县| 楚雄市| 海安县| 富宁县| 明水县| 边坝县| 盘山县| 奇台县| 通河县| 定陶县| 南木林县| 浙江省| 博兴县| 营山县| 哈巴河县| 云安县| 仁寿县| 开江县| 新津县| 阳东县| 瑞金市| 兰溪市| 马公市| 德昌县| 灵璧县| 隆化县| 哈密市| 永兴县|