最近正在學(xué)習(xí)java相關(guān)內(nèi)容。發(fā)現(xiàn)好多好文,記錄下來,等消化后再整理。
這篇文章<深入理解JVM內(nèi)幕>簡單解釋了JVM的所有組件以及運行原理,從字節(jié)碼到class file的定義,JVM結(jié)構(gòu),運行時數(shù)據(jù)區(qū)都有涉及,是了解JVM基本結(jié)構(gòu)的好文。
這篇文章JVM內(nèi)存模型詳細(xì)解釋了JVM的內(nèi)存模型結(jié)構(gòu),也是一篇入門的好文。
這篇文章內(nèi)存管理與垃圾回收簡單描述了java內(nèi)存管理與垃圾回收機(jī)制,雖不詳盡,但也非常有助于理解java內(nèi)存機(jī)制。
了解了一下Java的基礎(chǔ)知識,接下來就應(yīng)該了解一下框架的東西。現(xiàn)在主流的框架應(yīng)該是SpringMVC + Mybatis 了。為啥選擇SSM呢,根據(jù)網(wǎng)友的分析和自己的實踐。springmvc可以和spring無縫整合,這點是struts2沒法比的。還有就是struts2以前爆出的安全問題。
關(guān)于mybatis和hibernate。首先,mybatis學(xué)習(xí)成本不高。簡單,容易上手;其次,mybatis可以自己編寫sql語句,調(diào)優(yōu)靈活;至于缺點就是mybatis的可移植性沒那么好,hibernate對數(shù)據(jù)庫的封裝更深入,切換數(shù)據(jù)庫更容易。
- 這個專欄很好的介紹了mybatis的基本原理,非常值得深入細(xì)究,但是我發(fā)現(xiàn)博主對于二級緩存的介紹,我并沒有在mybatis源碼里面找到相應(yīng)的實現(xiàn)。即我在設(shè)置里面做如下配置,并沒有發(fā)現(xiàn)程序執(zhí)行有何不同。
<settings>
<!--cacheEnabled 設(shè)為true會創(chuàng)建cachingExcutor,但效果一樣,待研究。。 -->
<setting name="cacheEnabled" value="false"/>
</settings>
關(guān)于springmvc, 說實話我并沒有找到一個清晰,實用的教程,相對來說網(wǎng)上有個博客跟著開濤學(xué)SpringMVC還算可以,初學(xué)者一定得靜下心來去跟著學(xué)習(xí)。第一次搭建springmvc環(huán)境都是很艱苦的。
接下來就可以用springmvc + mybatis搭建一個可用的環(huán)境了,有篇好文值得推薦SSM環(huán)境搭建
以上就是我目前學(xué)習(xí)java參考的主要資料,當(dāng)然,還有一些java的基礎(chǔ)知識,術(shù)語,基本概念需要去學(xué)習(xí)了解。就不在這一一羅列。