Java EE 6 VS Spring 3:Java EE已經殺死了Spring? 沒門!

介紹

幾天前,我在聽Java Spotlight Podcast的插曲85 。 在這次演講中, Bert Ertman和Paul Bakker討論了從Spring遷移到Java EE。 基本上,在他們的介紹中,他們說,如今,選擇Spring而不是Java EE是沒有意義的。 我們可以在他們的文章中閱讀:

花費了一段時間,但Java EE終于邁出了一步,成為了一種標準,輕量級,合適的解決方案,以應對主流企業應用程序空間中的絕大多數實際開發挑戰。 除了選擇標準外,您沒有任何其他理由。

在過去的幾個月中,我看到了很多想法相似的博客文章。 有些人贊揚Java EE,這是一件好事,而另一些人則只是貶低Spring。 Arun Gupta 的文章就是這種情況。 我對本文的第一個想法是“ Oracle可能真的很想寫這樣的巨魔……”。

我根本不是Spring傳播者,也不是Java EE討厭者。 相反,我已經大量使用Java EE 5兩年了,很高興看到Java EE最終成為Spring的優秀競爭對手。 我的目標不是在這里贊美Spring,而只是為了平衡“ Spring的仇恨者”的用語。

標準VS單一供應商解決方案

有標準好嗎?

您是否知道這句話“響應按照計劃進行的轉換”? 是的,這是敏捷規則之一。 有標準當然是好事,有多有余,是根本! 但是它有缺點。 如果有一天您對標準有疑問,而標準卻沒有涵蓋,那么您唯一的解決方案就是解決問題,動動手指,等待3年……

Spring和標準不兼容嗎?

一點也不! 這就是我不理解“這是標準”論點的原因之一。 Spring盡其所能提供標準的使用。 您可以自由使用JPA,CDI注釋等。我認為Spring更像是一個集成平臺,可以讓您使用所有Java EE技術以及Spring本身提供的一些其他功能。

我依賴SpringSource嗎? 并不是的…

如果明天SpringSource停止開發Spring,會發生什么? 我將繼續使用它……Spring Framework已獲得Apache 2.0許可,毫無疑問,社區將接替人們,并且一些新公司將為Spring提供支持。 即使沒有人這樣做,我也對Spring Framework的當前狀態感到滿意,為什么還要更改? 也許我會在3年后重新考慮它,屆時將發布新版本的Java EE…

如果明天我對Spring框架不滿意怎么辦? 如果我對Java EE不滿意,那將是一回事……我不再使用它了……

如果明天我對應用程序服務器不滿意怎么辦? 如果我對Java EE不滿意,那是同樣的事情……我改變了……除了使用Spring,我將有更多選擇(因為Spring適用于所有Java EE應用程序服務器以及其他諸如tomcat,jetty等服務器)。

春天一直是創新的,并將永遠是

我永遠不會忘記,Spring使Java Web開發的CDI變得容易和容易。 Java EE緊隨其后(三年后…)發布了JSR-299 。

Spring當前還提供了一些JavaEE根本無法提供的出色解決方案:

  • Spring Data(對NoSQL世界特別好)
  • Spring Social(糟糕…… JSR-357最近被拒絕…)
  • Spring手機

其中一些計劃在Java EE的下一版本的計劃中(是的,我們將在3年后推出!),而另一些仍未被考慮或被拒絕。

整合測試

Java的常見論點之一是,您不必使用模擬程序,由于Arquillian ,您可以進行容器內測試。 我絕對支持容器內測試,而不是模擬測試,并且Arquillian是一個很棒的工具。 無論如何,Arquillian非常適合Java EE,但不是Java EE! 沒有標準,因此您只能依靠單一供應商JBoss(redhat),這使得“這是標準”的論點毫無意義。 然后, 用Arquillian測試spring是不是不可能的……至少,即使它不是完美的,Spring的優點還是可以自己提供一些東西……

結論

