成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Struts優缺點剖析 開源是把雙刃劍?

開發 后端
本文將對Struts優缺點進行剖析,Struts跟Tomcat、Turbine等諸多Apache項目一樣,是開源軟件,這可能是它最大的有點,也可能是缺點。

Struts優缺點跟Tomcat、Turbine等諸多Apache項目一樣,是開源軟件,這是它的一大優點。使開發者能更深入的了解其內部實現機制。

Struts開放源碼框架的創建是為了使開發者在構建基于Java Servlet和JavaServer Pages(JSP)技術的Web應用時更加容易。Struts框架為開放者提供了一個統一的標準框架,通過使用Struts作為基礎,開發者能夠更專注于應用程序的商業邏輯。Struts框架本身是使用Java Servlet和JavaServer Pages技術的一種Model-View-Controller(MVC)實現。 具體來講,

Struts優點有

1. 實現MVC模式,結構清晰,使開發者只關注業務邏輯的實現.

2. 有豐富的tag可以用 ,Struts的標記庫(Taglib),如能靈活動用,則能大大提高開發效率。另外,就目前國內的JSP開發者而言,除了使用JSP自帶的常用標記外,很少開發自己的標記,或許Struts是一個很好的起點。

3. 頁面導航.頁面導航將是今后的一個發展方向,事實上,這樣做,使系統的脈絡更加清晰。通過一個配置文件,即可把握整個系統各部分之間的聯系,這對于后期的維護有著莫大的好處。尤其是當另一批開發者接手這個項目時,這種優勢體現得更加明顯。

4. 提供Exception處理機制 .

5. 數據庫鏈接池管理

6. 支持I18N

Struts缺點:

一、 轉到展示層時,需要配置forward,每一次轉到展示層,相信大多數都是直接轉到jsp,而涉及到轉向,需要配置forward,如果有十個展示層的jsp,需要配置十次struts,而且還不包括有時候目錄、文件變更,需要重新修改forward,注意,每次修改配置之后,要求重新部署整個項目,而tomcate這樣的服務器,還必須重新啟動服務器,如果業務變更復雜頻繁的系統,這樣的操作簡單不可想象?,F在就是這樣,幾十上百個人同時在線使用我們的系統,大家可以想象一下,我的煩惱有多大。

二、 Struts 的Action必需是thread-safe方式,它僅僅允許一個實例去處理所有的請求。所以action用到的所有的資源都必需統一同步,這個就引起了線程安全的問題。

三、 測試不方便. Struts的每個Action都同Web層耦合在一起,這樣它的測試依賴于Web容器,單元測試也很難實現。不過有一個Junit的擴展工具Struts TestCase可以實現它的單元測試。

四、 類型的轉換. Struts的FormBean把所有的數據都作為String類型,它可以使用工具Commons-Beanutils進行類型轉化。但它的轉化都是在Class級別,而且轉化的類型是不可配置的。類型轉化時的錯誤信息返回給用戶也是非常困難的。

五、 對Servlet的依賴性過強. Struts處理Action時必需要依賴ServletRequest 和ServletResponse,所有它擺脫不了Servlet容器。

六、 前端表達式語言方面.Struts集成了JSTL,所以它主要使用JSTL的表達式語言來獲取數據??墒荍STL的表達式語言在Collection和索引屬性方面處理顯得很弱。

七、 對Action執行的控制困難. Struts創建一個Action,如果想控制它的執行順序將會非常困難。甚至你要重新去寫Servlet來實現你的這個功能需求。

八、 對Action 執行前和后的處理. Struts處理Action的時候是基于class的hierarchies,很難在action處理前和后進行操作。

九、 對事件支持不夠. 在struts中,實際是一個表單Form對應一個Action類(或DispatchAction),換一句話說:在Struts中實際是一個表單只能對應一個事件,struts這種事件方式稱為application event,application event和component event相比是一種粗粒度的事件。 Struts重要的表單對象ActionForm是一種對象,它代表了一種應用,這個對象中至少包含幾個字段,這些字段是Jsp頁面表單中的input字段,因為一個表單對應一個事件,所以,當我們需要將事件粒度細化到表單中這些字段時,也就是說,一個字段對應一個事件時,單純使用Struts就不太可能,當然通過結合JavaScript也是可以轉彎實現的。

Struts優缺點就為大家總結到這里。

【編輯推薦】

  1. 在Eclipse中開發struts應用程序
  2. 手把手教你在Eclipse中配置開發Struts
  3. Eclipse下開發struts完整解決亂碼問題
  4. Struts相關背景介紹
  5. 使用Easy Struts for Eclipse開發Struts
責任編輯:張燕妮 來源: javaeye.com
相關推薦

2017-08-14 14:51:15

2015-05-27 16:35:59

2009-03-05 10:50:00

空中上網

2025-05-27 10:10:00

Java緩存開發

2025-04-07 08:30:00

緩存Java開發

2011-11-08 08:14:40

WLANWi-Fi

2012-12-25 12:42:46

應用審查App Store

2012-06-19 09:44:37

2012-06-20 09:27:09

2023-04-06 10:12:04

2017-06-14 17:39:40

微服務架構服務器

2013-08-13 09:07:20

大數據

2012-08-22 13:10:57

Win 8Liunx操作系統

2021-04-25 15:28:52

人工智能交通機器人

2019-12-18 15:30:57

漏洞安全Linux

2021-09-06 10:23:27

自動化網絡安全AI

2009-05-20 19:30:38

2010-09-02 14:52:20

CSS框架

2012-03-05 16:37:55

2019-09-04 17:49:01

人工智能機器學習富國銀行
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产日韩免费观看 | 在线欧美一区二区 | 一区二区三区在线 | 国产一区二区三区四区 | 亚洲成人三区 | 91视频播放 | 天堂一区二区三区四区 | 国产色婷婷久久99精品91 | 福利片在线观看 | 亚洲精品久久久9婷婷中文字幕 | 欧美一区二区三区小说 | 亚洲国产欧美在线 | 欧美一区二区三区四区在线 | 亚洲国产精品va在线看黑人 | 欧洲妇女成人淫片aaa视频 | 日韩免费一二三区 | 亚洲欧美日韩电影 | 午夜av成人| 九九看片| 成人在线精品视频 | 欧美日韩在线综合 | 9久久婷婷国产综合精品性色 | 国产精品一区二区欧美黑人喷潮水 | 久久综合激情 | 天堂一区二区三区 | 国产一级精品毛片 | 欧美精品网站 | 精品三级在线观看 | 欧美精产国品一二三区 | 国产成人在线看 | 国产成人免费网站 | 国产精品一区二区久久 | 欧美日韩一卡二卡 | 亚洲一二三区精品 | 日本三级网站在线 | 午夜a区 | 国产高清一区二区 | 久久精品99国产精品 | 久久精品国产一区二区三区 | 国产偷录视频叫床高潮对白 | 日韩在线xx |