Re: [J2EE] 初學者問題:JavaEE 到底是什麼?

作者: dream1124 (全新開始)   2014-07-03 01:31:53
※ 引述《aoisama (普通人)》之銘言:
: 原po是 web developer,熟悉的技術是PHP, Ruby on Rails
: 對於Java,一直以來最多是用 Java SE 做點小工具
: Java 是熱門語言,於是想說來學 Java web
: 還沒開始就被一堆名詞打昏
: 看了一堆介紹我還是不知道 JavaEE 到底是什麼?
可以想成是集合一系列技術標準所形成的平台
http://zh.wikipedia.org/wiki/Java_EE
當提供系統執行環境的廠商有支援 JavaEE 時,
意思就是以 JavaEE 技術為基礎往上加蓋開發的應用程式能在上面跑
: 我的理解是 JavaEE 簡單的說就是做 web 用的
比這再多一點點, 或者說是做更複雜的 web 系統
: jsp + servlet + EJB = JavaEE
: 這麼說來,SSH(Struts + Spring + Hibernate) 就不是 JavaEE了?
是的, 這系列技術不是 java 本身的標準,
但因為影響深遠, 所以是業界開發輕量系統的非正式標準
JavaEE 後來制定的標準也會參考這三個框架的思想和做法
: jsp + servlet + EJB 的組合是 M(EJB) V(JSP) C(servlet)?
這三個標準可以像你這樣分類,
但實際寫程式的時候未必直接以這些標準為基礎往上加蓋
jsp 上面常有 view 的框架或工具, servlet 上面會疊 MVC 框架
EJB 未必會用, 常被 Spring + Hibernate 的分工取代掉
: 但我看到的介紹卻在servlet這塊 render HTML....
除非他是為了不讓範例太複雜才這樣寫, 否則就是教材太舊了, 丟掉吧~
: SSH 好像比較像是正常的MVC架構,但是Spring在這邊的角色是幹嘛的?
: Struts: MVC framework
: Spring: dependency injection
: Hibernate: ORM
: 似乎主要的目的是做 dependency injection ,那就是說 DI 其實跟 MVC 沒關係不是?
Spring 是一個包山包海, 提供很多工具,
又像膠水一樣接合很多其他工具的框架,
依賴注入只是其中一種它能做到的重要事情
Spring 現在已發展成一個開源組織, 裡面有很多專案
都依附在 Spring 這個名稱下
: 只是幫助解決相依性問題?那麼Spring MVC又是怎麼一回事?
Spring 社群有自己的 MVC 框架
: 就我的理解做個結論:
: JavaEE 最重要的部分是 EJB ,只要有用到 EJB 就是 JavaEE
更精確的說法應該是這樣你的系統就是依賴在 EJB 技術上,
因此在有支援 JavaEE 的執行環境裡就能運行
: EJB 用來建構 model,對應到 SSH 的 Hibernate
: 所以我可以用 JSP + servlet + Hibernate 這樣的組合?
當然可以, 寫程式本來就不只是為了滿足特定標準
標準就像螺絲孔和螺絲, 是為了方便開發才會出現的,
這讓你知道要鎖進怎樣的洞就要先做出怎樣的螺絲,
不用轉進去才知道會不會壞掉
: JSP + servlet 是舊技術現在沒在用了但這是基礎還是要學?
是很舊的技術, 但很多後續的開發工具都是以此為基礎向上加蓋讓人省力
現在通常不會直接引用, 常會將自己的程式碼依賴在工具框架上,
然後工具框架再依賴在這些技術上
: 請問各位前輩我的理解是錯的嗎?

Links booklink

Contact Us: admin [ a t ] ucptt.com