鄭州尚學(xué)堂Java培訓專(zhuān)家發(fā)現很多的同學(xué)在學(xué)習JavaEE的路上走得很坎坷,夜以繼日的敲代碼學(xué)習,卻發(fā)現事倍功半,有的時(shí)候遇到一個(gè)瓶頸真的很抓狂,鄭州尚學(xué)堂Java培訓專(zhuān)家為大家整理了一篇很值得借鑒的學(xué)習路線(xiàn)圖文章,希望大家學(xué)習路上一帆風(fēng)順!
一、Java核心
這是學(xué)習Java的基礎,掌握程度的深淺甚至直接影響后面的整個(gè)學(xué)習進(jìn)程。
Java的核心主要包括幾個(gè)部分:
1、初級的有語(yǔ)法基礎、面向對象思想。
學(xué)習任何一門(mén)語(yǔ)言語(yǔ)法都是必須的,因為Java的接近自然語(yǔ)言,也是一種相對比較容易學(xué)的語(yǔ)言。同時(shí)面向對象編程更是其核心思想,要理解其實(shí)只要記住一句話(huà)就行了,那就是:一切皆是對象。
2、中級的IO流、多線(xiàn)程、反射及注解等。
IO流程、多線(xiàn)程等是相對比較高級一點(diǎn)的了,通過(guò)學(xué)習我們會(huì )發(fā)現這些都很有用而且很有趣。例如我們可以讀取一個(gè)Excel文件、將一個(gè)文件分離,做一個(gè)時(shí)鐘、使用多個(gè)線(xiàn)程發(fā)送郵件等等很多有意思的事。另外反射及注解更是后面流行框架SSH等的基礎,在使用中你便會(huì )慢慢感受到它的無(wú)窮魅力。
3、高級一點(diǎn)的就是設計模式和框架之類(lèi)了。
要學(xué)習好一門(mén)語(yǔ)言,僅僅會(huì )使用還是不夠的,我們不僅要深入研究其原理,而且還要找到其一些共性的東西,從而減少反復的勞動(dòng),讓代碼可重用、更可靠且更容易被別人理解。
二、前端Web
現在來(lái)說(shuō)Java*的應用還是Web開(kāi)發(fā)。那么作為Web開(kāi)發(fā),對于前臺的知識的學(xué)習也是必須的,當然并不是一定要按照前端工程師的標準去要求。但是一些基礎的知識也是必須要掌握的,畢竟Web應用是前臺和后臺的一個(gè)交互的過(guò)程。像HTML、CSS、Javascript等都是基礎的知識,另外作為開(kāi)發(fā)人員對目前*的Javascript框架Juery更是必學(xué)不可的。
三、數據庫
有人說(shuō),所有的應用無(wú)非就是數據的輸入、處理到輸出的過(guò)程。期間同時(shí)可能還會(huì )涉及到數據的存儲問(wèn)題。對于結構化的數據,我們常用的還是像Oracle、Mysl和PostgreSL之類(lèi)的關(guān)系型數據庫。同時(shí)針對數據庫編程還是PL/SL需要學(xué)習。使用Java訪(fǎng)問(wèn)數據庫的話(huà)還有JDBC。那么對于非結構化的數據以及大數據該如何處理呢?其實(shí)這里也已經(jīng)有了非常成熟的解決方案了,那便是Hadoop。就Hadoop而言他并不是一種思想,更多是一個(gè)實(shí)現了Mapreduce模式的框架。
四、J2EE
好了,前面這么多準備的工作。下面我們進(jìn)入正題。作為Java開(kāi)發(fā),CoreJava是核心,而作為JavaWeb開(kāi)發(fā),我認為Servlet才是核心。Servlet是服務(wù)器端的Java應用程序,但是與普通的Java應用程序不同的是,它是由web服務(wù)器來(lái)加載啟動(dòng),即我們常說(shuō)的Servlet,如Tomcat便是servlet容器。另外談到J2EE開(kāi)發(fā),這里有一個(gè)重要的模型不得不提一下,很多人其實(shí)已經(jīng)想到了,那便是MVC(模型-視圖-控制器)模型。在傳統的web開(kāi)發(fā)中,往往是JavaBean充當模型、JSP做視圖而Servlet作為控制器。
五、框架
說(shuō)到框架,其實(shí)已經(jīng)提到了著(zhù)名的MVC模型,SSH(Struts+Spring+Hibernate)就是一個(gè)非常好的實(shí)現。對于每一個(gè)框架的作用,我想就不用多說(shuō)了。另外還有工作流開(kāi)發(fā)的JBPM,搜索引擎Lucence及使系統對外提供接口的webservice應用組件等都是應該要掌握的。
六、服務(wù)器
關(guān)于服務(wù)器,像tomcat、jboss、weblogic及websphere等便不提了,因為太普遍了。這里要說(shuō)的是Nginx,
Nginx (engine x)是一個(gè)高性能的HTTP和反向代理服務(wù)器。其以占有內存少,并發(fā)能力強而著(zhù)稱(chēng),連新浪、網(wǎng)易、騰訊這類(lèi)*企業(yè)也在使用,所以還有什么理由不去學(xué)它呢?
七、工具
這里主要介紹幾個(gè)開(kāi)發(fā)輔助工具。如日志工具Log4j、測試工具Junit、版本管理工具SVN還有項目管理maven等。
另外還有第三方插件Ectable。
八、項目示例
Springside是以Spring框架為核心的J2EE應用參考示例,是JavaEE中的比較主流的技術(shù)選型及*實(shí)踐的總結與演示,非常值得一看。把它看透了,J2EE就差不多了甚至是比較厲害的了。
鄭州尚學(xué)堂Java培訓專(zhuān)家覺(jué)得,說(shuō)到底,對于技術(shù)的學(xué)習,有一個(gè)規則是通用的,那便是實(shí)踐。把學(xué)習到的東西馬上用起來(lái)做出一個(gè)示例來(lái),我認為是一種比較好的學(xué)習方法。首先它是對零散知識的一個(gè)自然總結,另外通過(guò)一些小示例的實(shí)踐,可以增加學(xué)習的興趣。而且可以通過(guò)示例,深入學(xué)習其實(shí)現的原理,加深掌握的程度且能更快的應用到實(shí)際開(kāi)發(fā)中,提高工作效率。