日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

struts 修改拦截器修改返回值_关于struts2简单的介绍与示例

發布時間:2025/3/19 编程问答 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 struts 修改拦截器修改返回值_关于struts2简单的介绍与示例 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Apache Struts 2是一個用于開發Java EE網絡應用程序的開放源代碼網頁應用程序架構。它利用并延伸了Java Servlet API,鼓勵開發者采用MVC架構。

緣起于Apache Struts的WebWork框架,旨在提供相對于Struts框架的增強和改進,同時保留與Struts框架類似的結構。2005年12月,WebWork宣布WebWork 2.2以Apache Struts 2的名義合并Struts。

Struts1設計的第一目標就是使MVC模式應用于web程序設計。在過去10年,Struts在更好的web應用方面所做的工作是值得肯定的。在某些方面,Struts社區注意到這一框架的局限性,所以這個活躍的社區通過對MVC運行模式的重新理解并同時引入一些新的建筑學方面的設計理念后,新的Struts2框架結構更清晰,使用更靈活方便。

這一新的結構包含應用邏輯的橫切面攔截器,基于注釋的配置以減少和去除XML形式的配置文件,功能強大的表達式語言,支持可更改、可重用UI組件的基于微MVC的標簽庫。Struts2有兩方面的技術優勢,一是所有的Struts2應用程序都是基于client/server HTTP交換協議,The Java Servlet API揭示了Java Servlet只是Java API的一個很小子集,這樣我們可以在業務邏輯部分使用功能強大的Java語言進行程序設計。Struts 2提供了對MVC的一個清晰的實現,這一實現包含了很多參與對所以請求進行處理的關鍵組件,如:攔截器、OGNL表達式語言、堆棧。

idea構建struts2項目:

創建strus2項目(注意不要勾選download,最新的struts核心包可能會導致一系列的錯誤)

去struts官網下載項目所需要的包

解壓下載好的文件,將lib文件夾內的所有包導入項目中

目錄結構如下:

創建示例action

配置struts.xml文件,一共有三種方式,但用的最多的就是通配符的方式

處理返回值與視圖相對應

需注意web.xml中包的路徑 struts2.5版本略有不同

使用tomcat運行該示例如下:

如果在實際開發過程中,將所有的action寫在一個配置文件內,這個文件就會顯得異常臃腫,所以我們需要采用多個配置文件。

指定多個配置文件的示例:

我們將剛才寫的struts.xml配置信息移到一個新的test.xml文件中,然后再struts.xml文件引入test.xml配置文件

我們也可以統一配置文件的編碼格式為UTF-8,避免以后出錯

我們也可以采用默認的action 防止404錯誤不友好體驗

當用戶輸入錯誤的url

關于修改請求地址的后綴示例:

修改后綴為html

action接收參數的示例:創建一個登陸界面

創建一個接收參數的action

注意接收參數的命名與前端名稱的一致性

配置struts信息

測試成功:

但是這樣寫,當參數過多時就會不利于維護,我們需要采用一種面向對象得到方式來接收參數

創建一個user實體類

使用user對象接收參數

更改前端參數

但是當傳入參數改變的時候,我們需要改變接收實體的參數,所以也不建議使用。

我們使用實現接口的方式接收參數,這種方式需要實例化對象

關于使用集合接收參數

關于處理結果的類型

除了input比較特殊之外,其他的幾種只是一種代碼規范。

input來限制接收參數的類型

定義age的類型為int

修改配置文件信息,參數正確可以進入首頁,否則繼續停留在登陸界面

測試成功:

自定義攔截器示例:

新建攔截器,繼承AbstractInterceptor類,重寫intercept方法

在struts.xml中注冊攔截器

在指定的action中調用攔截器

創建測試action

創建測試義頁面

測試如下:

內置攔截器:

需要注意的是當我們為某個action指定攔截器后,則默認的攔截器不會被引用,所以需要手動引用默認攔截器

struts2權限控制示例:

WEB-INF是無法直接通過url訪問的

相應的邏輯處理

視圖的轉發

自定義權限攔截器

配置信息

這樣就完成了權限的控制

我好想你。

與50位技術專家面對面20年技術見證,附贈技術全景圖

總結

以上是生活随笔為你收集整理的struts 修改拦截器修改返回值_关于struts2简单的介绍与示例的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。