我沒有將我的文章集中在Java EE平臺提供的增強上,也沒有集中在每種實現的不同功能上,這不是我的目標。 我仍然相信Java EE是一個非常好的產品,并且它最終已經成為一個重要的競爭對手。 但是當我讀到“ Spring在當時是革命性的……時,它的確是上一代的框架,甚至有人稱其為舊版 ”確實使我感到惱火。 我們怎么說呢? 也許只是發出嗡嗡聲……而且有效!

參考: Java EE 6 VS Spring 3:Java EE已經殺死了Spring? 沒門! 從我們的JCG合作伙伴 Tibo Delor在InvalidCodeException博客中獲得。


翻譯自: https://www.javacodegeeks.com/2012/07/java-ee-6-vs-spring-3-java-ee-has.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/371882.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/371882.shtml
英文地址,請注明出處:http://en.pswp.cn/news/371882.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

usb檢測串口是哪個角_怎樣測試串口和串口線是否正常

一步:把串口線或者USB轉串口線插到計算機上。二步:打開串口調試助手接著選擇串口,串口線和 USB 轉串口的端口號查看路徑:電腦上--右鍵--屬性--硬件--設備管理器-端口(COM 和LPT),點開端口前面的號查看即可。注釋:1、US…

NodeJS常用模塊介紹

收集了NodeJS開發中常用的一些模塊。MVC框架 - Express Express 是輕量靈活的Nodejs Web應用框架,它可以快速地搭建網站。Express框架建立在Nodejs內置的Http模塊上,并對Http模塊再包裝,從而實際Web請求處理的 功能。它支持多種前端模板&…

Java泛型面試問題

Java面試中的通用面試問題在相當長的時間內在Java 5周圍越來越普遍,許多應用程序都轉移到Java 5上,并且幾乎所有新的Java開發都發生在Tiger(Java 5的代號)上。 泛型和Java 5功能(例如Enum)的重要性&#xf…

隱層元素閃一下_太陽一直依靠什么元素在燃燒,地球上的重元素又是怎么來的?...

本文基于回答網友一個這樣的問題:太陽目前氫核聚變是氦碳氧穩定燃燒地球上的鐵鎳重元素哪里來的?可以說,這是一個毫無邏輯亂七八糟的問題,但既然邀請回答,就從中挑出幾個稍顯合理的問題說明一下。太陽核心每時每刻都在…

基于Token的WEB后臺認證機制

基于Token的WEB后臺認證機制 幾種常用的認證機制 HTTP Basic Auth HTTP Basic Auth簡單點說明就是每次請求API時都提供用戶的username和password,簡言之,Basic Auth是配合RESTful API 使用的最簡單的認證方式,只需提供用戶名密碼即可&#xf…

JSF基于事件的溝通:過時的方法

用JSF編寫的Web應用程序由相互交互的bean組成。 在開發Web應用程序時,bean之間的通信是主要的設計模式之一。 有時,一個bean需要向其他bean發送事件,以通知它們某些更改或其他任何更改。 我們通常可以將托管bean或Spring bean注入另一個bean的…

mysql調優 基礎

MySQL調優可以從幾個方面來做:1. 架構層:做從庫,實現讀寫分離;2.系統層次:增加內存;給磁盤做raid0或者raid5以增加磁盤的讀寫速度;可以重新掛載磁盤,并加上noatime參數,這…

saltstack

第一:安裝前準備: 聲明我用的是ubuntu 16.04的系統 1.修改主機名,并保證兩臺機器可以互相ping同主機名 ip1 master_hostname ip2 slave_hostname 第二:安裝 服務器安裝 yum install salt-master -y客戶端安裝 yum install salt…

ios 百度地圖指定區域_獲取百度地圖可視區域范圍的數據

有個業務場景,需要根據獲取到的地圖區域顯示,根據相應的經緯度反查 左側區域的會議室。思路:1.得到百度地圖可視區域--可視區域的中心點2.可視區域的四個角的其中兩個(東北角西南角)http://lbsyun.baidu.com/cms/jsapi/reference/jsapi_refer…

使用WS-Trust / STS采樣器擴展JMeter

