隨筆-29  評(píng)論-5  文章-0  trackbacks-0
           
          來自于:http://developer.51cto.com/art/200906/132121.htm
          在*.hbm.xml必須聲明的< generator>子元素是一個(gè)Java類的名字,用來為該持久化類的實(shí)例生成唯一的標(biāo)識(shí)。
          < generator class="sequence"/>

          這是一個(gè)非常簡單的接口;某些應(yīng)用程序可以選擇提供他們自己特定的實(shí)現(xiàn)。當(dāng)然,Hibernate提供了很多內(nèi)置的實(shí)現(xiàn)。下面是一些內(nèi)置生成器的快 捷名字:

          increment(遞增)
          用于為long, short或者int類型生成唯一標(biāo)識(shí)。只有在沒有其他進(jìn)程往同一張表中插入數(shù)據(jù)時(shí)才能使用。 在集群下不要使用。

          identity
          對(duì)DB2,MySQL, MS SQL Server, Sybase和HypersonicSQL的內(nèi)置標(biāo)識(shí)字段提供支持。返回的標(biāo)識(shí)符是long, short 或者int類型的。

          sequence (序列)
          在DB2,PostgreSQL, Oracle, SAP DB, McKoi中使用序列(sequence),而在Interbase中使用生成器(generator)。返回的標(biāo)識(shí)符是long, short或者 int類型的。

          hilo (高低位)
          使用一個(gè)高/低位算法來高效的生成long, short或者 int類型的標(biāo)識(shí)符。給定一個(gè)表和字段(默認(rèn)分別是是hibernate_unique_key 和next_hi)作為高位值得來源。高/低位算法生成的標(biāo)識(shí)符只在一個(gè)特定的數(shù)據(jù)庫中是唯一的。在使用JTA獲得的連接或者用戶自行提供的連接中,不要 使用這種生成器。

          seqhilo(使用序列的高低位)
          使用一個(gè)高/低位算法來高效的生成long, short或者 int類型的標(biāo)識(shí)符,給定一個(gè)數(shù)據(jù)庫序列(sequence)的名字。

          uuid.hex
          用一個(gè)128-bit的UUID算法生成字符串類型的標(biāo)識(shí)符。在一個(gè)網(wǎng)絡(luò)中唯一(使用了IP地址)。UUID被編碼為一 個(gè)32位16進(jìn)制數(shù)字的字符串。

          uuid.string
          使用同樣的UUID算法。UUID被編碼為一個(gè)16個(gè)字符長的任意ASCII字符組成的字符串。不能使用在 PostgreSQL數(shù)據(jù)庫中

          native(本地)
          根據(jù)底層數(shù)據(jù)庫的能力選擇identity, sequence 或者h(yuǎn)ilo中的一個(gè)。

          assigned(程序設(shè)置)
          讓應(yīng)用程序在save()之前為對(duì)象分配一個(gè)標(biāo)示符。

          foreign(外部引用)
          使用另外一個(gè)相關(guān)聯(lián)的對(duì)象的標(biāo)識(shí)符。和< one-to-one>聯(lián)合一起使用。

          <class name="onlyfun.caterpillar.User" table="USER"> 

          <id name="id" type="string" unsaved-value="null"> 

           
          <column name="USER_ID"/> 

           
          <generator class="uuid.hex"/> 

          </id>
          posted @ 2010-06-07 22:07 豪情 閱讀(157) | 評(píng)論 (0)編輯 收藏
          package org.apple.hibernate;

          import org.hibernate.cfg.Configuration;
          import org.hibernate.tool.hbm2ddl.SchemaExport;



          class UserTest{ 
          public static void main(String[] args) throws Exception{            
             
          //配置環(huán)境,分析xml映射文件
             Configuration conf= new Configuration().addClass(User.class);
             
             
          //生成并輸出sql到文件(當(dāng)前目錄)和數(shù)據(jù)庫
             SchemaExport dbExport=new SchemaExport(conf);
             dbExport.create(
          truetrue);
          }
          posted @ 2010-06-06 22:55 豪情 閱讀(216) | 評(píng)論 (0)編輯 收藏
          來自于:http://www.yesky.com/404/1827904.shtml
          作為老師,筆者經(jīng)常要制作一些教育影片,如果采取常規(guī)方式抓取(如用SnagIt抓取),生成的文件體積往往過大,不便于傳送。而Camtasia Studio不僅能方便地實(shí)現(xiàn)視頻錄制,而且由于采用TSCC的編碼算法,錄制的視頻文件體積小巧,質(zhì)量也不遜于同類軟件,非常適合需要錄制游戲視頻和制作教學(xué)影片的朋友使用。

            Camtasia Studio 檔案

            軟件信息:23.7MB/共享軟件
          下載地址:天極網(wǎng)下載頻道
          軟件亮點(diǎn):可以錄制屏幕中的各種動(dòng)作,并保存為體積較小的視頻文件, 而且它的編輯功能也不弱。

            我們以錄制教學(xué)影片為例來介紹它的使用。

            一、必要的設(shè)置

            我們主要使用的是Camtasia Studio中的組件——Camtasia Recorder,在抓取前有必要對(duì)Camtasia Recorder設(shè)置一番。

            啟動(dòng)Camtasia Studio,點(diǎn)擊“Tools→Camtasia Recorder”即可打開錄制視頻的組件窗口(圖1)。


          圖1

            點(diǎn)擊“Tools→Options”,打開設(shè)置窗口,選擇“Hotkeys”標(biāo)簽,然后將“Record/Pause hotkey”(錄制/暫停熱鍵)設(shè)置為“Ctrl+Shift+Alt+1”,將“Stop hotkey”(停止熱鍵)設(shè)置為“Ctrl+Shift+Alt+2”,這樣在制作影片時(shí)只要按下相應(yīng)的熱鍵就可以進(jìn)行錄制、停止等操作。

            熱鍵設(shè)置完畢后,再選擇“File”標(biāo)簽,選擇“Automatic File Nam Prefile”項(xiàng),在后面的框中輸入“教學(xué)影片-”,最后再設(shè)置“Output”(文件保存位置),例如保存在d:"教學(xué)影片中。其它項(xiàng)使用其默認(rèn)設(shè) 置。

            另外,由于抓取的是整個(gè)操作界面,最后我們還要選擇 “Capture→Input→Screen”,這樣在錄制時(shí)就會(huì)錄制整個(gè)屏幕的內(nèi)容了,如果還想在錄制視頻時(shí)順便錄制音頻、鼠標(biāo)軌跡,請(qǐng)分別選擇菜單 “Effects→Audio→Record Audio”和“Effects→Cursor→Show Cursor”。



          posted @ 2010-06-04 21:52 豪情 閱讀(642) | 評(píng)論 (0)編輯 收藏
               摘要: 來自于:http://hi.baidu.com/universeioi/blog/item/ab2ee5efab85493127979154.html Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ -->前面我們所定義的屬性都是幾本的...  閱讀全文
          posted @ 2010-06-03 21:00 豪情 閱讀(689) | 評(píng)論 (0)編輯 收藏
          http://sarin.javaeye.com/blog/593207
          posted @ 2010-06-02 14:29 豪情 閱讀(170) | 評(píng)論 (0)編輯 收藏

          很多網(wǎng)友問我學(xué)習(xí)Java有沒有什么捷徑,我說“無他,唯手熟爾”。但是我卻很愿意將自己學(xué)習(xí)的一些經(jīng)驗(yàn)寫出來,以便后來者少走彎路,幫助別人是最大的快樂嘛!
          要想學(xué)好Java,首先要知道Java的大致分類。我們知道,自從Sun推出Java以來,就力圖使之無所不包,所以Java發(fā)展到現(xiàn)在,按應(yīng)用來分主要分為三大塊:J2SE,J2ME和J2EE,這也就是Sun ONE(Open Net Environment)體系。J2SE就是Java2的標(biāo)準(zhǔn)版,主要用于桌面應(yīng)用軟件的編程;J2ME主要應(yīng)用于嵌入是系統(tǒng)開發(fā),如手機(jī)和PDA的編程;J2EE是Java2的企業(yè)版,主要用于分布式的網(wǎng)絡(luò)程序的開發(fā),如電子商務(wù)網(wǎng)站和ERP系統(tǒng)。J2SE開發(fā)桌面應(yīng)用軟件比起VC,VB,DEPHI這些傳統(tǒng)開發(fā)語言來說,優(yōu)勢好象并不明顯。J2ME對(duì)于初學(xué)者來說,好象又有點(diǎn)深?yuàn)W,而且一般開發(fā)者很難有開發(fā)環(huán)境。所以現(xiàn)在應(yīng)用最廣泛又最好學(xué)的就是J2EE了。J2EE又包括許多組件,如Jsp,Servlet,JavaBean,EJB,JDBC,JavaMail等。要學(xué)習(xí)起來可不是一兩天的事。
          那么又該如何學(xué)習(xí)J2EE呢?當(dāng)然Java語法得先看一看的,I/O包,Util包,Lang包你都熟悉了嗎?然后再從JSP學(xué)起。如果你學(xué)過HTML,那么事情要好辦的多,如果沒有,那你快去補(bǔ)一補(bǔ)HTML基礎(chǔ)吧。其實(shí)JSP中的Java語法也不多,它更象一個(gè)腳本語言,有點(diǎn)象ASP。然后你就該學(xué)一學(xué)Servlet了。Servlet就是服務(wù)器端小程序,他負(fù)責(zé)生成發(fā)送給客戶端的HTML文件。JSP在執(zhí)行時(shí),也是先轉(zhuǎn)換成Servlet再運(yùn)行的。雖說JSP理論上可以完全取代Servlet,這也是SUN推出JSP的本意,可是Servlet用來控制流程跳轉(zhuǎn)還是挺方便的,也令程序更清晰。接下來你應(yīng)該學(xué)習(xí)一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代碼的混亂方式了,這種方式跟ASP又有什么區(qū)別呢?還好,SUN提供了Javabean可以把你的JSP中的Java代碼封裝起來,便于調(diào)用也便于重用。接著就是EJB了,EJB就是Enterprise JavaBean,看名字好象它是Javabean,可是它和Javabean還是有區(qū)別的。它是一個(gè)體系結(jié)構(gòu),你可以搭建更安全、更穩(wěn)定的企業(yè)應(yīng)用。它的大量代碼已由中間件(也就是我們常聽到的Weblogic,Websphere這些J2EE服務(wù)器)完成了,所以我們要做的程序代碼量很少,大部分工作都在設(shè)計(jì)和配置中間件上。至于JDBC,就不用我多說了,你如果用java編過存取數(shù)據(jù)庫的程序,就應(yīng)該很熟悉。還有,如果你要用Java編發(fā)送電子郵件的程序,你就得看看Javamail了。
          好了,對(duì)Java和J2EE有了一些基本概念之后,你就應(yīng)該編一些程序了,千萬不要紙上談兵哦。最好找一些有實(shí)例且?guī)Ч獗P的書來看,這樣看到好的程序就可以直接Ctrl+C再Ctrl+V,也不用勞您老大架再親自把它再輸一遍吧,再說直接復(fù)制還不用怕出錯(cuò),何樂而不為呢!還有就是要經(jīng)常上一些好的Java編程文章,有好的文章要Cut下來,有問題盡管問,只要問題不是太傻,一般高手都會(huì)回答你的。下面介紹幾個(gè)好的Java方面的編程網(wǎng)站:
          CSDN論壇http://www.csdn.net/ 中國最有名的技術(shù)論壇,《程序員》雜志就是他們出版的,你可以在上面提出問題,馬上就有人回答你,如果你覺得好,你可以給那人加分;
          Java研究組http://www.javaresearch.org/ 上面有很多原創(chuàng)文章,高手還是挺多的;
          Java開發(fā)者h(yuǎn)ttp://www.chinajavaworld.com/ 那里Java資料比較全;
          java.com.cn http://www.java.com.cn/ 看這域名就知道有多牛,注冊用戶快接近一萬了,同時(shí)在線人數(shù)也在一千左右,人氣很旺的;
          IBM的開發(fā)者網(wǎng)http://www-900.ibm.com/developerWorks/cn/java/index.shtml IBM永遠(yuǎn)的藍(lán)色巨人;

          那么我書也看了,程序也做了,別人問我的問題我都能解決了,是不是就成為高手了呢?當(dāng)然沒那么簡單,這只是萬里長征走完了第一步。不信?那你出去接一個(gè)項(xiàng)目,你知道怎么下手嗎,你知道怎么設(shè)計(jì)嗎,你知道怎么組織人員進(jìn)行開發(fā)嗎?你現(xiàn)在腦子里除了一些散亂的代碼之外,可能再?zèng)]有別的東西了吧!你現(xiàn)在最缺的是實(shí)際的工作經(jīng)驗(yàn),而不是書本上那些憑空想出來的程序。所以你快去找一份Java的編程工作來做吧(如果是在校學(xué)生可以去做兼職啊),在實(shí)踐中提高自己,那才是最快的。不過你得祈禱在公司里碰到一個(gè)高手,而且他還愿意不厭其煩地教你,這樣好象有點(diǎn)難哦!
          還有一個(gè)辦法就是讀開放源碼的程序了。我們知道開放源碼大都出自高手,他們設(shè)計(jì)合理,考慮周到,再加上有廣大的程序員參與,代碼的價(jià)值自然是字字珠嘰,鏗鏘有力(對(duì)不起,最近《金裝四大才子》看多了)。學(xué)Java必讀的兩個(gè)開源程序就是Jive和Pet Store.。Jive是國外一個(gè)非常著名的BBS程序,完全開放源碼。論壇的設(shè)計(jì)采用了很多先進(jìn)的技術(shù),如Cache、用戶認(rèn)證、Filter、XML等,而且論壇完全屏蔽了對(duì)數(shù)據(jù)庫的訪問,可以很輕易的在不同數(shù)據(jù)庫中移植。論壇還有方便的安裝和管理程序,這是我們平時(shí)編程時(shí)容易忽略的一部份(中國程序員一般只注重編程的技術(shù)含量,卻完全不考慮用戶的感受,這就是我們與國外軟件的差距所在)。Jive的資料在很多網(wǎng)站上都有,大家可以找來研究一下。相信你讀完代碼后,會(huì)有脫胎換骨的感覺。遺憾的是Jive從2.5以后就不再無條件的開放源代碼,同時(shí)有l(wèi)icence限制。不過幸好還有中國一流的Java程序員關(guān)注它,外國人不開源了,中國人就不能開源嗎?這里向大家推薦一個(gè)漢化的Jive版本—J道。Jive(J道版)是由中國Java界大名鼎鼎的banq在Jive2.1版本基礎(chǔ)上改編而成, 全中文,增加了一些實(shí)用功能,如貼圖,用戶頭像和用戶資料查詢等,而且有一個(gè)開發(fā)團(tuán)隊(duì)在不斷升級(jí)。你可以訪問banq的網(wǎng)http://www.jdon.com/ 去下載,或到同濟(jì)技術(shù)論壇的服務(wù)器上ftp://nro.shtdu.edu.cn去下,安裝上有什么問題,可以到論壇上去提問。Pet Store.(寵物店)是SUN公司為了演示其J2EE編程規(guī)范而推出的開放源碼的程序,應(yīng)該很具有權(quán)威性,想學(xué)J2EE和EJB的朋友不要錯(cuò)過了。
          你一定會(huì)高興地說,哈哈,原來成為Java高手就這么簡單啊!記得我也曾碰到過一個(gè)項(xiàng)目經(jīng)理,號(hào)稱Java很簡單,只要三個(gè)月就可以學(xué)會(huì)。其實(shí)說這種話的人就如當(dāng)年小日本號(hào)稱“三個(gè)月拿下中國”一樣大言不慚。不是我潑你冷水,你現(xiàn)在只是學(xué)到了Java的骨架,卻還沒有學(xué)到Java的精髓。接下來你得研究設(shè)計(jì)模式了。設(shè)計(jì)模式是高級(jí)程序員真正掌握面向?qū)ο蠛诵乃枷氲谋匦拚n。設(shè)計(jì)模式并不是一種具體"技術(shù)",它講述的是思想,它不僅僅展示了接口或抽象類在實(shí)際案例中的靈活應(yīng)用和智慧,讓你能夠真正掌握接口或抽象類的應(yīng)用,從而在原來的Java語言基礎(chǔ)上躍進(jìn)一步,更重要的是,設(shè)計(jì)模式反復(fù)向你強(qiáng)調(diào)一個(gè)宗旨:要讓你的程序盡可能的可重用。關(guān)于設(shè)計(jì)模式的資料,還是向大家推薦banq的網(wǎng)http://www.jdon.com/ ,他把GOF的23種模式以通俗易懂的方式詮釋出來,純Java描述,真是經(jīng)典中的經(jīng)典。有時(shí)間再研究一下MVC結(jié)構(gòu)(把Model-View-Control分離開的設(shè)計(jì)思想)吧,現(xiàn)在很流行的Structs就是它的一種實(shí)現(xiàn)方式,不過Structs用起來實(shí)在是很繁,我們只要學(xué)習(xí)其精髓即可,我們完全可以設(shè)計(jì)自己的MVC結(jié)構(gòu)。然后你再研究一下軟件Refactoring(重整)和極限XP編程,相信你又會(huì)上一個(gè)臺(tái)階。
          做完這些,你不如整理一下你的Java代碼,把那些經(jīng)典的程序和常見的應(yīng)用整理出來,再精心打造一番,提高其重用性和可擴(kuò)展性。你再找?guī)讉€(gè)志同道合的朋友成立一個(gè)工作室吧,你可以去承接一些項(xiàng)目做了,一開始可能有些困難,可是你有技術(shù)積累,又考慮周全,接下項(xiàng)目來可以迅速作完,相信大家以后都會(huì)來找你的,所以Money就嘩啦啦的來了。。。。。。
          當(dāng)然你也可以參加一些開源項(xiàng)目,一方面可以提高自己,另一方面也是為中國軟件事業(yè)做貢獻(xiàn)嘛!開發(fā)者在互聯(lián)網(wǎng)上用CVS合作開發(fā),用QQ,MSN,E-mail討論聯(lián)系,天南海北的程序員分散在各地卻同時(shí)開發(fā)同一個(gè)軟件,是不是很有意思呢?
          下面介紹兩個(gè)好的開源項(xiàng)目網(wǎng)站:
          湖北省軟件公共開發(fā)平http://gro.clinux.org/
          共創(chuàng)聯(lián)http://cosoft.org.cn/
          哇,好高興哦,我終于成為高手了!非也,非也。古人云:“識(shí)時(shí)務(wù)者為俊杰”。你知道計(jì)算機(jī)界現(xiàn)在的發(fā)展形勢嗎?你知道微軟的.NET藍(lán)圖和SUN ONE計(jì)劃之間的明爭暗斗嗎?你知道計(jì)算機(jī)技術(shù)將向何處發(fā)展嗎?其實(shí)從各大計(jì)算機(jī)廠商最近的動(dòng)作,都可以看出來“Web服務(wù)將是下一代互聯(lián)網(wǎng)應(yīng)用的制高點(diǎn)”,而微軟的.NET藍(lán)圖和SUN ONE計(jì)劃的斗爭焦點(diǎn),也就是Web服務(wù)。Web服務(wù)就是一個(gè)嶄新的分布式計(jì)算模型,它是一系列標(biāo)準(zhǔn)的綜合(XML,SOAP,UDDI,WSDL和WSFL等)。它使得不同語言編寫的軟件能夠輕易的集成起來,使網(wǎng)絡(luò)資源和Web站點(diǎn)變成一種服務(wù)而不是混亂的垃圾場。不遠(yuǎn)的將來,我們就可以在家里點(diǎn)擊一下鼠標(biāo),就可以完成出門旅游的全部準(zhǔn)備工作,包括定飛機(jī)票,定旅游線路,定好房間等。請(qǐng)注意,這所有的一切都是Web站點(diǎn)間自動(dòng)完成的,再也不用象現(xiàn)在一樣,表面上是電子商務(wù),實(shí)際上很多環(huán)節(jié)都是人工操作。也許你會(huì)覺得這是天方夜談,不過就近的說,你也很有可能承接一個(gè)項(xiàng)目,要集成兩個(gè)企業(yè)的ERP系統(tǒng)。很有可能上游企業(yè)的系統(tǒng)是用Dephi編的,而下游企業(yè)的系統(tǒng)是用Java編的。你說你是Java高手,大家都看者你怎么做呢。所以啊,你還得學(xué)習(xí)新技術(shù),如Web服務(wù),而且你Dephi也要懂一點(diǎn)吧(Dephi6現(xiàn)在已經(jīng)提供Web服務(wù)的控件了)。 你編的Java系統(tǒng),可能要和.NET集成,所以你.NET要懂一點(diǎn)吧?到最后,你可能發(fā)現(xiàn)你已經(jīng)成為Java高手了,但很多時(shí)間卻在搞別的技術(shù)。太極張三豐里說,最厲害的招式就是沒有招式,可能就是這個(gè)道理吧!
          因?yàn)閯倓偱d起,所以網(wǎng)上Web服務(wù)的資料不是很多,我還是給大家推薦幾個(gè)網(wǎng)站吧:
          中國UDDI技術(shù)聯(lián)http://www.uddi-china.org/
          CSDN的柴曉路專http://www.csdn.net/develop/author/ColumnAuthor/fennivel/ (注:柴曉路也是互聯(lián)網(wǎng)上一個(gè)有名的人物,他發(fā)表過很多關(guān)于Web服務(wù)的文章,還出了一書,應(yīng)該稱的上是中國Web服務(wù)技術(shù)的先行者)
          IBM的開發(fā)者網(wǎng)絡(luò)的XML&Web Service專欄:
          http://www-900.ibm.com/developerWorks/cn/xml/index.shtml?csdn IBM可是Web服務(wù)的力推者
          嗚…你費(fèi)勁千心萬苦,總算成為Java高手了,怎叫人不由喜極而泣呢!是啊,真不容易,真不簡單,真叫人感動(dòng)啊!那么打個(gè)電話告訴我吧,什么?我的電話號(hào)碼是多少?昏到,你打電話問不就知道了嗎,真是的……


          如上是在網(wǎng)上考下來的,但個(gè)人認(rèn)為SCJP證書也好,程序員等級(jí)證書也好,不要太看重它;關(guān)鍵是你手中有沒有技術(shù),能不能拿出活來。我面試時(shí)候都是以證書為參考,主要衡量你的手段還是提問技術(shù)性問題以及一些編程方面的基礎(chǔ)問題。建議不要把證書看的太重。


          參考資料:參考高手建議
          from:http://zhidao.baidu.com/question/6711485.html
          posted @ 2010-05-31 22:13 豪情 閱讀(209) | 評(píng)論 (0)編輯 收藏
          程序執(zhí)行過程:
          1. Load到內(nèi)存區(qū)。
          在硬盤上有一塊程序代碼,要想運(yùn)行,編譯好的東西load到內(nèi)存。然后操作系統(tǒng)代碼找到

          main方法,然后執(zhí)行。

          2. 找到main方法開始執(zhí)行。
          3. 執(zhí)行過程中的內(nèi)存管理。
          一般分為四部分:
          a. code segment: 存放代碼,代碼區(qū)
          b. data segment: 靜態(tài)變量,字符串常量
          c. stack(棧): 局部變量
          d. heap(堆): new出來的東西
          posted @ 2010-05-29 22:11 豪情 閱讀(1873) | 評(píng)論 (2)編輯 收藏
          1.6 Zh chm
          http://download.java.net/jdk/jdk-api-localizations/jdk-api-zh-cn/publish/1.6.0/chm/JDK_API_1_6_zh_CN.CHM

          1.6 En chm
          http://download.csdn.net/source/1277711
          posted @ 2010-05-29 21:57 豪情 閱讀(644) | 評(píng)論 (0)編輯 收藏
          from:http://cuihongxin1030.javaeye.com/blog/405487
          一、 IoC(Inversion of control): 控制反轉(zhuǎn)
          1、IoC:
          概念:控制權(quán)由對(duì)象本身轉(zhuǎn)向容器;由容器根據(jù)配置文件去創(chuàng)建實(shí)例并創(chuàng)建各個(gè)實(shí)例之間的依賴關(guān)系
          核心:bean工廠;在Spring中,bean工廠創(chuàng)建的各個(gè)實(shí)例稱作bean
          二、AOP(Aspect-Oriented Programming): 面向方面編程
          1、 代理的兩種方式:
          靜態(tài)代理:
          ? 針對(duì)每個(gè)具體類分別編寫代理類;
          ? 針對(duì)一個(gè)接口編寫一個(gè)代理類;
          動(dòng)態(tài)代理:
          針對(duì)一個(gè)方面編寫一個(gè)InvocationHandler,然后借用JDK反射包中的Proxy類為各種接口動(dòng)態(tài)生成相應(yīng)的代理類
          2、 AOP的主要原理:動(dòng)態(tài)代理



          Spring工作原理
                  Spring 已經(jīng)用過一段時(shí)間了,感覺Spring是個(gè)很不錯(cuò)的框架。內(nèi)部最核心的就是IOC了,
          動(dòng)態(tài)注入,讓一個(gè)對(duì)象的創(chuàng)建不用new了,可以自動(dòng)的生產(chǎn),這其實(shí)就是利用java里的反射
          反射其實(shí)就是在運(yùn)行時(shí)動(dòng)態(tài)的去創(chuàng)建、調(diào)用對(duì)象,Spring就是在運(yùn)行時(shí),跟xml  Spring的配置
          文件來動(dòng)態(tài)的創(chuàng)建對(duì)象,和調(diào)用對(duì)象里的方法的 。
               Spring還有一個(gè)核心就是AOP這個(gè)就是面向切面編程,可以為某一類對(duì)象 進(jìn)行監(jiān)督和控制(也就是
          在調(diào)用這類對(duì)象的具體方法的前后去調(diào)用你指定的 模塊)從而達(dá)到對(duì)一個(gè)模塊擴(kuò)充的功能。這些都是通過
          配置類達(dá)到的。
             Spring目的:就是讓對(duì)象與對(duì)象(模塊與模塊)之間的關(guān)系沒有通過代碼來關(guān)聯(lián),都是通過配置類說明
          管理的(Spring根據(jù)這些配置 內(nèi)部通過反射去動(dòng)態(tài)的組裝對(duì)象)
             要記住:Spring是一個(gè)容器,凡是在容器里的對(duì)象才會(huì)有Spring所提供的這些服務(wù)和功能。
          Spring里用的最經(jīng)典的一個(gè)設(shè)計(jì)模式就是:模板方法模式。(這里我都不介紹了,是一個(gè)很常用的設(shè)計(jì)模式)
            Spring里的配置是很多的,很難都記住,但是Spring里的精華也無非就是以上的兩點(diǎn),把以上兩點(diǎn)跟理解了
          也就基本上掌握了Spring.

          sunlightcs (架構(gòu)師)的說法:
          struts是一個(gè)MVC框架,當(dāng)用戶瀏覽網(wǎng)頁的時(shí)候,呈現(xiàn)給用戶的頁面就是V,當(dāng)用戶發(fā)送請(qǐng)求的時(shí)候,就會(huì)在struts的配置文件里到處理此請(qǐng)求的 ACTION(這就是C),ACTION調(diào)用相應(yīng)的業(yè)務(wù)組件,完成相應(yīng)的業(yè)務(wù)時(shí)(這就是M),又會(huì)到struts的配置文件里尋找對(duì)應(yīng)的頁面,返回頁面給 用戶。整個(gè)流程就這個(gè)樣子。
          其中M層做的事比較多,所有的業(yè)務(wù)功能都在這里實(shí)現(xiàn)(當(dāng)然也有一些不規(guī)范的寫法,把業(yè)務(wù)寫在ACTION里),如果要與數(shù)據(jù)庫交互,M層就要調(diào)用 數(shù)據(jù)庫了,通過Hibernate實(shí)現(xiàn),Hibernate主要是跟數(shù)據(jù)庫打交道.
          其中,所有的業(yè)務(wù)功能及ACTION以及DAO都可以交給SPRING管理,SPRING的最常用的功能是IOC、AOP,IOC就是通過依賴注 入把所有的BEAN交給SPRING管理;AOP實(shí)現(xiàn)的功能很多,比如:所有的服務(wù)層都要有事務(wù),可以通過AOP攔截所有服務(wù)層的類,再通過IOC把事務(wù) 注入進(jìn)去了。
          SSH整合:
          http://www.aygfsteel.com/action/archive/2007/08/28/140566.html
          SSH在項(xiàng)目中的作用及原理
          http://blog.csdn.net/dustin_ren/archive/2009/03/31/4038601.aspx
          自己動(dòng)手寫spring
          http://www.javaeye.com/topic/413449
          posted @ 2010-05-27 23:14 豪情 閱讀(3617) | 評(píng)論 (2)編輯 收藏
          二、顯示命令
          1、顯示數(shù)據(jù)庫列表。
          show databases;
          2、顯示庫中的數(shù)據(jù)表:
          use mysql;
          show tables;
          3、顯示數(shù)據(jù)表的結(jié)構(gòu):
          describe 表名;
          4、建庫:
          create database 庫名;
          5、建表:
          use 庫名;
          create table 表名 (字段設(shè)定列表);
          6、刪庫和刪表:
          drop database 庫名;
          drop table 表名;
          7、將表中記錄清空:
          delete from 表名;
          8、顯示表中的記錄:
          select * from 表名
          posted @ 2010-05-27 10:08 豪情 閱讀(179) | 評(píng)論 (0)編輯 收藏
          僅列出標(biāo)題
          共3頁: 上一頁 1 2 3 下一頁 
          主站蜘蛛池模板: 全州县| 宜川县| 皮山县| 贺州市| 广河县| 盐池县| 合阳县| 乐都县| 衡山县| 双辽市| 思茅市| 车险| 墨玉县| 茶陵县| 滦平县| 锦州市| 苏州市| 颍上县| 定边县| 囊谦县| 年辖:市辖区| 资中县| 珠海市| 长葛市| 贵溪市| 乐都县| 昭觉县| 烟台市| 白沙| 沭阳县| 中江县| 四子王旗| 云阳县| 新竹县| 梅河口市| 黎川县| 宜阳县| 闻喜县| 南通市| 昆山市| 兴和县|