欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Struts2的配置文件方法小結(jié)

 更新時(shí)間:2018年04月27日 11:39:10   作者:bgzyy  
最近正在學(xué)習(xí)Struts2,在配置文件中遇到好多標(biāo)簽,各種意義不同。下面這篇文章就來給大家介紹關(guān)于Struts2配置文件的相關(guān)資料,文中通過圖文介紹的非常詳細(xì),需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。

Struts2

JAVA基礎(chǔ)學(xué)完,肯定是要面臨三大框架的學(xué)習(xí)的,作為初學(xué)者,了解三大框架的原理,設(shè)計(jì)目的是首要任務(wù),只有在把握了框架的設(shè)計(jì)目的以后,才能有針對(duì)性的取學(xué)習(xí)使用框架,這里就要介紹下strue2框架了。

什么是Struts2?

Struts2 是一個(gè)非常優(yōu)秀的MVC框架,基于Model2 設(shè)計(jì)模型

由傳統(tǒng)Struts1和WebWork兩個(gè)經(jīng)典框架發(fā)展而來

Strust2 核心功能

(1)允許POJO(Plain Old Java Objects)對(duì)象 作為Action

(2)Action的execute 方法不再與Servlet API耦合,更易測(cè)試

(3)支持更多視圖技術(shù)(JSP、FreeMarker、Velocity)

(4)基于Spring AOP思想的攔截器機(jī)制,更易擴(kuò)展

(5)更強(qiáng)大、更易用輸入校驗(yàn)功能

struts2 配置文件的 result 節(jié)點(diǎn)

result 節(jié)點(diǎn)是 action 節(jié)點(diǎn)的子節(jié)點(diǎn),他代表著 action 方法執(zhí)行后可能去的一個(gè)目的地;

Action 方法名和 action 節(jié)點(diǎn)的 method 屬性相對(duì)應(yīng);

每個(gè) Action 方法都會(huì)返回一個(gè) String 類型的值且一一對(duì)應(yīng) result 節(jié)點(diǎn)的 name 屬性,而 result 節(jié)點(diǎn)根據(jù) name 屬性值決定響應(yīng)不一樣的結(jié)果;

result 節(jié)點(diǎn)擁有兩個(gè)屬性,name(結(jié)果的名字,即 action 方法的返回值,默認(rèn)為 SUCCESS) 和 type(響應(yīng)結(jié)果的類型,默認(rèn)值為 dispatcher)

如上圖中圈 1 所, result 節(jié)點(diǎn)的值代表著此次 struts2 請(qǐng)求將會(huì)去的一個(gè)目的地

result 節(jié)點(diǎn)的結(jié)果類型(type)

dispatcher(轉(zhuǎn)發(fā))

dispatcher 是 struts2 框架的默認(rèn)結(jié)果類型,也是最常用的結(jié)果類型,該類型有一個(gè)默認(rèn)的參數(shù) location,一般情況省略,如下兩種寫法等價(jià):

dispatcher 結(jié)果類型將控制權(quán)轉(zhuǎn)發(fā)給應(yīng)用程序中的指定資源,若需要把控制權(quán)轉(zhuǎn)發(fā)給 一個(gè)外部資源,則應(yīng)使用 redirect 結(jié)果類型

redirect(重定向)

  • redirect 結(jié)果類型將把響應(yīng)重定向到另一個(gè)資源,而不是轉(zhuǎn)發(fā)給該資源
  • redirect 也擁有默認(rèn)參數(shù) location,同時(shí)還有一個(gè) parse 參數(shù),用來表明是否把 location 值視為一個(gè) OGNL 表達(dá)式來解釋,默認(rèn)值為 true

chain (轉(zhuǎn)發(fā)到一個(gè) action)

  • 指定 result 結(jié)果響應(yīng)類型為 chain,其可以用來構(gòu)成一個(gè) action 鏈,即前一個(gè) action 把控制權(quán)轉(zhuǎn)發(fā)給后一個(gè) action,而前一個(gè) action 的狀態(tài)在后一個(gè) action 中依然保存
  • chain 可接受的參數(shù)有 actionName 和 method,其中 actionName 指定目標(biāo) action 的名字,它是默認(rèn)屬性,method 指定目標(biāo) action 的方法,默認(rèn)值為 execute

redirectAction (重定向到一個(gè) action)

  • redirectAction 把響應(yīng)重定向到另一個(gè) action,同時(shí)擁有默認(rèn)參數(shù) actionName
  • 重定向到一個(gè) action 可以使用 redirect 簡(jiǎn)潔的進(jìn)行實(shí)現(xiàn),但是轉(zhuǎn)發(fā)到一個(gè) action 不能使用 dispatcher 實(shí)現(xiàn),如下兩種寫法等價(jià)

通配符映射

struts2 提供通配符映射機(jī)制將多個(gè)彼此相似的映射關(guān)系簡(jiǎn)化為一個(gè)映射關(guān)系

