Struts2的註解功能

2021-06-12 06:08:07 字數 1521 閱讀 2070

我們知道通常情況下,

struts2

是通過struts.xml

配置的。但是隨著系統規模的加大我們需要配置的檔案會比較大,雖然我們可以根據不同的系統功能將不同模組的配置檔案單獨書寫,然後通過

節點將不同的配置檔案引入到最終的

struts.xml

檔案中,但是畢竟還是要維護和管理這些檔案,因此也會給維護工作帶來很大的困擾。為了解決這個問題,可以考慮使用

struts2

的註解。實際上

struts2

中最主要的概念就是

package

、action

以及interceptor

等等概念,所以只要明白這些註解就可以了。

如果希望使用

struts2

的註解功能,必須使用乙個包

struts2-convention-plugin-2.1.8.1.jar

,我使用的環境是

struts2.1.8.1

。如果你使用了不同的版本,找名字就行。

在以上所述的

jar檔案中定義了一系列的註解,其中比較主要的是:

•@parentpackage,這個註解對應了xml檔案中的package節點,它只有乙個屬性叫value,其實就是package的name屬性;

•@namespace,命名空間,也就是xml檔案中的namespace屬性;

•@action,這個註解對應節點。這個註解可以應用於action類上,也可以應用於方法上。這個註解中有幾個屬性:

•value(),表示action的url,也就是節點中的name屬性;

•results(),表示action的多個result;這個屬性是乙個陣列屬性,因此可以定義多個result;

•interceptorrefs(),表示action的多個***。這個屬性也是乙個陣列屬性,因此可以定義多個***;

•params(),這是乙個string型別的陣列,它按照name/value的形式組織,是傳給action的引數;

•@result,這個註解對應了節點。這個註解只能應用於action類上。這個註解中也有幾個屬性:

•name(),表示action方法的返回值,也就是節點的name屬性,預設情況下是【success】;

•location(),表示view層檔案的位置,可以是相對路徑,也可以是絕對路徑;

•type(),是action的型別,比如redirect;

•params(),是乙個string陣列。也是以name/value形式傳送給result的引數;

實際上,

struts2

中的主要註解就是這些,當然了,還有上面提到的

@interceptorref

和;基本上,掌握了這些註解就可以了。

但是如果想讓這些註解真正工作,必須在配置檔案增加幾個常量的定義:

以上三個常量都是輔助作用的,為了讓註解真正的工作,必須在配置檔案中增加

節點的配置,至少是

,這樣註解就可以使用了。

Struts2的註解功能

如果希望使用 struts2 的註解功能,必須使用乙個包 struts2 convention plugin 2.1.8.1.jar 我使用的環境是 struts2.1.8.1 如果你使用了不同的版本,找名字就行。在以上所述的 jar檔案中定義了一系列的註解,其中比較主要的是 result 這個註解...

Struts2的註解功能

struts2 通過struts.xml 配置的。但是隨著系統規模的加大我們需要配置的檔案會比較大,雖然我們可以根據不同的系統功能將不同模組的配置檔案單獨書寫,然後通過 節點將不同的配置檔案引入到最終的 struts.xml 檔案中,但是畢竟還是要維護和管理這些檔案,因此也會給維護工作帶來很大的困擾...

struts2 註解配置

struts2基於註解的action配置 使用註解來配置action的最大好處就是可以實現零配置,但是事務都是有利有弊的,使用方便,維護起來就沒那麼方便了。要使用註解方式,我們必須新增乙個額外包 struts2 convention plugin 2.x.x.jar。雖說是零配置的,但struts....