freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

java高手的成長之路-資料下載頁

2025-08-12 09:36本頁面

【導(dǎo)讀】JAVA高手的成長之路。學(xué)java不知不覺也已經(jīng)三年了。從不知java為何物到現(xiàn)在一個小小的j2ee項目經(jīng)理。雖說不上此道高手,大概也算有點斤兩了吧。每次上網(wǎng),泡bbs逛論壇,沒少去java相關(guān)的版面。總體感覺初學(xué)者多,高手少,精通的更少。由于我國高等教育制度教材陳舊,加上java自身發(fā)展不過十年左右的時間。還有一個很重要的原因就是java這門語言更適合商業(yè)應(yīng)用。所以高校里大部分博士老師們對此語言的了解甚至不比本科生多。在這種環(huán)境下,很多人對java感到茫然,不知所措,不懂java能做什么。即便知道了java很有用,也不清楚該從哪里入手。所以就有了java入門難這一說法。java是一種面向?qū)ο笳Z言,真正的面向?qū)ο螅魏魏瘮?shù)和變量都以類封裝起來。知道了什么是java,那自然就會對java能干什么感興趣。這是java和c++最大的不同,java所有的源碼以及編譯后的文件都以類的形式存在。這樣做使得整個程序的結(jié)構(gòu)異常清晰,明了。這已經(jīng)很好了,安全,這是java的最突出的優(yōu)點。針對不同領(lǐng)域內(nèi)的應(yīng)用,sun

  