JMeter沒有對WS-Security或WS-Trust的任何內置支持,這使我為JMeter開發了此STS Sampler –可以在負載測試STS時使任何人的生活變得更好。 首先,您需要擁有Apache JMeter發行版。 我正在使用v2.7。 然后,您可以從此處下載sts.sampler.zip –解…

分享一個使用閉包對一個對象繼承方式

function Person(name,age){this.name name;this.age age; }//定義一個new函數 繼承了對Person的繼承 function New(obj){return function(){var o {"__proto__":obj.proto};obj.apply(o,arguments);}return obj; }var n new New(Person)("對象繼承了person…

vue怎么改logo_vue全家桶項目構建教程

前言vue是現階段很流行的前端框架,很多人通過vue官方文檔的學習,對vue的使用都有了一定的了解,但再在項目工程化處理的時候,卻發現不知道改怎么更好的管理自己的項目,如何去引入一些框架以及vue全家桶其他框架的使用&a…

EclipseLink MOXy作為JAXB提供者

EclipseLink MOXy是JAXB提供程序,并且是內置在JDK中的默認JAXB提供程序的引人注目的替代品。 首先是一個簡單的測試,將Java對象編組為XML: 這是模型: XmlRootElement(nameMemberDetailsRequest, namespacehttp://bk.org/members…

monkeyrunner多點觸摸

思路是:在屏幕上某個位置按著不放:device.touch(x,y,md.DOWN) 然后再做一個滑動的操作:device.drap((x1,y1),(x2,y2),0.2,10) 然后再松開按鍵:device.touch(x,y,md.UP) #codeing:utf-8 from com.android.monkeyrunner import Monk…

雅虎前端優化的35條軍規

閱讀目錄 內容部分css部分js部分javascript, css 圖片 cookie移動端 服務器摘要:無論是在工作中,還是在面試中,web前端性能的優化都是很重要的,那么我們進行優化需要從哪些方面入手呢?可以遵循雅虎的前端優化34條軍規&…

stm32 內部sram大小_在SRAM、FLASH中調試代碼的配置方法(附詳細步驟)

聊天界面發送嵌入式大雜燴獲取1TB大雜燴資料包STM32的FLASH擦寫次數有限(大概為1萬次),所以為了延長FLASH的使用時間,我們平時調試時可以選擇在SRAM中進行硬件調試。除此之外,SRAM 存儲器的寫入速度比在內部 FLASH 中要快得多,所以…

Spring Profile模式示例

最近,我們介紹了Spring Profiles的概念。 此概念是針對不同部署環境的輕松配置區分符。 直接的用例(已提出)是對相關類進行注釋,以便Spring根據活動的配置文件加載適當的類。 但是,這種方法可能并不總是適用于常見的…

Android 樣式 (style) 和主題(theme)

轉載:https://gold.xitu.io/post/58441c48c59e0d0056a30bc2 樣式和主題 樣式是指為 View 或窗口指定外觀和格式的屬性集合。樣式可以指定高度、填充、字體顏色、字號、背景色等許多屬性。 樣式是在與指定布局的 XML 不同的 XML 資源中進行定義。 Android 中的樣式與…

自定義控件_VIewPager顯示多個Item

一直以來想搞明白這個不完全的VIewPager是怎么做到的&#xff0c;有幸看到這片篇文章 有二種實現方法 1.設置的屬性 1.clipChildren屬性 2.setPageMargin 3.更新Item外界面 2.重寫getPageWidth public class MultiplePagerAdapter extends PagerAdapter { private List<I…

華為怎么改輸入法皮膚_微信和QQ個性鍵盤皮膚

hello大家好&#xff0c;今天是2019年1月1號&#xff0c;祝大家新年快樂今天是新年的第一天&#xff0c;所以說給大家介紹一個好玩的&#xff0c;微信和QQ都能設置的個性的鍵盤皮膚&#xff0c;看下圖&#xff0c;這樣的個性的鍵盤主題怎么設置呢&#xff1f;其實很簡單&#x…