2010-07-28 99 views
2

我是誰寫的Java控制器(MVC)的傢伙,誰做測試使用JUnit,誰寫的JDBC,誰使用行家之間的細線...的Java SE和Java EE

基本上,我怎麼知道這個Java EE何時何時不是?我不寫servlet或jsps(它是Java EE的一部分),但我確實使用API​​,因此...

我是什麼? Java EE程序員? Java SE程序員? 如果你是Spring/Hibernate開發者,你是什麼? Java EE或Java SE?

也許這是愚蠢的問題(如果是這樣,那麼我很抱歉),但是Java SE和Java EE之間的「細線」是什麼?

回答

6

更重要的是,沒關係

「什麼在名字?把玫瑰花叫做

別的名稱,它還是照樣芳香。」

擁有這些標籤的唯一目的是作爲將技術捆綁在一起的捷徑。我同意你的觀點,即這些是非常流行的術語,因此沒有人會因此而使用它們。

當然,公司可能會爲「J2EE開發人員」做廣告。但他們總是會在描述/訪談中提到他們的意思是例如JBoss和JPA,而不是簡單地說「你是J2EE嗎?」,並假設你們都知道這意味着什麼。

除了那個具體的例子,我很少遇到使用的術語(因爲它們不是很有用)。詢問你是否有使用Java的經驗是有用的,在更精確的層面上詢問你是否有Tomcat或Hibernate的經驗是有用的,但詢問是否有人有J2EE經驗不太可能產生可用的答案。

是否有一些特定的情況促使你問這個問題?

+0

Andrzej你明白了:)這是公司的工作機會。我按照描述工作,然後我來採訪並被問到「你有沒有使用Java EE的經驗」?那麼... – Collaborative 2010-07-28 16:50:05

+0

然後說實話,告訴你在上面的問題中告訴我們。至少不要猶豫/不確定。只要告訴你所知道的。 – BalusC 2010-07-28 16:58:42

2

JDBC是核心Java SE規範的一部分。

毫無疑問,Java EE建立在Java SE之上。如果您是Java EE,那麼您也會自動使用Java SE。

Servlet和JSP是Java EE的一部分,但有些人不認爲你是完全的Java EE除非你使用EJB和應用服務器服務,如連接池,命名,排隊等

Spring是對EJB 2.0及其複雜性的反應。它建立在Java SE之上,通常部署在Java EE應用服務器上,並且不依賴於EJB機制而提供了大量Java EE功能(例如,持久性,生命週期等)。它使用servlet,JSP,持久性,命名,排隊和其他Java EE服務來完成其工作。 Spring不是Java EE規範;這是羅德約翰遜的想法。它現在由VMWare所有。

+0

我編寫的代碼在應用程序服務器上運行,但我不是設置應用程序服務器的代碼。我不寫EJB。這個答案可以如此簡單,或者它可以不是? – Collaborative 2010-07-28 16:27:39

+0

聽起來不錯。只要使用它。 – 2010-07-28 16:58:14

0

J2EE是用於企業開發的API和規範的集合,如果您不使用任何這些API,那麼從我的角度來看,您是J2SE開發人員,即使在使用Spring時也是如此。

當然,任何進行J2EE開發的人也必須默認進行J2SE開發,因爲所有這些J2EE API都是基於Java語言平臺構建的。

+1

是最新的。 * 4年前,J2SE *和* J2EE *(1.2-1.4)已升級至* Java SE *和* Java EE *(> = 1.5/5.0)。 – BalusC 2010-07-28 16:41:57

0

Java EE是一個巨大的API。您主要使用Java EE Web配置文件。所以,我會說,你是一個「Java EE Web應用程序開發人員」。對於具體的技能,只需使用你在簡歷和/或面試中的房間。

0

當代碼知道它在EE上下文中時,它是java EE。類或接口只能在EE contxt中進行設置,並且在SE應用程序中沒有意義。

對於簡歷,只需使用您已使用的技術列出「Java」。