標簽:XML 沒有 sql targe 地址 請求 反射 結果 咖啡
原文鏈接
企業級應用,一般分爲三層:表示層(浏覽器),業務邏輯層(中間件),數據持久層
容器:是存放中間層應用的地方,裝ejb,servlet,jsp,靜態頁面的web容器
組件:是一段段可執行的代碼,是一個應用程序塊,但不是一個完整的應用程序,不可以單獨運行
JavaBean是用Java語言編寫的可重用的軟件組件
組件(咖啡豆)放入容器(咖啡杯)可以沖泡編譯成咖啡,供客人們品嘗運行!!!這比喻絕了
容器從某種意義上說其實就是一個可運行的Java寫的應用程序比如jar,不同的是Java編譯後的文件需要用命令行或者腳本啓動執行
servlet確切的說,就是web容器運行的Java組件
与普通的javaBean不同的是,servlet定义了一系列方法比如init(),destroy()供容器调用,主要目的是为了管理,当一个request請求被web容器截获之后容器分析该請求地址,然后通过一个配置文件中的映射表web.xml调用相应的servlet组件处理后将結果返还给客户端
web容器组件servlet出现后人们发现几乎沒有办法用一个非常直观的方式去编写页面毕竟页面是html语言编写的而让我们用一种流程式的处理方式去逐行教计算机如何写html代码太困难
在這種情況下JSP應運而生,JSP將Java代碼嵌入到html代碼內部然後存儲成.jsp文件,再由計算機編譯生成servlet存儲起來
所以JSP和servlet對于web容器來說其實是一種東西,雖然它們編寫遵循的標准有所不同極大的簡化了代碼的同時增加了代碼的可讀性,生産維護成本下降,JSP借鑒了ASP的很多的規範
隨著時間的推移,人們發現普通的JavaBean似乎並不能滿足企業級應用的需要,最典型的就是虛擬機提供的垃圾回收機制也就是GC不夠完善,可以優化的余地極大,在這種情況下EJB應運而生,和其它組件一樣,EJB不過是遵循了某些規範而已,但是這些規範更多的是爲充分利用機器並提高性能爲主要目的
EJB容器是爲了管理內存中活躍的對象
AppServer(應用服務器)
和數據庫的连接,这个严格说来是數據庫产商需要关心的事
关于AppServer如何与數據庫的连接但是也需要开发人员做一点事,因为 AppServer 不知道什么时候组件需要用到數據庫
同时也需要开发人员告诉AppServer他们使用的是什么數據庫,ip 地址等等
JDBC就是關于這一套東西的規範
表示層框架,名字來源于飛機的金屬框架
對于這一層來說,在JSP的html代碼中出現的java語句越少越好
因爲java代碼越少說明頁面處理的業務邏輯越少,也越合理
這是Struts最初的目的。
控制反转 IOC(Inversion of Control)
依赖注入 DI(Dependency Injection)
名字取材自ORM最早的一句玩笑话ORM就是OR-Mapping说用了ORM 之后,程序员就可以去冬眠了,而不需要操心那么多事
这里不得不说的是,该框架由于做得太好,以至于被J2ee招安,成为EJB3.0的一部分替代原有EJB2.X里面关于EntityBean而成为EJB ORM的工具,这里解释一下 ORM//OR-Mapping 中文名对象关系映射
关于 ORM,最高的境界应该是在 java 代码中不出现任何一句的 sql 语句
注意,是不包括 sql 语句
框架不是應用程序只是一堆組件的有序複合,應用時不能脫離于應用服務器單獨存在
腳本工具,用于生成JavaDoc文檔
測試工具,unix家族可不只有JUnit,還有其它版本
就是傳統的Java對象,也就是一個JavaBean,由虛擬機來掌握其生死
好的系統框架不應該在業務邏輯流程中出現new關鍵字
面相服務的框架
不說太多,這個屬于上上層建築
不過不妨記住我的一句話,可以幫助理解這個概念
面向什麽就是對什麽做封裝
面向對象就是對對象做封裝
面向服務類似,剩下的靠悟性
早期利用反射會降低效率,現在不會了
推薦網站
www.javaeye.com //java 视线论坛,Hibernate 国内的权威
dev2dev.bea.com //bea 的 dev2dev 社区,用 WebLogic 首选的好去处
www-128.ibm.com/developerworks //ibm developer works 社区,ibm 产品的老家
www.jdon.com //j 道,Jboss 国内相对讨论会多一点的地方,有自己的框架
www.matrix.org.cn //matrix,有自己的框架,很清新的论坛
jcp.org //JCP,前面说到过了
sourceforge.net // 开源的东西几乎这里都可以找到,除 java 外还有游戏共享等
saloon.javaranch.com // 我常去,人气不错
www.apache.org // 阿帕奇老家
www.jboss.com //Jboss 和 Hibernate 老家
www.springframework.org //Spring 老家
www.wiki.org // 非常好的百科站点,可惜国内被封,创始人加入了 Eclipse zone
www.google.com // 你要的这里有,不信?输入关键字再按一下那个靠左的白色按钮试试
書籍
《Thinking in Java》 // 实话说,一般,尤其是翻译后的版本,原版还行
《Java 教程》 // 电子工业出版社出版的那本,上下册,很厚,但翻译得不错
《21 天学通 Java》 // 入门极好,但是《21 天学通 j2ee》极烂,不要买
《Mastering EJB》 // 翻译过的书质量我不清楚,估计不怎样,请看原版書籍
《精通 Hibernate》 // 看清楚作者,孙卫琴,其它人的别买
其它的可以不用了,網絡上的遠比書上來得多,來得好,雖然也來得雜
最後的建議
一,不要做一個浮躁的人
二,學好英語,很重要
三,閱讀源代碼和文檔
四,共享源代碼,不要做一個功利的人
五,热爱 Java
標簽:XML 沒有 sql targe 地址 請求 反射 結果 咖啡
原文地址:https://www.cnblogs.com/lambertlt/p/14962124.html