Java企業(yè)版是全球Java社區(qū)中最大的困惑來源之一。奇怪的是,即使你有EE開發(fā)的經(jīng)驗(yàn),完整的畫面通常還是模糊的。在本文中,我們將進(jìn)一步了解JavaEE,解開疑惑。想要快速學(xué)習(xí)java,建議參加java培訓(xùn)班,有針對(duì)式的學(xué)習(xí),避免多走彎路。
JavaEE和JavaSE到底有什么不同?
首先,我們需要做出重要的區(qū)分。JavaEE是在JavaSE之上構(gòu)建的。與JavaSE不同,JavaEE在官方上“只是”一個(gè)規(guī)范,Oracle(如Glassfish參考實(shí)現(xiàn))和其他供應(yīng)商(如RedHat和IBM)提供了實(shí)際的實(shí)現(xiàn)。
雖然SE的API提供了Java語言的標(biāo)準(zhǔn)核心功能(Java.*包),但EE的API(javax.*)提供了對(duì)Java的擴(kuò)展,這些擴(kuò)展對(duì)于開發(fā)大規(guī)模應(yīng)用程序非常有用。話雖如此,但也可能有例外情況會(huì)造成額外的混亂。例如,Swing一開始是作為一個(gè)擴(kuò)展,最后作為核心Java的一部分。
那么EE規(guī)范實(shí)際上包括什么呢?
實(shí)際上,JavaEE是企業(yè)Java擴(kuò)展的總括規(guī)范。在其核心,它包括獨(dú)立的功能,如企業(yè)Javabean(EJB)、JavaServlet、RestAPI(JAX-RS)、上下文和依賴注入(CDI)等等。Java培訓(xùn)課程有關(guān)于java工具的使用,還有實(shí)操項(xiàng)目鞏固你所學(xué)的知識(shí),讓你擁有一定的項(xiàng)目經(jīng)驗(yàn),在以后找工作時(shí),比別人更有競爭力。
每個(gè)新版本都包括對(duì)個(gè)別技術(shù)的升級(jí),以及新的功能。例如,JavaEE8有望包含支持HTTP2.0的Servlet4.0規(guī)范。
因?yàn)镴ava是向后兼容的,所以你也可以在新的SE版本上運(yùn)行舊的EE版本,并享受新的語言特性。例如,在JavaSE8之上為lambdas和streams提供了一個(gè)兼容JavaEE7的實(shí)現(xiàn),因此你不需要等待JavaEE8來使用它。
在生產(chǎn)中調(diào)試JavaEE
對(duì)于分布式生產(chǎn)環(huán)境,尤其是微服務(wù)架構(gòu),一個(gè)反復(fù)出現(xiàn)的問題是了解生產(chǎn)中發(fā)生了什么。雖然不是特定于EE的,但是從一個(gè)服務(wù)開始的問題可能會(huì)在其他地方引起麻煩,然后你會(huì)獨(dú)自一人在日志中挖掘,試圖找到甚至可能不存在的線索。
我們正在采取一種新的方法來解決這類問題。每當(dāng)發(fā)生異常、日志錯(cuò)誤或警告時(shí),我們都會(huì)提供所有需要的數(shù)據(jù)來找出其根本原因。這包括錯(cuò)誤堆棧跟蹤中所有相關(guān)的源代碼和狀態(tài)。想學(xué)習(xí)有關(guān)java注解更多知識(shí)和技能,建議參加java培訓(xùn),課程實(shí)時(shí)更新,緊跟市場和企業(yè),讓你學(xué)到最新的java技能,提高市場競爭力。