欧美自拍小视频_国产片在线免费观看_中文字幕啪啪_成人av高清在线_欧美一区二区视频免费观看_亚洲国产激情


曙海教育集團(tuán)論壇開發(fā)語(yǔ)言培訓(xùn)專區(qū)JAVA語(yǔ)言開發(fā) → Java開發(fā)語(yǔ)言規(guī)律


  共有8680人關(guān)注過(guò)本帖樹形打印

主題:Java開發(fā)語(yǔ)言規(guī)律

美女呀,離線,留言給我吧!
wangxinxin
  1樓 個(gè)性首頁(yè) | 博客 | 信息 | 搜索 | 郵箱 | 主頁(yè) | UC


加好友 發(fā)短信
等級(jí):青蜂俠 帖子:1393 積分:14038 威望:0 精華:0 注冊(cè):2010-11-12 11:08:23
Java開發(fā)語(yǔ)言規(guī)律  發(fā)帖心情 Post By:2010-12-11 10:19:38

JAVA規(guī)律
      在尋找普遍規(guī)律之前,讓我們先看看Java的發(fā)展歷程:
      (1)SUN的主流技術(shù)的發(fā)展
      GUI界面:Java AWT API--〉Java Swing API
      JavaWeb: Servlet--〉JSP--〉JSF
      持久化層:JDBC--〉CMP EJB或BMP EJB或JDO
      分布式應(yīng)用:Socket--〉RMI--〉J2EE或Java Web Service

      (2)主要Java開源軟件的種類
      JavaWeb容器: Tomcat、Resin
      EJB容器: JBoss
      框架: Java Web框架(Struts)、業(yè)務(wù)邏輯層框架(Spring)
      持久化層: DAO、ORM映射工具(如Hibernate、OJB)
      工程管理工具:ANT、Eclipse
      日志輸出工具: Log4J
      JavaWeb服務(wù)工具:Apache Axis

      促成Java世界如此絢麗多姿的基本動(dòng)力在于以下核心思想:

      接口與實(shí)現(xiàn)

      不同的軟件系統(tǒng)之間通過(guò)接口來(lái)交互。軟件系統(tǒng)只對(duì)外公開接口,封裝實(shí)現(xiàn)細(xì)節(jié)。接口描述了軟件系統(tǒng)具備的功能,也就是指定軟件系統(tǒng)能夠做什么,但是沒有指明怎么去做。接口具有三大作用:

      (1)對(duì)于接口制訂者:SUN公司通過(guò)定義接口,來(lái)制定新的軟件系統(tǒng)的規(guī)范,例如Servlet規(guī)范、EJB規(guī)范和JDO規(guī)范,這些規(guī)范主要以接口的形式描述了軟件系統(tǒng)必須具備的功能。通過(guò)制定規(guī)范,SUN公司指引著Java技術(shù)的發(fā)展方向,同時(shí)給接口的實(shí)現(xiàn)者提供了自由發(fā)揮的廣闊空間。

      (2)對(duì)于接口實(shí)現(xiàn)者:接口實(shí)現(xiàn)者以特定的方式實(shí)現(xiàn)標(biāo)準(zhǔn)的規(guī)范。例如一些開放源代碼軟件,如Tomcat和Resin分別以不同的實(shí)現(xiàn)方式,實(shí)現(xiàn)了標(biāo)準(zhǔn)的Servlet規(guī)范。同一個(gè)接口允許有多種實(shí)現(xiàn),使得Java領(lǐng)域保持著百花齊放、百家爭(zhēng)鳴的良好勢(shì)頭,

      (3)對(duì)于接口調(diào)用者:接口調(diào)用者的程序具有良好的可移植性。以JavaWeb應(yīng)用為例,由于Tomcat和Resin遵守同樣的規(guī)范,因此用戶開發(fā)的JavaWeb應(yīng)用能夠順利的從Tomcat容器移植到Resin容器中。

      封裝與抽象

      封裝指的是在一個(gè)大系統(tǒng)中包含一個(gè)小系統(tǒng),大系統(tǒng)是建立在已有小系統(tǒng)的基礎(chǔ)上的更為復(fù)雜、功能更強(qiáng)大的系統(tǒng)。例如,Hibernate對(duì)JDBC API進(jìn)行了封裝,在Hibernate內(nèi)部依賴JDBC API來(lái)操縱數(shù)據(jù)庫(kù),但是Hibernate API比JDBC API具有更強(qiáng)大的功能,例如JDBC API只具有連接和操縱數(shù)據(jù)庫(kù)的功能,而Hibernate不僅具備這一功能,還具有對(duì)象-關(guān)系映射的功能。

      抽象是指從已經(jīng)存在的具有相似功能、但不同接口的系統(tǒng)中抽取共性,提煉出統(tǒng)一的接口。例如,Hibernate Transaction API是對(duì)JDBC
      Transaction API和Java Transaction API(JTA)的抽象!

      繼承與擴(kuò)展

      繼承與擴(kuò)展是一對(duì)孿生兄弟,當(dāng)兩個(gè)類之間存在繼承關(guān)系,那么必定也存在擴(kuò)展關(guān)系。繼承的優(yōu)點(diǎn)在于提高代碼的可重用性,子類會(huì)繼承父類的所有public和protected類型的屬性和方法,在子類的程序代碼中,無(wú)需重復(fù)定義這些屬性和方法。擴(kuò)展的優(yōu)點(diǎn)在于使軟件應(yīng)用具有可伸縮性,能夠在已有功能的基礎(chǔ)上擴(kuò)展新的功能。

      Struts框架充分運(yùn)用了擴(kuò)展思想。Struts框架中的許多類都是供應(yīng)用程序擴(kuò)展的,其中最主要的一個(gè)是Action類,在Action類中已經(jīng)定義了一些通用的方法,采用Struts框架的JavaWeb應(yīng)用將擴(kuò)展Action類,創(chuàng)建負(fù)責(zé)特定流程或業(yè)務(wù)的客戶化的Action類。

      對(duì)象的生命周期

      當(dāng)一個(gè)對(duì)象通過(guò)new語(yǔ)句創(chuàng)建后,它就會(huì)擁有一塊固定的內(nèi)存空間,如果沒有任何變量引用它,它就會(huì)結(jié)束生命周期,它占用的內(nèi)存空間隨時(shí)可能被JVM的垃圾回收器回收。

      應(yīng)用程序如何管理對(duì)象的生命周期呢?目前比較流行的做法是把對(duì)象存放在一個(gè)“范圍”內(nèi)。例如在JavaWeb應(yīng)用中,JavaBean可以存放在request、session或application范圍內(nèi)。每個(gè)范圍對(duì)應(yīng)一個(gè)對(duì)象,例如request范圍對(duì)應(yīng)HttpServletRequest對(duì)象,session范圍對(duì)應(yīng)HttpSession對(duì)象,application范圍對(duì)應(yīng)ServletContext對(duì)象。把一個(gè)JavaBean存放在request范圍內(nèi),實(shí)質(zhì)上是在HttpServletRequest對(duì)象的一個(gè)集合屬性中加入這個(gè)JavaBean的引用,這個(gè)集合屬性也被稱為HttpServletRequest對(duì)象的緩存。


      把一個(gè)JavaBean存放在request范圍內(nèi),等價(jià)于以下兩種說(shuō)法:
      把一個(gè)JavaBean加入到HttpServletRequest對(duì)象的緩存中
      把一個(gè)JavaBean和HttpServletRequest對(duì)象關(guān)聯(lián)

      當(dāng)JavaBean位于request范圍內(nèi),這個(gè)JavaBean的生命周期依賴于HttpServletRequest對(duì)象的生命周期,當(dāng)HttpServletRequest對(duì)象結(jié)束生命周期,并且這個(gè)JavaBean也不被應(yīng)用程序中的其他變量引用,那么它就會(huì)結(jié)束生命周期。

      那么HttpServletRequest對(duì)象本身的生命周期由誰(shuí)管理呢?這是由JavaWeb容器(也稱Servlet容器)來(lái)管理的。對(duì)于每個(gè)HTTP請(qǐng)求,JavaWeb容器會(huì)自動(dòng)創(chuàng)建一個(gè)HttpServletRequest對(duì)象,當(dāng)HTTP請(qǐng)求的響應(yīng)完畢,JavaWeb容器就會(huì)結(jié)束這個(gè)對(duì)象的生命周期。同理,當(dāng)每個(gè)HTTP會(huì)話開始,JavaWeb容器會(huì)自動(dòng)創(chuàng)建一個(gè)HttpSession對(duì)象,當(dāng)這個(gè)會(huì)話結(jié)束,JavaWeb容器就會(huì)結(jié)束這個(gè)對(duì)象的生命周期;當(dāng)每個(gè)JavaWeb應(yīng)用啟動(dòng)時(shí),JavaWeb容器會(huì)自動(dòng)創(chuàng)建一個(gè)ServletContext對(duì)象,當(dāng)這個(gè)應(yīng)用被關(guān)閉,JavaWeb容器就會(huì)結(jié)束這個(gè)對(duì)象的生命周期。

      在Hibernate中,在net.sf.hibernate.Session范圍內(nèi)加入一個(gè)持久化對(duì)象,實(shí)質(zhì)上是在Session對(duì)象的集合屬性中加入這個(gè)持久化對(duì)象的引用。以下幾種說(shuō)法是等價(jià)的:
      在Session范圍內(nèi)加入一個(gè)持久化對(duì)象
      在Session的緩存中加入一個(gè)持久化對(duì)象
      把一個(gè)持久化對(duì)象與Session關(guān)聯(lián)

      值得注意的是,Hibernate的Session不僅能管理緩存中持久化對(duì)象的生命周期,還會(huì)負(fù)責(zé)按照持久化對(duì)象的狀態(tài)的變化,來(lái)同步更新數(shù)據(jù)庫(kù)。

      集成開源軟件的基本步驟

      在開發(fā)Java應(yīng)用時(shí),為了提高開發(fā)效率,縮短開發(fā)周期,常常需要集成第三方提供的Java軟件,如ORM映射工具Hibernate、MVC框架Struts、日志工具Log4J和Web服務(wù)軟件Apache
      AXIS等。在自己的應(yīng)用中集成這些第三方軟件時(shí),大體步驟都很相似。
      (1) 把它們的JAR文件拷貝到classpath中。
      (2) 創(chuàng)建它們的配置文件(XML格式的文件或者Java屬性文件),這些配置文件通常也位于classpath中。
      (3) 在程序中訪問(wèn)它們的接口。

      接口與配置文件,是軟件系統(tǒng)對(duì)外公開的兩個(gè)主要窗口。無(wú)論是Tomcat、Struts還是Hibernate,都離不開配置文件,與編寫程序代碼相比,配置文件能提高軟件的可維護(hù)性,更加靈活的適應(yīng)用戶變化的需求,但是,配置文件不擅長(zhǎng)表達(dá)非常復(fù)雜的邏輯,在這種情況下,必須求助于程序代碼。作為軟件使用者,如果僅僅想快速掌握一個(gè)新的Java軟件的使用方法,而不打算深入了解軟件內(nèi)在原理和結(jié)構(gòu),無(wú)非就是了解它的接口以及配置文件的使用方法。當(dāng)然,如果想對(duì)軟件的運(yùn)用達(dá)到得心應(yīng)手的地步,還應(yīng)該了解軟件本身的實(shí)現(xiàn)原理和結(jié)構(gòu),而這些軟件無(wú)非就是通過(guò)抽象、封裝和實(shí)現(xiàn)等手段,從簡(jiǎn)單的小系統(tǒng)出發(fā),構(gòu)造出更加復(fù)雜,但是對(duì)外有著簡(jiǎn)潔統(tǒng)一的接口的大系統(tǒng)


