美麗涵涵童裝店--說我博客名字,給你們打折!
          隨筆 - 82  文章 - 266  trackbacks - 0
          <2007年9月>
          2627282930311
          2345678
          9101112131415
          16171819202122
          23242526272829
          30123456


          點擊這里給楊愛友發消息
          美麗涵涵童裝店
          說我博客名字,給你們打折!

          常用鏈接

          留言簿(6)

          隨筆分類

          隨筆檔案

          文章檔案

          好友的BLOG

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          vim
          1. 刪除行命令
          dd: 刪除游標所在的一整行(常用)
          ndd: n為數字。刪除光標所在的向下n行,例如20dd則是刪除光標所在的向下20行
          d1G: 刪除光標所在到第一行的所有數據
          dG: 刪除光標所在到最后一行的所有數據
          d$: 刪除光標所在處,到該行的最后一個字符
          d0: 那個是數字0,刪除光標所在到該行的最前面的一個字符
          x,X: x向后刪除一個字符(相當于[del]按鍵),X向前刪除一個字符(相當于[backspace]即退格鍵) 
          2. 插入命令
          I 在當前行首插入
          A 在當前行尾插入
          o 在當前行之后插入一行
          O 在當前行之前插入一行
          3. 移動命令
          w 向前移動一個單詞(光標停在單詞首部),如果已到行尾,則轉至下一行行首。此命令快,可以代替l命令。

          b 向后移動一個單詞 2b 向后移動2個單詞
          到指定行,冒號+行號,回車,比如跳到240行就是 :240回車
          Ctrl + e 向下滾動一行
          Ctrl + y 向上滾動一行
          Ctrl + f 向下滾動一屏
          Ctrl + b 向上滾動一屏    
          4. 拷貝和粘貼
          yy 拷貝當前行
          nyy 拷貝當前后開始的n行,比如2yy拷貝當前行及其下一行。
          p  在當前光標后粘貼,如果之前使用了yy命令來復制一行,那么就在當前行的下一行粘貼。
          shift+p 在當前行前粘貼
          ...
          posted @ 2019-01-29 13:59 楊愛友 閱讀(194) | 評論 (0)編輯 收藏
          參考文章:
          http://wenku.baidu.com/link?url=kq8VcGwEedCn5hHdSDbPsQrJCapBZje0DRRzyvEOkpqVOEP5XV--dtSL3RNC9a5Mf9K3mSJOGVwYt8VHjpUoBVTQ0L5z3WOSV-dTpSgs-My

          用一張空的U盤,利用支持軟件和ISO鏡像文件制作安裝盤,然后將USB3.0驅動程序放進U盤

          在格式化步驟,格式化完之后要加載USB3的驅動程序,否則安裝WIN7后無法使用鼠標和鍵盤
          參考文章:http://bbs.feng.com/read-htm-tid-8203477.html

          啟動WIN7后,可能出現黑屏“無法驗證簽名文件”,把windows\system32\drivers 里面那個AppleSSD.sys干掉
          參考文章:
          http://bbs.feng.com/read-htm-tid-9791867.html

          最后進入WIN7系統,此時之后一個盤符,需要再進行分盤,按照網上介紹,“壓縮卷--新建簡單分區“進行,發現竟然把原有MAC系統干掉了,這里千萬注意!

          然后就是到bootcamp/drivers下面找一些網絡、顯卡等的驅動進行點擊安裝。
          posted @ 2015-09-25 16:48 楊愛友 閱讀(289) | 評論 (0)編輯 收藏
               摘要: 先在客戶端注冊一個callback, 然后把callback的名字傳給服務器。

          此時,服務器先生成 json 數據。
          然后以 javascript 語法的方式,生成一個function , function 名字就是傳遞上來的參數 jsonp.

          最后將 json 數據直接以入參的方式,放置到 function 中,這樣就生成了一段 js 語法的文檔,返回給客戶端。

          客戶端瀏覽器,解析script標簽,并執行返回的 javascript 文檔,此時數據作為參數,傳入到了客戶端預先定義好的 callback 函數里.(動態執行回調函數)
          美麗涵涵童裝店
            閱讀全文
          posted @ 2014-10-29 14:57 楊愛友 閱讀(9377) | 評論 (5)編輯 收藏
               摘要: Spring源代碼解析(一):IOC容器:http://www.javaeye.com/topic/86339
          Spring源代碼解析(二):IoC容器在Web容器中的啟動:http://www.javaeye.com/topic/86594
          Spring源代碼解析(三):Spring JDBC:http://www.javaeye.com/topic/87034
          Spring源代碼解析(四):Spring MVC:http://www.javaeye.com/topic/87692
          Spring源代碼解析(五):Spring AOP獲取Proxy:http://www.javaeye.com/topic/88187
          美麗涵涵童裝店
            閱讀全文
          posted @ 2014-10-29 14:54 楊愛友 閱讀(2718) | 評論 (0)編輯 收藏
               摘要: 提高淘寶店鋪訪問量辦法  閱讀全文
          posted @ 2014-10-29 14:34 楊愛友 閱讀(4708) | 評論 (0)編輯 收藏
               摘要: Spring源碼學習-bean加載
          一個applicationContext.xml配置文件,這個不可少
          一個bean,這里我沒用接口,直接用一個普通的類做為Spring的bean
          一個Junit測試類  閱讀全文
          posted @ 2014-08-29 10:47 楊愛友 閱讀(10864) | 評論 (3)編輯 收藏

          學習源碼是一件非常耗時費力的事情,需要有足夠的時間和持久的耐心,下面是我閱讀郝佳老師的《Spring源碼深度解析》所做的記錄,書中以Spring3.2講解,使用jdk1.7。

          準備工作

          1. 安裝github:現在spring源代碼都在github管理,所以首先需要下載githup,下載地址http://windows.github.com;

          2. 安裝gradle構建工具:下載地址http://www.gradle.org/downloads,下載完后進行解壓到任意盤符,然后增加環境變量GRADLE_HOME,并在環境變量bin中增加%GRADLE_HOME%/bin,打開DOS窗口,運行gradle -v,出現版本號等信息,表示安裝成功;

          3. 下載Spring源碼:首先打開git shell,切換到你的工作目錄,然后輸入以下命令:git clone git://github.com/SpringSource/Spring-framework.git,后面一串是源碼下載地址。大概半小時的樣子,就可以下載完成,這時候在你的工作目錄中就會出現Spring-framework的目錄,里面有Spring各組件的源碼包;

          4. 構建導入:下載下來的代碼不能直接導入Eclipse,要先轉換成Eclipse能讀取的形式。因為所有組件都會依賴spring-core,所有我們首先要轉換Spring-core工程,在命令窗口切換到Spring-core工程,運行gradle cleanidea eclipse命令,我們會看到開始下載工程所依賴的jar包,幾分鐘后執行完畢,再來看Spring-core文件夾,多了.classpath、.project等文件,這是Eclipse工程所必須的,然后可以把他導入到eclipse。因為大部分Spring組件都會用到 spring-beans、spring-context、spring-aop,而他們又依賴spring-expression、spring-instrument,所以我們干脆先把這些工程都進行轉換并導入eclipse。

          我初次導入過程并不順利,拿spring-core為例,其中以來的一個jar包是Spring-framework/spring-core/build/libs/spring-asm-repack-4.0.jar,但我工程里面并沒有他,只好在網上下載了一個,并加入構建路徑,其次我還發現少commons-pool-1.5.3.jar、spring-cglib-repack-3.0.jar,都一一下載,最后還是報錯沒有java.util.concurrent.ForkJoinPool類,發現這個版本必須使用jdk1.7以上,1.6沒有這個包。折騰半天,終于幾個工程沒變異錯誤了,向前邁進了一步。




          posted @ 2014-08-21 16:04 楊愛友 閱讀(5949) | 評論 (2)編輯 收藏

          場景1:aService里面有個savePerson方法,里面將調用bService中的保存方法進行保存;

              aService代碼:
          @Transactional(propagation=Propagation.REQUIRED)
          public void savePerson() {
          Person p1 = new Person();
          p1.setName("yangay");
          Person p2 = new Person();
          p2.setName("lisan");
          messageBean.saveTwo(p1, p2);
          messageBean.savePerson(null);
          }
               bService代碼:
                @Transactional(propagation=Propagation.REQUIRED)
          public void saveOne(Person p){
          this.dao.save(p);
          }
          @Transactional(propagation=Propagation.REQUIRES_NEW)
          public void saveTwo(Person p1,Person p2){
          this.dao.save(p1);
          this.dao.save(p2);
          }
              因為saveTwo的傳播特性設置為requires_new,saveTwo方法單獨起一個事務,所以當調用saveOne拋出異常之后,不會影響saveTwo事務提交,事實上,在saveTwo返回之前已經將事務提交,所以p1、p2對象能保存入庫;
              如果將saveTwo方法的傳播特性設置為required,這時候三個方法公用一個事務,當saveOne拋出異常后,整個事務回滾,數據不能入庫;

          場景2:
           aService代碼:
          @Transactional(propagation=Propagation.REQUIRED)
          public void savePerson() {
          try{
          Person p1 = new Person();
          p1.setName("yangay");
          Person p2 = new Person();
          p2.setName("lisan");
          messageBean.saveTwo(p1, null);
          }catch(Exception ex){
          ex.printStackTrace();
          }
          }
           bService代碼:
                  @Transactional(propagation=Propagation.REQUIRED)
          public void saveTwo(Person p1,Person p2){
          this.dao.save(p1);
          this.dao.save(p2);
          }
               因為異常被catch了,所以事務不回滾,p1正常入庫;
          場景3:
           aService代碼:
          @Transactional(propagation=Propagation.REQUIRED)
          public void savePerson() {
          try{
          Person p1 = new Person();
          p1.setName("yangay");
          Person p2 = new Person();
          p2.setName("lisan");
          messageBean.saveOne(p1);
          messageBean.saveTwo(p2, null);
          }catch(Exception ex){
          ex.printStackTrace();
          }
          }
           bService代碼:
                  @Transactional(propagation=Propagation.REQUIRED)
          public void saveOne(Person p){
          this.dao.save(p);
          }
          @Transactional(propagation=Propagation.REQUIRED)
          public void saveTwo(Person p1,Person p2){
          this.dao.save(p1);
          this.dao.save(p2);
          }
                  開始以為有了try catch,p1能保存進去,但經過測試,發現會報錯。因為saveTwo時拋出異常,首先被spring框架個catch住,將事務標記為rollbackonly,然再往出拋異常,最后被savePerson方法catch住,所以事務能夠提交,但當提交的時候,發現標志位已經被設置了,不應該去提交了,然后吭哧吭哧的回滾調,再提示你已經被設置成rollback-only了。
                  但如果saveTwo的傳播特性改為require_new,因為他單起一個事務,不會影響父事務的提交,所以p1能保存,p2失敗;

          場景4:
          事務在多個對象之間才有傳播特性
          @Override
          public void savePerson() {
          Person p1 = new Person();
          p1.setName("yangay");

          Person p2 = new Person();
          p2.setName("lisan");

          saveTwo(p1,null);
          }

          @Transactional(propagation=Propagation.REQUIRED)
          public void saveTwo(Person p1,Person p2){
          messageBean.saveOne(p1);
          messageBean.saveOne(p2);
          }
              兩個方法在一個類里面,saveTwo并沒有事務,p1能提交;但如果把saveTwo放到另外一個類,則saveTwo就會有事務,p1不能提交;
              如果要同一個類里面的saveTwo執行事務,可在配置文件增加<aop:aspectj-autoproxy expose-proxy="true"/>,然后((Iservice)AopContext.currentProxy()).saveTwo(),這樣執行的就是代理的方法,就會有事務(Iservice必須是你定義的接口)
          posted @ 2014-08-08 15:43 楊愛友 閱讀(2744) | 評論 (0)編輯 收藏
          當我把jboss/client下的所有jar和ejb工程jar方到web工程下,編寫main函數可以調用到EJB的bean,而將web工程發布出去后,就調用不到了,報錯“javax.naming.NameNotFoundException: xxx not bound”,折騰了五六個小時,網上說了各種各樣的原因,都沒能解決,最后看這位兄弟的文章,問題才得以解決。
          http://blog.163.com/zzk331@126/blog/static/142674599200957111441126/
          如果你的問題解決了,請回復我!
          posted @ 2014-05-28 16:56 楊愛友 閱讀(6291) | 評論 (0)編輯 收藏
               摘要: 來到互聯網公司,需要開發EJB程序,用兩天的時間先學習了EJB的開發流程,我用的開發環境是myeclipse、jboss4.2、ejb3.0、struts1.3.8、jkd6、oracle、JPA,頁面展現用到velocity。其實這不是一個春對ejb的學習文章,因為里面涉及了跟ejb無關的struts、velocity,如果單純學習寫ejb的helloword,數據庫都不用連接,下面我描述下helloword程序的實現過程。
          雖然技術含量不高,但寫的很辛苦,需要占用首頁一個位置。  閱讀全文
          posted @ 2014-05-28 15:28 楊愛友 閱讀(5788) | 評論 (4)編輯 收藏
          <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
          <html xmlns="http://www.w3.org/1999/xhtml">

          <head>
              <meta charset="utf-8">
          <style>

          </style>
          </head>

          <body>
              <div>
                  <div id="chartdiv1" style="width: 300px; height: 300px;float:left;border: 1px solid red;"></div>
                  <div id="chartdiv2" style="width: 300px; height: 300px;float:right;border: 1px solid red;"></div>
                  <div style="clear:left;"></div>

                  <div id="chartdiv3" style="width: 300px; height: 300px;float:left;border: 1px solid blue;"></div>
                  <div id="chartdiv4" style="width: 300px; height: 300px;float:right;border: 1px solid blue;"></div>
              </div>


          </body>

          </html>
          posted @ 2013-10-09 16:25 楊愛友 閱讀(1366) | 評論 (0)編輯 收藏
               摘要: 地心坐標系(geocentric cs、GEOCCS):以地球中心為原點,直接用X、Y、Z來進行位置的描述,無需模擬地球球面,常用在GPS中。
          地理坐標系(geographic cs、GEOGCS):帶Datum的橢球面坐標系,單位經度、緯度,高程用作第三維。參數:橢球體、基準面。
          投影坐標系(projected cs、PROJCS):平面坐標系,單位米、英尺等,它用X(Easting)、Y(Northing)來描述地球上某個點的位置。它對應于某個地理坐標系,在UML中表示屬于1對多的關系,1個地理坐標系經過不同的投影方式可產生多個投影坐標系。參數:地理坐標系、投影方式。  閱讀全文
          posted @ 2013-06-26 16:10 楊愛友 閱讀(1367) | 評論 (0)編輯 收藏
          1. 說出常用的GIS平臺,arcgis的產品線?
          2. 地理坐標系、投影坐標系和地心坐標系的概念?
          3. 描述一下矢量數據和柵格數據,以及各自應用的領域?
          posted @ 2013-06-26 15:53 楊愛友 閱讀(207) | 評論 (0)編輯 收藏
          【轉自:http://www.aygfsteel.com/Alpha/archive/2009/06/27/284373.html
          Flex中As調用Js的方法是:

               1、導入包 (import flash.external.ExternalInterface;)
               2、使用ExternalInterface.call("Js函數名稱",參數)進行調用,其返回的值就是Js函數所返回的值
           
          Js調用As的方法是:
               1、導入包 (import flash.external.ExternalInterface;)
               2、在initApp中使用ExternalInterface.addCallback("用于Js調用的函數名",As中的函數名)進行注冊下
               3、js中 就可以用document.getElementById("Flas在Html中的ID").注冊時設置的函數名(參數)進行調用
          posted @ 2013-06-26 15:44 楊愛友 閱讀(218) | 評論 (0)編輯 收藏
          關于js中target與currentTarget的區別的關鍵在于他們所處在的事件流的階段是不一樣的,target處于事件流的目標階段,currentTarget處理事件流的捕獲、目標階段和冒泡階段。只有當他們同事處于目標階段的時候他們的指向才是一樣的,請看以下代碼:
          <!DOCTYPE HTML>
          <html>
          <head>
          <meta charset="utf-8" />
          <title>js性能優化</title>
          </head>
          <body> 
              <div id="outer">
                  outer
                  <p>
                      inner
                  </p>
              </div>
          </body>
          <script type="text/javascript">
          (
          function(){
              
          var a=document.getElementById('outer');
                  a.addEventListener('click',
          function(e){
                  alert(e.target.innerHTML);
                  alert(e.currentTarget.innerHTML);
                  alert(e.currentTarget 
          === e.target);
              },
          false);
          })();
          </script>
          </html>
          posted @ 2013-06-26 15:34 楊愛友 閱讀(336) | 評論 (0)編輯 收藏

          【轉載自http://apps.hi.baidu.com/share/detail/33880627

            地質學范疇,是指平均海平面通過大陸延伸勾畫出的一個封閉連續的封閉曲面。

            大地水準面是由靜止海水面并向大陸延伸所形成的不規則的封閉曲面。它是重力等位面,即物體沿該面運動時,重力不做功(如水在這個面上是不會流動的)。大地水準面是描述地球形狀的一個重要物理參考面,也是海拔高程系統的起算面。大地水準面的確定是通過確定它與參考橢球面的間距--大地水準面差距(對于似大地水準面而言,則稱為高程異常)來實現的。大地水準面和海拔高程等參數和概念在客觀世界中無處不在,在國民經濟建設中起著重要的作用。

              其實,大地水準面也是一個很不規則的曲面,

            大地水準面包圍的球體稱為大地球體。大地球體的長半軸為6378.245公里,短半軸為6356.863公里。從大地水準面起算的陸地高度,稱為絕對高度或海拔。

              用于盡可能與大地水準面密合的一個橢球曲面,是人為確定的。橢球體與大地基準面之間的關系是一對多的關系,也就是基準面是在橢球體基礎上建立的,但橢球體不能代表基準面,同樣的橢球體能定義不同的基準面,如前蘇聯的Pulkovo 1942、非洲索馬里的Afgooye基準面都采用了Krassovsky橢球體,但它們的大地基準面顯然是不同的。

              理解:橢球面和地球肯定不是完全貼合的,因而,即使用同一個橢球面,不同的地區由于關心的位置不同,需要最大限度的貼合自己的那一部分,因而大地基準面就會不同。

              地圖坐標系由大地基準面和地圖投影確定,大地基準面是利用特定橢球體對特定地區地球表面的逼近,因此每個國家或地區均有各自的大地基準面,我們通常稱謂的北京54坐標系、西安80坐標系實際上指的是我國的兩個大地基準面。我國參照前蘇聯從1953年起采用克拉索夫斯基(Krassovsky)橢球體建立了我國的北京54坐標系,1978年采用國際大地測量協會推薦的IAG 75地球橢球體建立了我國新的大地坐標系--西安80坐標系, 目前GPS定位所得出的結果都屬于WGS84坐標系統,WGS84基準面采用WGS84橢球體,它是一地心坐標系,即以地心作為橢球體中心的坐標系。因此相對同一地理位置,不同的大地基準面,它們的經緯度坐標是有差異的。 

              一般我們所說的WGS84就是指那個基準面。

           

          posted @ 2011-09-05 14:50 楊愛友 閱讀(1453) | 評論 (0)編輯 收藏
               摘要: 新加行:這個帖子發帖8年來,已經為太多的朋友解決了問題,不用感謝我,請允許我在這里打個廣告:美麗涵涵童裝店,說我博客名字,給你們打折。
          restlet入門、示例,賦有源碼,下載可直接運行  閱讀全文
          posted @ 2011-07-22 16:39 楊愛友 閱讀(8683) | 評論 (2)編輯 收藏
               摘要: JAVA體系結構包括四個獨立但相關的部分:
          java程序設計語言、Java class文件格式、Java應用編程接口API、Java虛擬機  閱讀全文
          posted @ 2011-06-01 22:57 楊愛友 閱讀(361) | 評論 (0)編輯 收藏
               摘要: 今年10.18號,有幸參北京國際馬拉松,這一興奮的日子,終生難忘。
          過程很累人,意義很重大,回憶很美好。明年我一定會再去。
            閱讀全文
          posted @ 2009-10-30 00:38 楊愛友 閱讀(272) | 評論 (0)編輯 收藏
          不知道各位用過ScriptX控件做過打印功能沒有。我現在的情況是:
          前段時間所有客戶機打印都正常,最近幾天,有部分客戶陸續不能使用打印功能了,報腳本錯誤。
          我這里現在是正常的,那么導致那些客戶機不能打印的原因大概是什么呢?我機子是正常的。
          posted @ 2009-08-14 15:11 楊愛友 閱讀(2339) | 評論 (1)編輯 收藏
          目前我的項目中系統生成了訂單(JSP頁面),這個訂單要通過郵件發送給供應商,總不能粘一段html文字發給供應商吧。
          于是考慮導出成excel,將excel文件發送出去,但客戶覺得excel文件太容易更改,要求生成PDF或圖片等不太容易改的文檔。
          現在的問題是:我如何生成這個PDF文檔?
          考慮過用iText,通過java創建PDF文檔,但發現太繁瑣了,在一天的時間內很難做出個像樣的報表。
          那么請問大俠們,我應該通過什么方式生成這個“不太容易改”的文檔呢?
          能否給點itext的一些資料或你們寫過的代碼。
          posted @ 2009-06-19 01:40 楊愛友 閱讀(2078) | 評論 (19)編輯 收藏
               摘要: 使用itext生成pdf  閱讀全文
          posted @ 2009-06-18 12:04 楊愛友 閱讀(2794) | 評論 (0)編輯 收藏
               摘要: 使用itext生成pdf  閱讀全文
          posted @ 2009-06-15 23:34 楊愛友 閱讀(1739) | 評論 (0)編輯 收藏
               摘要: struts1,webwork,struts2簡介  閱讀全文
          posted @ 2009-06-09 17:15 楊愛友 閱讀(326) | 評論 (0)編輯 收藏

          開發模式為struts、hibernate、jstl等。
          在一個項目中,涉及到很多字典型數據,如水庫規模(大、中、小)、土壤類型(酸性、堿性、粘性)、工程類型(橋梁、水閘、公路)等。
          那么在數據庫中如何來存儲這些字典型數據呢?若水庫規模、土壤類型、工程類型等各建一張表,太繁瑣了吧!若將他們都存到一張“字典”表中,那水庫、土壤、工程表將不能設置外鍵,規模字段只能存儲一個規模ID標志,在查詢出水庫列表后,在頁面中只能獲得各水庫的規模ID,卻無法獲取規模的名稱。
          posted @ 2009-04-10 15:37 楊愛友 閱讀(1472) | 評論 (2)編輯 收藏
          開發模式為struts、hibernate、jstl等。
          在一個項目中,涉及到很多字典型數據,如水庫規模(大、中、小)、土壤類型(酸性、堿性、粘性)、工程類型(橋梁、水閘、公路)等。
          那么在數據庫中如何來存儲這些字典型數據呢?若水庫規模、土壤類型、工程類型等各建一張表,太繁瑣了吧!若將他們都存到一張“字典”表中,那水庫、土壤、工程表將不能設置外鍵,規模字段只能存儲一個規模ID標志,在查詢出水庫列表后,在頁面中只能獲得各水庫的規模ID,卻無法獲取規模的名稱。
          posted @ 2009-04-10 15:34 楊愛友 閱讀(431) | 評論 (0)編輯 收藏


          一、spring
          1.ContextLoaderListener
             它作用就是啟動Web容器時,自動裝配ApplicationContext的配置信息。因為它實現了ServletContextListener這個接口,在web.xml配置這個監聽器,啟動容器時,就會默認執行它實現的方法。在ContextLoaderListener中關聯了ContextLoader這個類,所以整個加載配置過程由ContextLoader來完成。ContextLoader創建的是 XmlWebApplicationContext這樣一個類,它實現的接口是WebApplicationContext->ConfigurableWebApplicationContext->ApplicationContext->BeanFactory這樣一來spring中的所有bean都由這個類來創建。如果在web.xml中不寫任何參數配置信息,默認的路徑是"/WEB-INF/applicationContext.xml,在WEB-INF目錄下創建的xml文件的名稱必須是applicationContext.xml。如果是要自定義文件名可以在web.xml里加入contextConfigLocation這個context參數:
           <context-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>classpath*:spring/*.xml</param-value>
           </context-param>
          2.default-autowire
                在spring容器內拼湊bean叫作裝配。裝配bean的時候,你是在告訴容器,需要哪些bean,以及容器如何使用依賴注入將它們配合在一起。而default-autowire設置了bean的默認裝配方式。
          我們常常使用<ref>標簽為JavaBean注入它依賴的對象。但是對于一個大型的系統,這個操作將會耗費我們大量的資源,我們不得不花費大量的時間和精力用于創建和維護系統中的<ref>標簽。我們可以通過指定autowire來讓容器為受管JavaBean自動注入依賴對象。
          byName:通過屬性的名字的方式查找JavaBean依賴的對象并為其注入。比如說類UserAction有個屬性userService,Spring IoC容器會在配置文件中查找id/name屬性為userService的bean,然后使用Seter方法為其注入。
          注意:在配置bean時,<bean>標簽中Autowire屬性的優先級比其上級標簽<beans/>高,即是說,如果在上級標簽中定義default-autowire屬性為byName,而在<bean>中定義為byType時,Spring IoC容器會優先使用<bean>標簽的配置。
          3.default-lazy-init
            加載spring bean時,默認采用的延遲策略。
          二、Hibernate
          1.load和get
            a.如果未能發現符合條件的記錄,get方法返回null,而load方法會拋出一個  ObjectNotFoundException。
            b.Load方法可返回實體的代理類實例,而get方法永遠直接返回實體類。
            c.load方法可以充分利用內部緩存和二級緩存中的現有數據,而get方法則僅僅在內部緩存中進行數據查找,如沒有發現對應數據,將越過二級緩存,直接調用SQL完成數據讀取。
          2.對象的三種狀態
          Hibernate的對象有3種狀態,分別為:瞬時態(Transient)、 持久態(Persistent)、脫管態(Detached)。
            瞬時態:
          由new命令開辟內存空間的java對象,
              如:Person person = new Person("xxx", "xx");
          瞬時對象在內存孤立存在,不和數據庫的數據有任何關聯關系,在Hibernate中,可通過session的save()或saveOrUpdate()方法將瞬時對象與數據庫相關聯,并將數據對應的插入數據庫中,此時該瞬時對象轉變成持久化對象。

          持久態:
               處于該狀態的對象在數據庫中具有對應的記錄,并擁有一個持久化標識。如果是用hibernate的delete()方法,對應的持久對象就變成瞬時對象。

                 當一個session執行close()或clear()、evict(po)之后,持久對象變成脫管對象,此時持久對象會變成脫管對象,此時該對象雖然具有數據庫識別值,但它已不在HIbernate持久層的管理之下。

                 持久對象具有如下特點:

                 1. 和session實例關聯;

                 2. 在數據庫中有與之關聯的記錄。

          脫管態:
             當與某持久對象關聯的session被關閉后,該持久對象轉變為脫管對象。
                 1. 本質上與瞬時對象相同,在沒有任何變量引用它時,JVM會在適當的時候將它回收;

                 2. 比瞬時對象多了一個數據庫記錄標識值。
          2.名詞解釋
           a.persist把一個瞬態的實例持久化,但是并"不保證"標識符(identifier主鍵對應的屬性)被立刻填入到持久化實例中,標識符的填入可能被推遲到flush的時候。
           b.clear完整的清除session緩存
           c.evcit(obj)把某個持久化對象從session的緩存中清空。
           d.persist只能持久化一個瞬時態的對象,
          三、java
          1.格式化日期
            SimpleDateFormat format = new SimpleDateFormat("yyyy年M月d日");
            format.format(date);
            用一個M、d則到月份日期為10一下時,只顯示一位,避免出現01月02日的情況。
            年可以用四位也可以用二位。
          2.JDBC操作
            a.連接數據庫:
              Class.forName("net.sourceforge.jtds.jdbc.Driver").newInstance();
              Connection conn = DriverManager.getConnection(url, userName, password);
              Statement stmt = conn .getStatement();
              ResultSet rs = stmt.executeQuery(sql);
              while(rs.next()){
           System.out.println(rs.getInt("userId"));
           System.out.println(rs.getString("userName"));
              }

           


           

          posted @ 2009-04-03 13:14 楊愛友 閱讀(271) | 評論 (0)編輯 收藏
               摘要: 2008年就這樣的走了, 時間過得太快了,太快了!  閱讀全文
          posted @ 2009-01-14 16:49 楊愛友 閱讀(261) | 評論 (0)編輯 收藏
               摘要: 我向來寬宏大量,對人對社會一副很積極的心態,沒有埋怨過誰,在同事中,你是第一個。
          今天的事情,讓我很郁悶,我不想以此來改變我對人、對事、對社會的態度,但這件事,我不會忘記,會作為一個警鐘,時刻敲醒我昏沉沉的頭腦。  閱讀全文
          posted @ 2009-01-08 00:09 楊愛友 閱讀(298) | 評論 (0)編輯 收藏
               摘要: 新加行:這個帖子發帖8年來,已經為太多的朋友解決了問題,不用感謝我,請允許我在這里打個廣告:美麗涵涵童裝店,說我博客名字,給你們打折。
          Spring,hibernate,struts的面試筆試題(含答案)  閱讀全文
          posted @ 2008-12-16 07:57 楊愛友 閱讀(4144) | 評論 (0)編輯 收藏
               摘要: supermap QQ群:4578330,歡迎加入!   閱讀全文
          posted @ 2008-12-16 06:59 楊愛友 閱讀(1565) | 評論 (2)編輯 收藏
               摘要: Java編程經驗匯總

          絕對好文,轉載的!

          一個計算機專業學生幾年的編程經驗匯總

          絕對好文,該系列一共11篇,斑竹可以考慮置頂,各位壇友看完之后,java基礎絕對有不小的提升!
            閱讀全文
          posted @ 2008-12-12 11:47 楊愛友 閱讀(3712) | 評論 (4)編輯 收藏
               摘要: 根據剛剛學習的心理體會總結出的配置流程,里面介紹了Flex工程的建立,遠程方法調用的配置等相關知識,附有的demo源文件,可以自行下載。其他要用到的一些包、開發工具,如果有需要,可QQ我。  閱讀全文
          posted @ 2008-12-02 07:23 楊愛友 閱讀(3536) | 評論 (4)編輯 收藏
               摘要: 使用對象:初次接觸Arcgis,沒有安裝配置過Arcgis、servlet的初學者。  閱讀全文
          posted @ 2008-11-28 11:30 楊愛友 閱讀(2440) | 評論 (0)編輯 收藏
               摘要: 關于類加載的問題。為什么打印結果是1和0呢?  閱讀全文
          posted @ 2008-10-28 15:26 楊愛友 閱讀(1384) | 評論 (9)編輯 收藏
               摘要: 最近項目要開發大量報表,要找一個合適的報表工具。要使用戶能夠在客戶端,根據需要定制待打印報表的樣式和要顯示的字段內容。求各位朋友推薦一款免費的報表定制工具。  閱讀全文
          posted @ 2008-10-28 09:50 楊愛友 閱讀(294) | 評論 (1)編輯 收藏
               摘要: 要娶媳婦兒啦  閱讀全文
          posted @ 2008-10-26 00:22 楊愛友 閱讀(512) | 評論 (5)編輯 收藏
               摘要: 轉載于【http://www.aygfsteel.com/JAVA-HE/archive/2008/10/17/235066.html】  閱讀全文
          posted @ 2008-10-22 11:58 楊愛友 閱讀(263) | 評論 (0)編輯 收藏
               摘要: 怎么判斷用戶對當前頁面只有查詢權限,而不能做“修改、刪除”等操作。  閱讀全文
          posted @ 2008-10-22 11:44 楊愛友 閱讀(2093) | 評論 (12)編輯 收藏
               摘要: 轉載于【http://java.chinaitlab.com/line/373702.html】
          一個進程就是一個執行中的程序,而每一個進程都有自己獨立的一塊內存空間,一組系統資源.在進程概念中,每一個進程的內部數據和狀態都是完全獨立的。線程與進程相似,是一段完成某個特定功能的代碼,是程序中單個順序的流控制;但與進程不同的是,同類的多個線程是共享一塊內存空間和一組系統資源。  閱讀全文
          posted @ 2008-10-21 00:35 楊愛友 閱讀(1593) | 評論 (0)編輯 收藏
               摘要: Spring提供了一個發送電子郵件的高級抽象層,它向用戶屏蔽了底層郵件系統的一些細節,同時負責低層次的代表客戶端的資源處理。Spring郵件抽象層的主要包為org.springframework.mail。它包括了發送電子郵件的主要接口MailSender和 封裝了簡單郵件的屬性如from, to,cc, subject, text的值對象叫做SimpleMailMessage。
          首先:我們定義一個發送郵件的接口:IMailManager.java。
            閱讀全文
          posted @ 2008-10-20 00:12 楊愛友 閱讀(1355) | 評論 (1)編輯 收藏
               摘要: 各種企業應用幾乎都會碰到任務調度的需求,就拿論壇來說:每隔半個小時生成精華文章的RSS文件,每天凌晨統計論壇用戶的積分排名,每隔30分鐘執行鎖定用戶解鎖任務。對于一個典型的MIS系統來說,在每月1號凌晨統計上個月各部門的業務數據生成月報表,每半個小時查詢用戶是否已經有快到期的待處理業務……,這樣的例子俯拾皆是,不勝枚舉。
          Quartz 在開源任務調度框架中的翹首,它提供了強大任務調度機制,難能可貴的是它同時保持了使用的簡單性。Spring進一步降低了使用Quartz的難度,能以更具Spring風格的方式使用Quartz。  閱讀全文
          posted @ 2008-10-18 22:58 楊愛友 閱讀(25225) | 評論 (9)編輯 收藏
               摘要:
          1.public、protected、private以及默認類型變量作用域考查;
          2.String類型對象創建及內存分配知識;
          3.set與list唯一性考查;
          4.構造函數的調用順序;
          5.java參數傳遞;  閱讀全文
          posted @ 2008-10-17 23:24 楊愛友 閱讀(407) | 評論 (0)編輯 收藏
               摘要:
          1. this指針是一個動態變化的變量,它表明了當前運行該函數的對象;
          2. 一個方法(集合元素)由誰調用,this指針就指向誰;
          3. 對象名可以起到一個命名空間的作用。

            閱讀全文
          posted @ 2008-08-06 22:33 楊愛友 閱讀(737) | 評論 (0)編輯 收藏

          一種配置情況是:

          <convert converter="bean" match="com.hengyu.bean.project.*" />

          大家都知道,當hibernate里面配置上lazy="true"時,查詢對象A時,不會去查詢于A相關聯的B、C、D等對象,只要取B、C、D中屬性值時,才會去查詢。但是hibernate配合DWR時,這個lazy屬性好象不起作用,只要一查詢,就會把于之相關聯的屬性全部加載,執行一個方法,竟然有上百條HQL語句,使效率極其低下。
          另一種配置是:

          <convert converter="hibernate3" match="com.hengyu.bean.project.*" />
          這樣的話效率很快,但是當我去于A相關聯的B、C等表里的屬性時,卻取不到。配置了opensessioninview,其他表中的屬性仍然取不到。郁悶了半月了,請高手指教。
          posted @ 2007-12-10 22:20 楊愛友 閱讀(1335) | 評論 (2)編輯 收藏
               摘要: 如果一個人愛你  閱讀全文
          posted @ 2007-11-26 21:32 楊愛友 閱讀(502) | 評論 (4)編輯 收藏
               摘要: 思想不積極,發布一天就關了。  閱讀全文
          posted @ 2007-10-16 16:29 楊愛友 閱讀(379) | 評論 (9)編輯 收藏
               摘要: 這兩周沒做啥事情,卻很累,心很累,不是沒事情做,有,卻不知道怎么做,頭很痛,心很累,書不看了,博客也不寫了。  閱讀全文
          posted @ 2007-09-26 00:12 楊愛友 閱讀(443) | 評論 (12)編輯 收藏
               摘要: 由前端控制器負責判斷用戶的請求要分派給哪一個控制對象,借此達到控制用戶請求資源的目的。  閱讀全文
          posted @ 2007-09-09 23:17 楊愛友 閱讀(561) | 評論 (1)編輯 收藏
               摘要: 小小一篇總結、計劃  閱讀全文
          posted @ 2007-09-09 05:32 楊愛友 閱讀(342) | 評論 (3)編輯 收藏
               摘要: Spring AOP中的一些概念及Before Advice實例解析  閱讀全文
          posted @ 2007-09-06 00:06 楊愛友 閱讀(1484) | 評論 (4)編輯 收藏
          美麗涵涵童裝店
          親,說我博客名字,給你們打折!
          主站蜘蛛池模板: 洛隆县| 弥渡县| 新安县| 布拖县| 延庆县| 廊坊市| 枞阳县| 永泰县| 蛟河市| 乐清市| 铁力市| 西乌珠穆沁旗| 汕头市| 嫩江县| 新竹市| 新野县| 右玉县| 华阴市| 萍乡市| 麻阳| 江都市| 清原| 佳木斯市| 英德市| 宁化县| 荆州市| 搜索| 高青县| 奉节县| 高陵县| 明星| 家居| 夏河县| 阳泉市| 枣强县| 甘肃省| 宣威市| 屯昌县| 郸城县| 平阴县| 铁力市|