通配符映射規(guī)則

  • 若一個(gè) action 請(qǐng)求找到多個(gè)匹配的 action,沒有通配符的那個(gè)將會(huì)獲勝
  • 若找不到指定的 action,struts2 將會(huì)嘗試把這個(gè) URL 與任何一個(gè)包含著通配符的動(dòng)作匹配
  • 被通配符匹配到的 URI 字符串的子串可以利用 {1} {2} 來引用,比如四個(gè) action 分別為
  • update-hello、query-hello、delete-hello、save-hello 那么在 struts.xml 文件中的 action
  • 的 name 屬性則可以為 name = -hello,且在整個(gè) action 節(jié)點(diǎn)中可以用 {1} 代表 所占用
  • 的字符串,class 中也可以使用 {1} 來代表類名
  • {0} 匹配整個(gè) URL
  • 若 struts2 找到帶有通配符的匹配有多個(gè),則按先后順序進(jìn)行匹配

如圖所示,在第一個(gè) package 中,* 可代表第二個(gè) package 中的他們四個(gè)。

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問大家可以留言交流,謝謝大家對(duì)腳本之家的支持。

相關(guān)文章

  • Spring Cloud學(xué)習(xí)教程之DiscoveryClient的深入探究

    Spring Cloud學(xué)習(xí)教程之DiscoveryClient的深入探究

    這篇文章主要給大家介紹了關(guān)于Spring Cloud學(xué)習(xí)教程之DiscoveryClient的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2018-04-04
  • Java實(shí)現(xiàn)空指針后的猜拳游戲

    Java實(shí)現(xiàn)空指針后的猜拳游戲

    “java.lang.NullPointerException”?空指針異??梢哉f是Java程序最容易出現(xiàn)的異常了,小編寫了一個(gè)?IDEA?插件,每當(dāng)程序出現(xiàn)空指針異常時(shí)就會(huì)彈出一個(gè)“猜拳游戲”窗口,該窗口不能直接關(guān)閉,只有當(dāng)你游戲獲勝時(shí),窗口才會(huì)自動(dòng)關(guān)閉
    2022-09-09
  • Jmeter環(huán)境搭建及安裝步驟

    Jmeter環(huán)境搭建及安裝步驟

    Jmeter是純Java開發(fā)的,能夠運(yùn)行Java程序的系統(tǒng)一般都可以運(yùn)行Jmeter,本文以windows下安裝步驟為例分步驟給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧
    2021-12-12
  • 使用@PathVariable接收兩個(gè)參數(shù)

    使用@PathVariable接收兩個(gè)參數(shù)

    這篇文章主要介紹了使用@PathVariable接收兩個(gè)參數(shù)的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-08-08
  • 又又叕出BUG啦!理智分析Java NIO的ByteBuffer到底有多難用

    又又叕出BUG啦!理智分析Java NIO的ByteBuffer到底有多難用

    網(wǎng)絡(luò)數(shù)據(jù)的基本單位永遠(yuǎn)是byte,Java NIO提供ByteBuffer作為字節(jié)的容器,但該類過于復(fù)雜,有點(diǎn)難用.本篇文章就帶大家簡(jiǎn)單了解一下 ,需要的朋友可以參考下
    2021-06-06
  • 解決Eclipse配置Tomcat出現(xiàn)Cannot create a server using the selected type錯(cuò)誤

    解決Eclipse配置Tomcat出現(xiàn)Cannot create a server using the selected

    這篇文章主要介紹了解決Eclipse配置Tomcat出現(xiàn)Cannot create a server using the selected type錯(cuò)誤的相關(guān)資料,需要的朋友可以參考下
    2017-02-02
  • java中字符串替換常用的4種方法

    java中字符串替換常用的4種方法

    在Java中String類提供了許多方便的方法來處理字符串,下面這篇文章主要給大家介紹了關(guān)于java中字符串替換常用的4種方法,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2024-03-03
  • Springboot整合SpringSecurity的完整案例詳解

    Springboot整合SpringSecurity的完整案例詳解

    Spring Security是基于Spring生態(tài)圈的,用于提供安全訪問控制解決方案的框架,Spring Security登錄認(rèn)證主要涉及兩個(gè)重要的接口 UserDetailService和UserDetails接口,本文對(duì)Springboot整合SpringSecurity過程給大家介紹的非常詳細(xì),需要的朋友參考下吧
    2024-01-01
  • Java ES(Elasticsearch) 中的and 和 or 查詢

    Java ES(Elasticsearch) 中的and 和 or 查

    Elasticsearch 是一個(gè)分布式、高擴(kuò)展、高實(shí)時(shí)的搜索與數(shù)據(jù)分析引擎,es中match查詢中,查詢字符串分詞后,默認(rèn)是or或者的關(guān)系,這篇文章主要介紹了ES 中的and 和 or 查詢,需要的朋友可以參考下
    2022-11-11
  • javaweb servlet生成簡(jiǎn)單驗(yàn)證碼

    javaweb servlet生成簡(jiǎn)單驗(yàn)證碼

    這篇文章主要為大家詳細(xì)介紹了javaweb servlet生成簡(jiǎn)單驗(yàn)證碼,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-03-03

最新評(píng)論