支持(0中立(0反對(duì)(0單帖管理 | 引用 | 回復(fù) 回到頂部

返回版面帖子列表

Java開發(fā)語(yǔ)言規(guī)律








簽名
主站蜘蛛池模板: 麻豆一区二区三区精品视频 | 中国一级毛片在线观看 | 18禁无遮挡啪啪无码网站 | 欧美狠狠操 | 日韩欧美在线视频观看 | 国产人妻精品区一区二区三区 | h视频在线观看网站 | 亚洲精品一 | 一区二区三区在线 | 国产区一二三四区2021 | 午夜a级理论片在线播放 | 亚洲色图欧美 | 青青草原国产在线观看 | 国产日产一区二区三区四区五区 | 最近中文字幕大全在线电影视频 | 激情偷乱在线观看视频播放 | 成在人线av无码免费高潮水 | 国产h视频免费观看 | 免费成人小视频 | 久青草国产97香蕉在线视频 | 99久久一区二区精品 | 在线视频一区二区 | 高中生自慰www网站 髙清国产性猛交xxxand | 久久精品国产一区二区 | 欧美亚洲春色综合小说 | 国产精品无码av一区二区三区 | 无码精品视频一区二区三区 | 日本人成在线视频免费播放 | 欧美国产日韩1区俺去了 | 日本一本一道久久香蕉免费 | 综合99| 国产亚洲精品一区二区三区 | 国产成人亚洲综合无码品善网 | 北岛玲日韩精品一区二区三区 | 毛片网站在线观看 | 看欧美毛片一级毛片 | 521香蕉永久播放地址 | 中文字幕欧美亚洲 | 久久九| 深夜a级毛片免费无码 | 四虎影视永久 |