2005年10月20日

          <?xml version="1.0" encoding="UTF-8"?>
          <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "

          <beans>
          /*
             helloBEAN有一個str屬性類型為String 它繼承一個Pr的接口 實現方法print(); 
             打印出str
          */

           <bean id="hello" class="com.spring.bean.Hello">
            <property name="str">
             <value>wangzhenjia</value>
            </property>
           </bean>
           
          /*
             Advice ---處理邏 (通知) 可以是MethodBeforeAdviceAfterReturningAdvice,IntroductionInterceptor
             里面之一種的實現 這將會在hello.print()方法時候根據具體的實現被調用
          */

           <bean id="beforAdvice" class="com.spring.bean.BeforBean"></bean>
           /*   
             切入點 advice指向處理邏輯 pattern指出當什么條件下觸發advice
             當然當有多個條件時候可以用patterns 它是個List
          */

          <bean id="berforAdvisor" class="org.springframework.aop.support.RegexpMethodPointcutAdvisor">
            <property name="advice">
             <ref local="beforAdvice"/>
            </property>
            <property name="pattern">
             <value>com\.spring\.bean\.Pr\.print</value>
            </property>
           </bean>
           
          /*
             用ProxyFactoryBean創建AOP代理
             proxyInterfaces 指定實現的接口
             target目標
             interceptorNames可以指定Advisor 
             或者interceptor    MethodBeforeAdvice ,AfterReturningAdvice,   IntroductionInterceptor 都可以
             
          */

           <bean id="myproxyBean" class="org.springframework.aop.framework.ProxyFactoryBean">
            <property name="proxyInterfaces">
             <value>com.spring.bean.Pr</value>
            </property>
            
            <property name="target">
             <ref local="hello"/>
            </property>
            
            <property name="interceptorNames">
             <list>
              <value>berforAdvisor</value>
             </list>
            </property>
           </bean>
           
          </beans>

          posted @ 2005-10-20 16:09 射手座的我 雙子座的她 閱讀(363) | 評論 (0)編輯 收藏


          2005年10月18日

          ClassPathResource s=new ClassPathResource("beans.xml")
          XmlBeanFactory x=new XmlBeanFactory(s);
          //根路徑指定->class文件夾開始找beans.xml

          ClassPathXmlApplicationContext cx=new ClassPathXmlApplicationContext("beans.xml");
          //根路徑指定->class文件夾開始找beans.xml

          ApplicationContext c=new FileSystemXmlApplicationContext("beans.xml");
          //根路徑指定->項目根路徑 開始找beans.xml

          posted @ 2005-10-18 16:29 射手座的我 雙子座的她 閱讀(308) | 評論 (0)編輯 收藏


          2005年9月28日

          真正愛你的女人,在你為生活忙碌了一天以后,不會因為你身上的汗味難聞而遠離你,會溫柔地為你擦去汗漬;

            真正愛你的女人,在你懶得不想洗澡的時候,幫你打好水給你泡腳,幫你洗臉按摩,而不會一腳把你揣下床;

            真正愛你的女人,幫你洗衣服的時候從來不會有怨言,因為她覺得為你洗衣服也是一件很幸福的事;

            真正愛你的女人,會在你內心空虛的時候陪你度過一個又一個晚上,而當你忘記她的時候她卻不會怪你;

            真正愛你的女人,在你提出分手的時候雖然很不舍得但還是會馬上答應你,因為她知道你和她在一起已經不會快樂;

            真正愛你的女人,會在買自己東西的時候對比三家,但會毫不猶豫地買下你喜歡的東西;

            真正愛你的女人,總是把自己最活躍的一面展現給你,因為她希望你看到的總是一個陽光的自己;

            真正愛你的女人,在你傷害了她后躲在自己的房間里偷偷地哭,因為她不想讓你心存內疚;

            真正愛你的女人,一顆心總是在你身上:今天過得好不好?有沒有注意休息?有沒有按時吃飯?

            真正愛你的女人,會在你和別的女人交往的時候默默地為你祈禱祝福,因為她是真的很希望你幸福;

            真正愛你的女人,不會和你說她有多么的在乎你希望你時時刻刻在她的身邊,因為她知道你喜歡自由地呼吸空氣;

            真正愛你的女人,在撐傘的時候總會把傘靠近你,因為她寧愿自己生病也不愿意讓你淋一點雨;

            真正愛你的女人,會在她最快樂的時候打給電話給你,因為他希望你能分享到她的快樂,她喜歡和你一起分享的感覺;

            真正愛你的女人,會拋開一切和你一起瘋,因為她希望你和她在一起的時候不會有壓抑的感覺;

            真正愛你的女人,會拒絕所有對她示愛的男生,因為她的心里就只有你一個;

            真正愛你的女人,會全心全意地支持你,和你一起做的你喜歡做的事;

            真正愛你的女人,不會讓你因為她而停止了你前進地腳步,她會鼓勵你讓你沒有顧慮的往前走;

            真正愛你的女人,在分開了以后還是會常常想你,然后給遠方的你打給電話或發短信和你說要注意身體;

            真正愛你的女人,從不會要求你送她什么貴重的禮物,她只希望在她生日的時候你可以陪她度過一整天;

            真正愛你的女人,她會讓其他的女人介入你的生活,因為她希望你可以找到你所認為的屬于自己的幸福;

            真正愛你的女人,她會一直等,等到你對她說“我愛你”的那個時候。

          posted @ 2005-09-28 21:53 射手座的我 雙子座的她 閱讀(308) | 評論 (0)編輯 收藏


          2005年9月25日

          魚對水說:你看不見我的淚,因為我在水中。
          水對魚說:我能感覺到你的淚,因為你在我心中。
          我不是魚,你也不是水。你能看見我寂寞的眼淚嗎?

          魚對水說:我永遠不會離開你,因為離開你,我無法生存。
          水對魚說:我知道,可是如果你的心不在呢?
          我不是魚,你也不是水。我不離開你是因為我愛你。
          可是,你的心里有我嗎?

          魚對水說:我很寂寞,因為我只能待在水里。
          水對魚說:我知道,因為我的心里裝著你的寂寞。
          我不是魚,你也不是水。我寂寞是因為我思念你。
          可是,遠方的你能感覺到嗎?

          魚對水說:如果沒有魚,那水里還會剩下什么?
          水對魚說:如果沒有你,那又怎么會有我?
          我不是魚,你也不是水。沒有你的愛,我依然會好好的活。
          可是,好好的活并不代表我可以把你忘記。

          魚對水說:一輩子不能出去看看外面的世界,是我最大的遺憾。
          水對魚說:一輩子不能打消你的這個念頭,是我最大的失敗。
          我不是魚,你也不是水。現在的我只想要一個一輩子的承諾。
          可是,你負擔的起嗎?

          魚對水說:在你的一生中,我是第幾條魚?
          水對魚說:你不是我在水中的第一條魚,卻是在我心中的第一條。
          我不是魚,你也不是水。我們不是生命中的第一個,
          可是,你知道嗎?你卻是我第一個想嫁的人。

          魚對水說:你相信一見鐘情嗎?
          水對魚說:當我意識到你是魚的那一刻,就知道你會游到我的心里。
          我不是魚,你也不是水。我以為我對你的愛不會長久,以為那是一見鐘情。
          可是,我錯了,感情如酒,越封越濃越長久。

          魚對水說:為什么每次都是我問你答?
          水對魚說:因為我喜歡在問答中讓你了解我的心。
          我不是魚,你也不是水。為什么你總是讓我等待?
          難道你不知道,等待=失去信心=放棄。

          如果我是魚,而你是水,那該多好!水永遠都知道魚的想法,因為魚在水里。
          但是我不是魚,你也不是水。你永遠都不知道我的愛,
          因為我也許根本就不在你的心里。

          posted @ 2005-09-25 20:39 射手座的我 雙子座的她 閱讀(267) | 評論 (0)編輯 收藏


          2005年9月22日

          接口 Interface
                 沒有方法體,只有抽象方法, implements接口時候必須實現該接口所定義的所有的抽象方法
                 可以implements多個接口 用,號間隔.
          抽象類  Abstract
                 可以有一部份實現方法,也可以有抽象方法,
                 只可以extends一個抽象類

          二者都是不可實例化


          假設我們需要做一個支持多種數據庫的項目,但是數據庫之間有存在的差別,難道我們就要為不同的數據庫開發不同的系統?答案是NO!
          我們可以將多種數據庫所有的方法抽象出來,寫成一個個的方法組合到一個接口中
          然后有多少種數據庫我們就寫幾個這樣的類實現這個接口

          具體如下:
          我們首先把所有的抽象方法組合到一個DataOperate的接口中
          public interface DataOperate{
                Connection createConn();     /*建立連接*/
                 void closeConn();               /*關閉連接*/
                 ResultSet getRs();              /*返回結果集*/
                 boolean   exec();               /*執行語句*/
                 boolean   isClose();         
          /*公共方法 查看連接狀態*/
          }

          定義完接口 我們再創建一個抽象類 來實現公共的方法isClose()
          public abstract class AbstractDataOperate implements DataOperate{
               public Connection createConn(){
                      return null;
               }
               public void closeConn(){
               }
               public ResultSet getRs(){
                      return null;
               }
               public boolean exec(){
                      return fasle;
               }
               /**
               *公共方法的實現
               **/

               public boolean isClose(){
                  if(conn!=null)
                       return false;
                  else
                      return true;
               }
             
          }

          接下來我們分別寫3個類OracleDataOperate,SqlServerDataOperate,MySqlDataOperate繼承AbstractDatOperate具體實現方法 這里不再敘述

          好了 現在最后一步 寫一個工廠方法來統一得到數據庫操作類的實例
          public class DataOperateFactory{
               public static final int OracleKey=1;
               public static final int SqlServerKey=2;   
               public static final int MySqlKey=3;
              
               public static int DbType =OracleKey;
               private static DataOperate db;
              
               public static DataOperate getInstance(){
                     if(db==null){
                             if(DbType==OracleKey)
                                  db=new OracleDataOperate();
                            else if(DbType==SqlServerKey)
                                  db=new SqlServerDataOperate();
                            else if(DbType==MySqlKey)
                                  db=new MySqlDataOperate();
                    }
                   return db;
               }
          }

          Ok 到此所有工作都完成 來測試吧
          public class  MyTest{
            public static void main(String args[]){
                
                DataOperate db=AbstrctDataOperate.getInstance();
                db.createConn();

             }
          }


          在MyTest類里根本沒有出現OracelDataOperate、MysqlDataOperate等的影子,這就是接口的威力??蛻舳瞬槐蒯槍racelDataOperate等寫不同的代碼,它只關心DataOperate即可,具體要取那個類的邏輯就由DataOperateFactory負責了。
          如果還有新的數據庫添加的話 只需要象OracleaDataOperate那樣 再寫一個這樣類 繼承AbstractDataOperate類 然后在工廠類里DataOperateFactory加上相應的代碼即可

          posted @ 2005-09-22 23:12 射手座的我 雙子座的她 閱讀(1719) | 評論 (0)編輯 收藏

          職場十大精辟語句

          大學畢業生要找的只是一個工作,而不是職業,更不是事業。
              
            ———在北京召開的首屆中國大學生就業高峰論壇上,專家們均認為,高校畢業生就業時應當放低自身期望值,做好從藍領、灰領干起的心理準備。
            
            大學學習期間,要盡量爭取腦袋滿,而不要急于口袋滿。
              
            ———中科院院士王選談對當前部分學生休學開公司的看法。
              
            不要讀博士,因為博士在美國找工作的難度,相當于女博士在中國找老公的難度。也千萬不要羨慕有3個博士頭銜的人,因為只有找不到工作的時候才會一個接一個地讀博士。
              
            ———一個沒有博士頭銜的留學生如是說。
              
            千萬不要以為美國沒有天才,美國的天才只不過是喜歡退學而已。也千萬不要以為中國人都是天才,中國的有些天才除了考分高,基本上什么都不會。
              
            ———一個留學生在看到中國人在拼命上哈佛時說。
              
            他們以為MBA就像是一個美容院,讀完MBA,出來就會容光煥發,脫胎換骨。
              
            ———令專家擔憂的是:MBA在中國已被簡化為高薪加升職。
              
            中國人太多了,13億人,你藏在這么多人里頭,怎樣才能引起別人注意?一個老板要請人,兩個應聘者能力差不多,那他一定會選那個長得比較好看的。
              
            ———一位整容師如此解釋為何中國流行整容熱。
              
            讓我講創業的故事,就像祥林嫂講阿毛的故事一樣,講多了也沒什么意義。
              
            ———《福布斯》和《歐洲貨幣》雙料中國內地首富丁磊在母校中國電子科大說的話,以此表示對富豪話題的厭倦。
              
            八分人才,九分使用,十分待遇。
              
            ———力帆集團董事長尹明善談民營企業的留人之道。
              
            總是在裁人,簡稱總裁;老是板著臉,故稱老板;經常不理人那叫經理。
              
            ———商業職位新解。
              
            鐵飯碗的真正含義不是在一個地方吃一輩子飯,而是一輩子到哪兒都有飯吃。

          posted @ 2005-09-22 13:52 射手座的我 雙子座的她 閱讀(851) | 評論 (0)編輯 收藏

          1. MySQL(http://www.mysql.com)mm.mysql-2.0.2-bin.jar
          Class.forName( "org.gjt.mm.mysql.Driver" );
          cn = DriverManager.getConnection( "jdbc:mysql://MyDbComputerNameOrIP:3306/myDatabaseName", sUsr, sPwd );

          2. PostgreSQL(http://www.de.postgresql.org)pgjdbc2.jar
          Class.forName( "org.postgresql.Driver" );
          cn = DriverManager.getConnection( "jdbc:postgresql://MyDbComputerNameOrIP/myDatabaseName", sUsr, sPwd );

          3. Oracle(http://www.oracle.com/ip/deploy/database/oracle9i/)classes12.zip
          Class.forName( "oracle.jdbc.driver.OracleDriver" );
          cn = DriverManager.getConnection( "jdbc:oracle:thin:@MyDbComputerNameOrIP:1521:ORCL", sUsr, sPwd );

          4. Sybase(http://jtds.sourceforge.net)jconn2.jar
          Class.forName( "com.sybase.jdbc2.jdbc.SybDriver" );
          cn = DriverManager.getConnection( "jdbc:sybase:Tds:MyDbComputerNameOrIP:2638", sUsr, sPwd );
          //(Default-Username/Password: "dba"/"sql")

          5. Microsoft SQLServer(http://jtds.sourceforge.net)
          Class.forName( "net.sourceforge.jtds.jdbc.Driver" );
          cn = DriverManager.getConnection( "jdbc:jtds:sqlserver://MyDbComputerNameOrIP:1433/master", sUsr, sPwd );

          6. Microsoft SQLServer(http://www.microsoft.com)
          Class.forName( "com.microsoft.jdbc.sqlserver.SQLServerDriver" );
          cn = DriverManager.getConnection( "jdbc:microsoft:sqlserver://MyDbComputerNameOrIP:1433;databaseName=master", sUsr, sPwd );

          7. ODBC
          Class.forName( "sun.jdbc.odbc.JdbcOdbcDriver" );
          Connection cn = DriverManager.getConnection( "jdbc:odbc:" + sDsn, sUsr, sPwd );

          8.DB2
          Class.forName("Com.ibm.db2.jdbc.net.DB2Driver");
          String url="jdbc:db2://192.9.200.108:6789/SAMPLE"
          cn = DriverManager.getConnection( url, sUsr, sPwd );

          posted @ 2005-09-22 11:32 射手座的我 雙子座的她 閱讀(240) | 評論 (0)編輯 收藏

          ANT工具是Apche的一個開放源代碼項目,它是一個優秀的軟件工程管理工具
          本章講解如何在Eclipse下運用ANT

          準備工作
          1.安裝Eclipse3.0版本,安裝jdk,我用的是1.4.2版本,下載ANT包.
          2.設置環境變量
              set :[name] --JAVA_HOME |     [value] ----jdk的安裝目錄
              set :[name] -- ANT_HOME |      [value] ----ant的安裝目錄
              set :將系統的path目錄后面添加 %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;%ANT_HOME%lib;{用;號隔開}
             設置完環境變量 進入控制臺測試:開始->運行->輸入CMD->輸入ant -version 如果打出ANT的版本那就成功


          新建Project
          創建一個類 名為HelloANT 我們只需要做的是在HelloANT類里打印出"HelloANT"
          項目目錄如下  Porject
                         |-----com
                                |--ant
                                    |---HelloANT.java

          HelloAnt代碼如下
          package com.ant;

          public class HelloANT {

           public static void main(String[] args) {
            System.out.println("HelloAnt!!");
           }
          }

          現在我們開始運用ANT來編譯該類文件 以及創建classes輸出文件夾 和刪除編譯好的classes
          1.新建2個文件 build.properties   build.xml
            build.properties里面存儲build.xml需要的公共變量 以 鍵-值對的方式
            build.properties代碼
            build.src=com /*這里build.src指向項目根目錄com文件夾*/
            build.classes=classes
          /*這里build.classes指向項目根目錄不存在的classes文件夾來存放classes文件*/
            
           
          build.xml代碼
          <?xml version="1.0"?>
          <!--創建一個工程項 默認運行的target是init[default]  [basedir]="."代表是指向項目根目錄-->
          <project default="init" basedir=".">
           <!--導入properties文件-->
           <property file="build.properties"></property>
           <!--初始化 創建classes文件夾-->
           <target name="init">
            <mkdir dir="${build.classes}"/>
           </target>
           <!--編譯JAVA文件 編譯時先運行init [depends]-->
           <target name="compile" depends="init">
            <javac srcdir="${build.src}" destdir="${build.classes}">
            </javac>
           </target>

           <!--清理 刪除classes文件夾-->
           <target name="clean">
            <delete includeemptydirs="true">
             <fileset dir="${build.classes}"></fileset>
            </delete>
           </target>
          </project>

          ok 保存build.xml文件
          現在可以在Eclipse下運行ANT了
          在Eclipse里的透視圖[大綱]里
          可以看到build.xml文件里幾個target的名
          右鍵->運行->ANT構建
          看看效果吧

          posted @ 2005-09-22 11:24 射手座的我 雙子座的她 閱讀(832) | 評論 (0)編輯 收藏

          最近窮瘋了,只好吃饅頭——
          > > > > > > > > > > >   想吃餅的時候,把饅頭拍扁了當餅吃。
          > > > > > > > > > > >
          > > > > > > > > > > >   想吃面的時候,拿梳子把饅頭梳幾下當面吃。
          > > > > > > > > > > >
          > > > > > > > > > > >   想吃冰淇淋的時候,把饅頭放在冰箱里凍凍再吃。
          > > > > > > > > > > >
          > > > > > > > > > > >   想吃餅干的時候,把饅頭烤脆了再吃。
          > > > > > > > > > > >
          > > > > > > > > > > >   想喝奶的時候,把饅頭上面擰個揪揪,嘬著吃。
          > > > > > > > > > > >
          > > > > > > > > > > >   想吃方便面的時候,把饅頭從下面掏空,再把掏出來的饅頭渣放在里面,用水
          > > > > > > > > > > > 泡著
          > > > > > > > > > > > 吃。
          > > > > > > > > > > >
          > > > > > > > > > > >   想吃肉的時候,把饅頭捏成豬或羊的形狀吃。
          > > > > > > > > > > >
          > > > > > > > > > > >   想吃火鍋的時候,把饅頭切成片,放在開水里,撈著吃。
          > > > > > > > > > > >
          > > > > > > > > > > >   想吃香腸的時候,把饅頭搓成條再吃。
          > > > > > > > > > > >
          > > > > > > > > > > >   想吃螃蟹的時候,把饅頭從上面掀開再吃。
          > > > > > > > > > > >
          > > > > > > > > > > >   想吃漢堡的時候,把饅頭包在紙里,然后把紙打開再吃。
          > > > > > > > > > > >
          > > > > > > > > > > >   想吃香蕉的時候,把饅頭皮剝了再吃。
          > > > > > > > > > > >
          > > > > > > > > > > >   想吃雞腿的時候,找根筷子穿著饅頭吃。
          > > > > > > > > > > >
          > > > > > > > > > > >   想吃包子的時候,把饅頭瓤摳出來再塞進去吃。
          > > > > > > > > > > >
          > > > > > > > > > > >   想吃洋蔥的時候,在饅頭里放點芥末再吃。
          > > > > > > > > > > >
          > > > > > > > > > > >   想吃麥片的時候,把饅頭捏碎,再壓扁,再泡水吃。
          > > > > > > > > > > >
          > > > > > > > > > > >   窮有窮的過法啊……

          posted @ 2005-09-22 09:59 射手座的我 雙子座的她 閱讀(257) | 評論 (0)編輯 收藏


          2005年9月21日

          終于申請到Blog了..過去一直沒時間,趁著現在稍微空閑 準備好好的把過去的學習過程和學習方法,以及記錄一下學習新東西的筆記. 的確.如果學到新東西 自己給寫出來了,描述清楚了.那多半就是不會忘記了. 恩~開始吧. !!!

          posted @ 2005-09-21 22:21 射手座的我 雙子座的她 閱讀(186) | 評論 (0)編輯 收藏


          僅列出標題  下一頁

          posts - 11, comments - 1, trackbacks - 0, articles - 0

          Copyright © 射手座的我 雙子座的她

          主站蜘蛛池模板: 航空| 武穴市| 安仁县| 前郭尔| 修武县| 洪雅县| 瑞安市| 尚志市| 东兴市| 辽中县| 金华市| 农安县| 株洲县| 民县| 垣曲县| 临沂市| 湘乡市| 莱州市| 来安县| 松滋市| 木兰县| 疏勒县| 融水| 灵台县| 河源市| 得荣县| 彰化县| 田林县| 辽宁省| 横山县| 天祝| 随州市| 江油市| 桦甸市| 广东省| 射阳县| 江川县| 阿克陶县| 东乡| 娄烦县| 深泽县|