【正文】 的 那部分也稱為表示層 //JSP+Servlet 那么表示層框架是干什么的呢? 早先大規(guī)模應(yīng)用 JSP 的時候,人們發(fā)現(xiàn), JSP 里面充斥著邏輯代碼與數(shù)據(jù) 可讀性極差,于是人們借用很早很早以前的 MVC 模式的思想 把表示層組件分為 VViewer,也就是 JSP MModel模型,一般來說是一個 JavaBean CController 控制器,一般來說是一個 Servlet 所有人通過 JSP 和服務(wù)器打交道,發(fā)送請求, Viewer 把這個請求轉(zhuǎn)發(fā)給 Controller Controller 通過調(diào)用一個 Model來處理該請求,然后返回數(shù)據(jù)到 Viewer 這么一個過程,從而達(dá)到數(shù)據(jù)與邏輯的剝離,增強(qiáng)代碼可讀性,降低維護(hù)成本 而幫助人們實現(xiàn)這一系列東西的就是 Struts 框架,就是這么一個東西 Struts 的競爭對手主要是產(chǎn)商們極力倡導(dǎo)的 JSF 也就是 Java Server Faces 但是由于 Struts 出道時間早,所以應(yīng)用比較多 JSF 則是產(chǎn)商們大力支持,前景看好 對于這一層來說,在 JSP 的 html代碼中出現(xiàn)的 java 語句越少越好 因為 java 代碼越少說明頁面處理的業(yè)務(wù)邏輯越少,也越合理 這也是 Struts 最初的目的,記住這話 Spring 大名鼎鼎的 Spring 框架 有人曾說 2020 年一片叫春之聲,指的就是該框架 Spring 起源于 Rod Johnson 的《 Expert OneonOne J2EE Design and Development》一書 Rod Johnson 認(rèn)為, J2ee 里面的那一套 //尤其是 ejb 太重了,對于單機(jī)的系統(tǒng)來說,沒有必要使用那么復(fù)雜的東西 于是就開始設(shè)計并引導(dǎo) Spring 小組開發(fā)出這樣一個構(gòu)架 不能不說他是個天才,因為的的確確不是所有的系統(tǒng)都是跨多服務(wù) 器的 沒有必要把一個簡單的系統(tǒng)設(shè)計得那么復(fù)雜 //天才的那幾個共性又體現(xiàn)出來了 Spring 從誕生之日起就是針對 EJB 的,力爭在不少應(yīng)用上取代 EJB 而它也確實達(dá)到了這個目的 現(xiàn)在包括 WebLogic 等主流應(yīng)用服務(wù)器還有主流 IDE 都開始逐漸接受該框架 并提供相應(yīng)支持 23 提到 Spring 就不能不說控制反轉(zhuǎn) Ioc//Inversion of Control 和依賴注射 DI//Dependency Injection 什么叫控制反轉(zhuǎn)呢? 套用好萊塢的一句名言就是:你呆著別動,到時我會找你。 什么意 思呢?就好比一個皇帝和太監(jiān) 有一天皇帝想幸某個美女,于是跟太監(jiān)說,今夜我要寵幸美女 皇帝往往不會告訴太監(jiān),今晚幾點會回宮,會回哪張龍床,他只會告訴太監(jiān)他要哪位美女 其它一切都交由太監(jiān)去安排,到了晚上皇帝回宮時,自然會有美女出現(xiàn)在皇帝的龍床上 這就是控制反轉(zhuǎn),而把美女送到皇帝的寢宮里面去就是注射 太監(jiān)就是是框架里面的注射控制器類 BeanFactory,負(fù)責(zé)找到美女并送到龍床上去 整個后宮可以看成是 Spring 框架,美女就是 Spring 控制下的 JavaBean 而傳統(tǒng)的模式就是一個饑渴男去找小姐出 臺 找領(lǐng)班,幫助給介紹一個云云,于是領(lǐng)班就開始給他張羅 介紹一個合適的給他,完事后,再把小姐還給領(lǐng)班,下次再來 這個過程中,領(lǐng)班就是查詢上下文 Context,領(lǐng)班的一個職能就是給客戶找到他們所要的小姐 這就是 lookup()方法,領(lǐng)班手中的小姐名錄就是 JNDI//Java Naming and Directory Interface 小姐就是 EJB,饑渴男是客戶端,青樓是 EJB 容器 看到區(qū)別了么?饑渴男去找小姐出臺很麻煩,不僅得找,用完后還得把小姐給還回去 而皇帝爽翻了,什么都不用管,交給太監(jiān) 去處理,控制權(quán)轉(zhuǎn)移到太監(jiān)手中去了 而不是皇帝,必要時候由太監(jiān)給注射進(jìn)去就可以了 看到 Spring 的美妙了吧, Spring 還提供了與多個主流框架的支持 可以和其它開源框架集成 Hibernate 名字取材自 ORM 最早的一句玩笑話 //ORM 就是 ORMapping 說用了 ORM 之后,程序員就可以去冬眠了,而不需要操心那么多事 這里不得不說的是,該框架由于做得太好,以至于被 J2ee 招安,成為 的一部分 替代原有 里面關(guān)于 Entity Bean 而成為 EJB ORM 的工具 這里解 釋一下 ORM//ORMapping 中文名 對象關(guān)系映射 什么意思呢?我們知道傳統(tǒng)的數(shù)據(jù)庫都是關(guān)系型的 一條條記錄以表格的形式儲存,而表與表之間充斥著是關(guān)系 /關(guān)聯(lián) 比如說一個人,名字 zhaoce,性別男,年齡 23 那么數(shù)據(jù)庫中是這么儲存的 姓名 性別 年齡 zhaoce m 23 某女 f 22 而實際應(yīng)用服務(wù)器中的實體都是以對象的形式存在,一個個對象 zhaoce 是以這種形式存在的 Human human=new Human()。 (zhaoce) (m)。 24 (23)。 這樣的,那么我們知道,傳統(tǒng)的 JDBC 是通過一個二維字符串將數(shù)據(jù)取出 需要我們自己將其包裝成對象,在存入的時候,我們還需要將對象拆開 放入 sql語句中 //Insert into Huamn values(39。zhaoce39。,39。m39。,23) 然后執(zhí)行該 sql語句 太麻煩太麻煩, ORM 理念的提出改變了這一切, ORM 認(rèn)為,這些東西應(yīng)該由框架來做 而不是程序員,程序員做他該做的,不要為這種破事分心,還測試半天 于是就出現(xiàn)了 Hibernate, JDO, TopLink 等等,甚至 . 里面也有 過去一段時間是 Hibernate 和 JDO 爭風(fēng),現(xiàn)在看來 Hibernate 逐漸成為主流并被官方接納 成為規(guī)范標(biāo)準(zhǔn)之一,替代掉原來 的 ORM EntityBean TopLink 則是 Oracle 公司推出和 Oracle 數(shù)據(jù)庫結(jié)合的一種 ORM 商業(yè)用軟件,貴且復(fù)雜,不過正在逐漸開放 而象表示層一樣,這一種專門面對數(shù)據(jù)層的代碼也被稱為數(shù)據(jù)持久層 所以數(shù)據(jù)持久層這一概念有時不僅僅指代數(shù)據(jù)庫 關(guān)于 ORM,最高的境界應(yīng)該是在 java 代碼中不出現(xiàn)任何一句的 sql語句 注意,是不包括 sql語句, Hibernate 的 hql 以及 ejb 的 ejbql不算在內(nèi) 至于出現(xiàn)不出現(xiàn) hql/ejbql 等替代 ql,這要視具體情況而定,不過最好也是不出現(xiàn) 當(dāng)然最后所說的過分理想的情況往往不現(xiàn)實,總之一句話 以 sql為代表的 ql/*還有 hql,ejbql等 */語句在代碼中出現(xiàn)得越少越好 記住這話,現(xiàn)在未必能夠理解,學(xué)了以后就懂了 這三個是目前最為常用的框架 而目前光已公布的框架就 500 還在不停增加中,不可能一一列舉,有興趣的可以去 看相應(yīng)文檔 要指出的是框架不是應(yīng)用程序 只是一堆組件的有序復(fù)合,應(yīng)用時不能脫離于應(yīng)用服務(wù)器單獨存在 給初學(xué)者之九:收尾 最后一篇介紹幾個常見的概念 設(shè)計模式 這可不僅是 java 獨有 我看的書就是 c++和 smalltalk 例子的 先說說什么是設(shè)計模式 模式是什么?模式是經(jīng)驗的總結(jié),潛規(guī)則的抽象 什么意思呢?比如說我們坐飛機(jī),上飛機(jī)前需要經(jīng)過幾個步驟 什么安檢領(lǐng)取登機(jī)牌之類的,這一套流程能不能改呢? 可以,但為什么幾乎全世界的航空公司登機(jī)前都是這一套流程呢? 因為航空公司經(jīng)過長期實踐之后得 出了一堆結(jié)論和經(jīng)驗 25 并認(rèn)為這樣做才是最安全,或說是最有效率的 這就是模式,模式是編程高手之間交流的橋梁 兩個編程高手通過統(tǒng)一命名的模式了解對方的思想 當(dāng)然不借助模式可不可以?當(dāng)然可以,只是模式無處不在,你不知道而已 又比如吃飯,每吃一口飯,我們要先端碗,拿筷子,張嘴,塞飯入口,咀嚼最后吞咽 這就是一套模式,我們給這套模式命名為吃飯 那么當(dāng)老爸叫吃飯的時候,我們就能明白什么意思 而不用老爸進(jìn)來囈囈啊啊并比畫上半天,啞語也不是這么用的 這就是模式,已知的模式有 400 多種 //好象更多,不記得了 比如數(shù)據(jù)庫有數(shù)據(jù)庫的設(shè)計模式,編程有編程的模式等等 面向?qū)ο笥谐S玫?21 種模式,需要掌握,主要分為創(chuàng)建,行為,結(jié)構(gòu)三類 J2ee 有 J2ee 的模式, Sun 公司出了一本書叫《 J2EE 核心模式》可以拿來看看 必需要指明的是,模式不是規(guī)范,比如吃飯模式 沒有人規(guī)定你吃飯非得要那么吃,你可以端碗,上拋,張嘴在下落后連碗一起吞咽 這也可以,只要你愿意,同樣,只要你愿意,你就可以不遵循模式 模式之外還有反模式,學(xué)模式不可定勢,不要學(xué)死,活學(xué)活用,無招勝有招才是最高境界 JavaDoc 文檔工具,極其好 用 可以根據(jù)注釋自動生成 HTML 文檔 Ant 98 年,有一位程序員在從歐洲飛回美國的飛機(jī)上想到了這么一個東西 從而改變了整個世界,他的名字叫 James Duncan Davidson 組織管理工具,可以這么描述它 比如你想在編譯之后自動再次生成 JavaDoc 那么你只需要編輯 Ant 腳本 //對,就像 Windows 腳本那樣 然后批處理就可以了,不過現(xiàn)在 Ant 已經(jīng)廣泛集成到 IDE 中去 不需要自己手動編寫,不過如果想要炫炫,據(jù)說此招百試不爽 JUnit 測試工具, Unit 家族可不只有 JUnit 還有其它版本的,這個不細(xì)說,具體實踐一下就明白了 POJO //Plain Old Java Object 就是傳統(tǒng)的 Java 對象,也就是一個 JavaBean 由虛擬機(jī)來掌握其生死 26 常用的兩個管理構(gòu)架 /規(guī)范是 Spring 和 EJB 容器 命名由來是某人 //名字我忘了 覺得我們使用了太多的規(guī)范,以至于我們都忘記了純粹的 java 對象 以至于我們都忽略了它的存在,所以叫了這么一個名字 以喚醒人們的記憶,這個意義上來說 EJB 其實不能算是 POJO 畢竟遵循了一堆的接口,但是不管怎樣,接口歸接 口,還是沒有繼承類 沒有被強(qiáng)加什么 //遵循可以寫空方法假遵循 所以說還是 POJO 也對 但是由于這種東西缺乏管理,不象 Servlet 有專門的容器管理并繼承了一定的類 而沒有管理的對象在虛擬機(jī)中是很危險的,因為垃圾回收機(jī)制各個虛擬機(jī)不同 而且也不怎樣,極有可能長時間不回收,這樣在企業(yè)級的應(yīng)用中呢 就有可能造成內(nèi)存大量被占用從而死機(jī),毫無疑問,這種機(jī)制需要優(yōu)化 這種優(yōu)化就是通過 EJB 容器或者 Spring 構(gòu)架來實現(xiàn) 這么做還有一個好處就是迫使程序員對每一個類做封裝 強(qiáng)迫他做管理,以達(dá)到防止內(nèi)存泄露 的目的,內(nèi)存泄露最經(jīng)常出現(xiàn)的錯誤就是 引用未釋放,引用最典型體現(xiàn)在 new 這個關(guān)鍵字上, new 得越多引用得越多 隨著時間地增長,有可能導(dǎo)致循環(huán),不停 new new new new new..... 其中哪怕只要有一個 new 處理不當(dāng),虛擬機(jī)無法回收內(nèi)存 那就極有可能完蛋,而且這種小 bug 越是在大的項目越是難以找到 有可能因為一個人而影響整個項目組,所以不妨記住我的一條經(jīng)驗 好的系統(tǒng)框架不應(yīng)該在業(yè)務(wù)邏輯流程中出現(xiàn) new 關(guān)鍵字 現(xiàn)在不理解也無所謂,將來有一天會明白的 SOA 面向服務(wù)的構(gòu)架 不 說太多,這個屬于上上層建筑 不過不妨記住我的一句話,可以幫助理解這個概念 面向什么就是對什么做封裝 面向?qū)ο缶褪菍ο笞龇庋b 面向服務(wù)類似,剩下的靠悟性 反射 新增功能,非常強(qiáng)大 通過反射,程序可以解析出類本身的屬性也就是變量 //注意這里說的屬性不是 . 里面的屬性,我不喜歡微軟造的新名詞,亂 還有行為也就是方法,然后通過 invoke()方法調(diào)用該方法 甚至可以新增對象等, java 首創(chuàng),本是其它語言所沒有的 后來被微軟抄了去,利用該功能,開源框架廣泛受益并大量采用,近乎瘋狂 地使用 27 具體就不說了,最后要指出的是,有一種說法是利用反射會降低效率 在早期的時候,的確是,現(xiàn)在不會了,放心使用 容器 以后的版本在 J2SE 中都出現(xiàn)了容器 各位甚至可以自己嘗試用標(biāo)準(zhǔn)庫去使用容器 推薦網(wǎng)站 //java 視線論壇, Hibernate 國內(nèi)的權(quán)威 //bea 的 dev2dev 社區(qū),用 WebLogic 首選的好去處 , ibm 產(chǎn)品的老家 //j道, Jboss 國內(nèi)相對討論會多一點的地方,有自己的框架 //matrix,有自己的框架,很清新的論壇 //JCP,前面說到過了 //開源的東西幾乎這里都可以找到,除 java 外還有游戲共享等 //我常去,人氣不錯 //阿帕奇老家 //Jboss 和 Hibernate 老家 //Spring
點擊復(fù)制文檔內(nèi)容
試題試卷相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1