<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-26  評(píng)論-44  文章-20  trackbacks-0
      2007年8月6日
    愛(ài)情是相知相交的默契,還是好奇加視覺(jué)沖擊的新鮮感,是平等相待,還是占有和被保護(hù)。漫長(zhǎng)的人生該和什么樣的人渡過(guò),離婚爭(zhēng)吵難道無(wú)法避免?為什么對(duì)異性只是觀看美麗,卻無(wú)法去欣賞崇拜。如果不留心觀察,只是流于表面,又怎么能找到另一半。我們沾染太多世俗,儼然社會(huì)的傀儡,怎么才能逃離社會(huì)陰暗的一面,追尋愛(ài)情抑或人生的歸宿,只有留心觀察,認(rèn)真思考,不流于表面。
    posted @ 2009-08-02 19:07 開(kāi)機(jī) 閱讀(189) | 評(píng)論 (0)編輯 收藏
         摘要:   閱讀全文
    posted @ 2008-11-10 21:45 開(kāi)機(jī) 閱讀(1770) | 評(píng)論 (1)編輯 收藏
    在以前religionMIS基礎(chǔ)(見(jiàn)我的隨筆:extjs做的信息管理系統(tǒng))上加的sping bean,同時(shí)刪除的幾個(gè)類(lèi)。

    代碼:http://m.tkk7.com/Files/yijia/(%E5%8E%9F%E5%88%9B)spring_religionMIS.rar

    spring包:http://m.tkk7.com/Files/yijia/spring.rar
    解壓后的spring.jar放到web-info/lib下即可。

    數(shù)據(jù)庫(kù)文件:http://m.tkk7.com/Files/yijia/reliongionmis 20080829 1731.rar
    是mysql做的。

    剛開(kāi)始進(jìn)系統(tǒng)的時(shí)候有點(diǎn)小問(wèn)題,沒(méi)數(shù)據(jù)顯示,按一下里面的按鈕,如添加,之后就能顯示數(shù)據(jù)了。各個(gè)功能就正常的。以前沒(méi)這個(gè)毛病,加了spring 后就這樣的,也許是以前每次都創(chuàng)建新實(shí)例沒(méi)問(wèn)題,現(xiàn)在在spring容器配置后 單實(shí)例引起的問(wèn)題,。總體來(lái)說(shuō),比以前好的不少。

    posted @ 2008-11-06 13:32 開(kāi)機(jī) 閱讀(1341) | 評(píng)論 (0)編輯 收藏
    public class Table {
        String tableName;
        String mainPropertyName;
        static int count=1;
        static DBExcute dbExcute=(DBExcute)new ClassPathXmlApplicationContext("applicationContext.xml").getBean("dbExcute");
       
        Table(String tableName,String mainPropertyName){
            this.tableName=tableName;
            this.mainPropertyName=mainPropertyName;
            System.out.println("construct table"+(count++)+" use:"+dbExcute);
        }
            .............
            .............
         public static void main(String []dsf){
         new Table("user","1");
      }
    }

    如上只new Table(..)一次:
    結(jié)果卻是:
    construct table1 use:null
    construct table2 use:null
    construct table3 use:null
    construct table4 use:null
    construct table5 use:null
    construct table6 use:com.yijia_ctgu.DB.DBExcute@535b58


    奇怪中。。。。。。。


    明白了,spring容器初始化的時(shí)候,初始化dbDAO bean會(huì)生成五個(gè)table,可能是先初始化,后才賦值給dbExcute,所以剛開(kāi)始的五個(gè)都是null.

    posted @ 2008-11-05 14:45 開(kāi)機(jī) 閱讀(267) | 評(píng)論 (1)編輯 收藏
    我在普通類(lèi)的main方法中調(diào)用bean:
    Resource resource = new ClassPathResource("applicationContext.xml");
    BeanFactory factory = new XmlBeanFactory(resource);
    for(int i=1;i<5;i++){
              DB dbDAO = (DB)factory.getBean("dbDAO");
              System.out.println(dbDAO);
          }
    每次執(zhí)行程序(不停的調(diào)用main方法,不只是只看一次循環(huán)!)都是相同的引用:
    com.yijia_ctgu.DB.DB@12a54f9
    com.yijia_ctgu.DB.DB@12a54f9
    com.yijia_ctgu.DB.DB@12a54f9
    com.yijia_ctgu.DB.DB@12a54f9


    但是在servlet中使用時(shí):
    Resource resource = new ClassPathResource("applicationContext.xml");
    BeanFactory factory = new XmlBeanFactory(resource);
     dbDAO = (DB)factory.getBean("dbDAO");
    每次操作創(chuàng)建的都是不同的引用:
    如com.yijia_ctgu.DB.DB@16e1782
      com.yijia_ctgu.DB.DB@19be6ee

    為何會(huì)是這樣,是不是servlet每次都會(huì)重新生成spring容器?是servlet獲取bean的方式有問(wèn)題嗎?還是servlet根本不可能每次使用相同的bean.

    我懂了,必須用別的方式:先在web.xml中定義applicatincontext的位置,再用WebApplicationContextUtils獲取ApplicationContext,在用它獲取bean,這樣就每次就是同樣的bean了。

    但是錯(cuò)誤還是在繼續(xù),spring我沒(méi)系統(tǒng)的學(xué),所以總是有太多的問(wèn)題。

    posted @ 2008-11-05 10:34 開(kāi)機(jī) 閱讀(354) | 評(píng)論 (0)編輯 收藏
    在web.xml中配置spring的contextconfigloaction時(shí),總是定位不到src/applicationContext.xml或者
    /src/applicationContext.xml(也許是我不懂父目錄當(dāng)前目錄之類(lèi)的)。算了,直接刪除這個(gè)context-param,把a(bǔ)pplicationContext.xml文件復(fù)制到web-info下面,反正spring默認(rèn)的就是那里。
    要是剛開(kāi)始myeclipse自動(dòng)生成的applicationContext.xml文件的位置就在web-info下就不什么事都沒(méi)了,不知道把它放到src有什么意圖?

    我暈啊,后來(lái),程序還要到src下找applicationContext.xml文件,web-info下的也不能刪,無(wú)語(yǔ)了。

    我發(fā)布到tomcat的時(shí)候,是以WebRoot為根目錄的,即tomcat的server.xml中是這樣配置的:
    <Context path="" docBase="D:\spring_religionMIS\WebRoot"/>
    這也許就是定位不到src/..的原因吧,因?yàn)槌绦蚩偸菑腤ebRoot往下找,當(dāng)然找不到,我又用../src/applicationContext.xml定位也找不到,不知錯(cuò)在哪里?
    posted @ 2008-11-04 17:27 開(kāi)機(jī) 閱讀(2178) | 評(píng)論 (2)編輯 收藏
    MyEclipse中,在加spring時(shí),開(kāi)始只加了spring-core,spring-aop。后來(lái)想加spring-web上去,除了直接復(fù)制粘貼包上去,還有沒(méi)有更好的方法?
    posted @ 2008-11-03 21:27 開(kāi)機(jī) 閱讀(216) | 評(píng)論 (0)編輯 收藏
      搞了半天,只要在myeclispe中打開(kāi)tomcat就行了。
      我剛剛都是在外部用tomcat自帶的monitor打開(kāi)的,以前沒(méi)注意到,寫(xiě)在這里提醒自己,希望對(duì)出現(xiàn)類(lèi)似狀況的同志有點(diǎn)幫助。
    posted @ 2008-11-03 15:16 開(kāi)機(jī) 閱讀(739) | 評(píng)論 (0)編輯 收藏
    我用easyjweb project命令快速生成的工程后,在src/main/java下建了一個(gè)包c(diǎn)om.easyjweb.action在包下面寫(xiě)了個(gè)HelloAction,但是運(yùn)行時(shí)出錯(cuò),說(shuō)frameworkException: 沒(méi)有找到處理模板的類(lèi):com.easyjweb.action.HelloAction,我在web-inf的classes目錄里看了沒(méi)編譯后的文件。我是用easyjweb project命令快速生成的工程,為什么eclipse沒(méi)編譯對(duì)應(yīng)的java文件呢?

    我自己手工新建的工程,添加對(duì)應(yīng)的類(lèi),寫(xiě)好web.xml,可以運(yùn)行程序。

    我又用easyjweb project ... -ejs命令試了試,寫(xiě)了Java源文件后,發(fā)現(xiàn)classes目錄有了編譯后的文件,可是這樣生產(chǎn)的工程師EasyJweb+JPA+spring結(jié)構(gòu)的。我只是要個(gè)簡(jiǎn)單的應(yīng)用,用easyjweb project ..又試了幾次,還是不能編譯對(duì)應(yīng)的Java文件。哎,我也不知道問(wèn)題出在哪里?我想這樣一個(gè)成名的框架一定不會(huì)有問(wèn)題了。哪位熟悉此框架的大哥,能不能幫忙解答一下。
    posted @ 2008-08-30 18:12 開(kāi)機(jī) 閱讀(385) | 評(píng)論 (1)編輯 收藏
      extjs做的信息管理系統(tǒng),由于業(yè)務(wù)簡(jiǎn)單,操作數(shù)據(jù)庫(kù)的API用自己寫(xiě)的(我以前的 自己做試卷管理系統(tǒng) 系列中 提到),簡(jiǎn)單實(shí)用。在顯示打印頁(yè)面的時(shí)候,用到的servlet FormFilter,原因是數(shù)據(jù)在網(wǎng)絡(luò)間傳輸時(shí)原先在數(shù)據(jù)庫(kù)中的順序打亂了,在這個(gè)servlet中用數(shù)組給它重新排列打印頁(yè)面上數(shù)據(jù)的順序。
      程序盡量用只用一個(gè)方法完成所有g(shù)rid中一類(lèi)類(lèi)似的功能,用一個(gè)servlet完成所有一類(lèi)類(lèi)似的操作,用一個(gè)jsp顯示所有要打印的頁(yè)面。

    代碼下載:http://m.tkk7.com/Files/yijia/religionMIS.rar
    數(shù)據(jù)庫(kù)腳本在代碼根目錄下。
      開(kāi)發(fā)環(huán)境:Eclipse3.2,mysql5.0,
              eclispe開(kāi)發(fā)環(huán)境中所有文件的編碼都設(shè)置為utf-8。修改mysql的配置文件,使其默認(rèn)編碼為utf-8(方法在網(wǎng)上可以搜到)或者用MySQL Administrator圖形工具也可設(shè)置。
      瀏覽器:firefox。我用的是firefox3,不知道firefox2可不可以。但在ie中運(yùn)行不了,我已經(jīng)試過(guò)了。
      還有什么問(wèn)題,跟我留言,我非常樂(lè)意與大家交流,這是我暑假學(xué)extjs做的,算作練習(xí)。

    補(bǔ)充:編輯是自動(dòng)編輯,在grid輸入框編輯完后,監(jiān)聽(tīng)事件負(fù)責(zé)主動(dòng)把編輯的結(jié)果上傳到數(shù)據(jù)庫(kù)。添加按鈕也是,點(diǎn)擊添加后,新紀(jì)錄在grid上顯示的同時(shí)也插入到數(shù)據(jù)庫(kù)。刪除可選中多行后刪除。up按鈕用的是ext.ux.uploaddialog上傳組件。打印頁(yè)面是用jsp顯示,原先還是想用extjs實(shí)現(xiàn),一來(lái)覺(jué)得復(fù)雜,二來(lái)不知道怎么打印ext窗口,就放棄了。

    posted @ 2008-08-29 17:56 開(kāi)機(jī) 閱讀(6561) | 評(píng)論 (9)編輯 收藏
      做試卷管理系統(tǒng)的時(shí)候,寫(xiě)了一個(gè)操作數(shù)據(jù)庫(kù)的工具,它與數(shù)據(jù)庫(kù)的具體的表,屬性都無(wú)關(guān):Tabel t=DB.getTabel("user")后可以操作相應(yīng)的數(shù)據(jù)表,只要這個(gè)名為user的表存在,t.search(property[][],start,limit)傳入一個(gè)屬性數(shù)組,property比如可以為{{"username","admin"},{"password","admin"}....},然后數(shù)據(jù)庫(kù)就可以在user表中查找username="admin"....的記錄,start,limit是查找起始點(diǎn)和數(shù)目限制,js分頁(yè)時(shí)用到。
      這樣一來(lái),servlet也可以和具體的表,屬性無(wú)關(guān),只和幾個(gè)通用屬性有關(guān),如tableName,id(主鍵也可以為別的,在config.properties中配置),start,limit等等和具體數(shù)據(jù)庫(kù)無(wú)關(guān)的。奇妙就在這里:不管數(shù)據(jù)庫(kù)有多少?gòu)埍恚瑢?duì)于與每一個(gè)操作,servlet只有一個(gè),如Edit,而不需要EditUser,EditPaper....等等很多edit了。同樣以后系統(tǒng)怎樣擴(kuò)展,怎樣增加表,表的屬性怎樣變化。servlet都可以不變,他只是操作相應(yīng)的數(shù)據(jù)。那么具體的業(yè)務(wù)操作呢?
      js為這些帶來(lái)了可能,它與返回的數(shù)據(jù)交互操作,和在服務(wù)器沒(méi)有兩樣,為servlet省去了麻煩。
      以上是我個(gè)人感想,僅供參考。
      操作數(shù)據(jù)庫(kù)的工具和寫(xiě)的servlet參見(jiàn) 自己動(dòng)手做試卷管理系統(tǒng)的幾篇隨筆。js不好意思公開(kāi)了,這是給別人做的小項(xiàng)目。

    posted @ 2008-08-12 08:32 開(kāi)機(jī) 閱讀(1681) | 評(píng)論 (7)編輯 收藏
    在實(shí)踐中的完善,操作數(shù)據(jù)庫(kù)的工具也漸漸的完善了,
    下面是我的操作數(shù)據(jù)庫(kù)的工具和使用它的servlet:http://m.tkk7.com/Files/yijia/com.rar
    另外還有使用到的第三方工具:http://m.tkk7.com/Files/yijia/lib.rar
     

    posted @ 2008-08-07 19:35 開(kāi)機(jī) 閱讀(332) | 評(píng)論 (0)編輯 收藏
    參考 隨筆:自己動(dòng)手做試卷管理系統(tǒng)-用戶管理部分

    我增加了3個(gè)類(lèi):DB,Table,Row
    DB:用來(lái)取得所有的table,并生產(chǎn)相應(yīng)的Table對(duì)象,存貯在HashTable中,使用方法getTable("tableName");可以從HashTable中取得。注意:生產(chǎn)Table對(duì)象的時(shí)候,用了構(gòu)造方法:new Table("tableName","mainPropertyName");mainProperty是給表設(shè)置的主鍵名,在config.properties中可以修改。
    Table:定義了 取得某一行(getRow),插入記錄(insert)。這兩個(gè)方法都必須通過(guò)主鍵來(lái)操作。
                 刪除記錄(delete),搜索(search)。這兩個(gè)方法任意指定條件,如刪除 屬性u(píng)sername="321"的記錄。
                 計(jì)數(shù)(count),此方法有給定條件的,有無(wú)條件的(用來(lái)求 整個(gè)表有多少行)。
                 列表(list),返回一個(gè)List代表了整個(gè)表的信息。用到了RowSetDynaClass(在DBExcute類(lèi)中),它是個(gè)好東東。
    Row:更簡(jiǎn)單了,兩個(gè)方法:set(String propertyName,String propertyValue)和get(String propertyName) 方法


    我的目的就是來(lái)做一個(gè)操作數(shù)據(jù)庫(kù)的通用工具,當(dāng)環(huán)境和數(shù)據(jù)變化時(shí),只需修改一下config.properties(當(dāng)然 性能和我這個(gè)業(yè)余的一樣,也是有點(diǎn)業(yè)余的)。
    下面是我檢測(cè)的代碼:
    try {  //取得user表中主鍵名(這里的主鍵名是username)為Root的行記錄的密碼項(xiàng)的值
                System.out.println(DB.getDB().getTable("user").getRow("Root").get("password"));
            } catch (NotQueryException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
    有很多地方還需要完善,特別是異常類(lèi),我寫(xiě)的異常類(lèi)有點(diǎn)少,不夠用,然后定義的也不是很好。連接池不知道是怎么建的,我發(fā)現(xiàn)用連接太浪費(fèi)啦,就上面的代碼就執(zhí)行了3次連接,getTable的時(shí)候,getRow的時(shí)候,getPassword的時(shí)候,(用HashTable來(lái)存貯Tabel對(duì)象,盡可能的減少了連接,節(jié)約了資源)。等等很多問(wèn)題,還請(qǐng)各位多多指教!!!

    最后提醒一下:我只是在com.yijia_ctgu.DB包中增加了3個(gè)類(lèi),以前做的頁(yè)面jsp和servlet,bean都沒(méi)變化(還沒(méi)來(lái)得及用上這個(gè)工具)。java源文件和jsp文件的編碼是gb2312,注意改一下,不然會(huì)亂碼,其實(shí)用utf-8挺好的,不過(guò)我知道的遲了,現(xiàn)在想改,嫌麻煩的。

    代碼下載:http://m.tkk7.com/Files/yijia/papermanage0.3.rar

    改進(jìn)后的操作數(shù)據(jù)庫(kù)工具:http://m.tkk7.com/Files/yijia/yijia_ctgu.rar
    更新時(shí)間:2008年7月30日
    posted @ 2008-07-26 21:33 開(kāi)機(jī) 閱讀(304) | 評(píng)論 (0)編輯 收藏
    jdbc中sql語(yǔ)句能不能這樣寫(xiě):
    String sql="delete from '"+tableName+"' where '"+property+"'='"+propertyName+"'";
    就是表的名字,屬性名和值 通過(guò)方法傳進(jìn)去,
    當(dāng)然我的這個(gè)失敗了,不知道有沒(méi)有方法達(dá)到同樣的效果?
    posted @ 2008-07-26 11:13 開(kāi)機(jī) 閱讀(496) | 評(píng)論 (1)編輯 收藏
         摘要:   閱讀全文
    posted @ 2008-07-11 16:37 開(kāi)機(jī) 閱讀(1431) | 評(píng)論 (0)編輯 收藏
         摘要:   閱讀全文
    posted @ 2008-07-10 10:03 開(kāi)機(jī) 閱讀(277) | 評(píng)論 (0)編輯 收藏
         摘要:   閱讀全文
    posted @ 2008-07-10 10:02 開(kāi)機(jī) 閱讀(409) | 評(píng)論 (0)編輯 收藏
         摘要: 開(kāi)發(fā)環(huán)境:java5,myeclipse,tomcat。為了從基礎(chǔ)理解javaweb,采用jsp+servlet,沒(méi)用任何框架。
    源文件有四個(gè)包:
    com.yijia_ctgu.bean
    com.yijia_ctgu.DB
    com.yijia_ctgu.exception
    com.yijia_ctgu.servle  閱讀全文
    posted @ 2008-06-13 09:42 開(kāi)機(jī) 閱讀(1043) | 評(píng)論 (7)編輯 收藏
         摘要: struts是控制器C,hibernate封裝的對(duì)數(shù)據(jù)庫(kù)的操作,是M層,spring在ssh中的主要作用是整合資源,就像一張地圖,web系統(tǒng)需要用到某些資源時(shí)就去里面找,這些資源可以是控制層對(duì)象,也可以是模型層對(duì)象,或者是更廣泛的東西。  閱讀全文
    posted @ 2008-06-09 08:36 開(kāi)機(jī) 閱讀(393) | 評(píng)論 (2)編輯 收藏
         摘要:   閱讀全文
    posted @ 2008-06-08 10:33 開(kāi)機(jī) 閱讀(1286) | 評(píng)論 (0)編輯 收藏
         摘要:   閱讀全文
    posted @ 2008-05-10 14:41 開(kāi)機(jī) 閱讀(531) | 評(píng)論 (1)編輯 收藏

    回到原點(diǎn),重新開(kāi)始.但愿一切,還不是太晚!

    posted @ 2008-05-09 16:31 開(kāi)機(jī) 閱讀(210) | 評(píng)論 (0)編輯 收藏
      我是懶散的,但我也想做一個(gè)努力奮斗的人。無(wú)奈我的大腦就想睡了幾百年似的,一點(diǎn)活力也沒(méi)有。我真上懷疑我的腦袋還沒(méi)好好的利用過(guò),就算用了也沒(méi)用對(duì)地方。
      誰(shuí)又能做我的指路明燈呢?可是常言又道:人比先自救而人救之。
      我常常告訴自己從明天起好好的努力,或者就從現(xiàn)在起。但我也不知道這是對(duì)自己的第多少個(gè)承諾呢?
      為什么有些人能夠一輩子努力,不松懈,比如居里夫人這樣的。而我卻是在不斷的放棄,松懈了。所幸的是我不曾徹底的絕望過(guò),還可以對(duì)自己說(shuō):從明天起好好干。

    posted @ 2007-08-12 16:33 開(kāi)機(jī) 閱讀(338) | 評(píng)論 (2)編輯 收藏
    我能不能這樣想java的分布式計(jì)算。假如設(shè)計(jì)一個(gè)聊天工具,在自己的窗口寫(xiě)下一行字的時(shí)候,同時(shí)在“聊友”的窗口寫(xiě)下了這行字,也就是說(shuō)聊天的人共用了某些類(lèi)的實(shí)例,這些實(shí)例可以是:封裝了談話內(nèi)容,談話時(shí)間...的bean。這樣就不用顯式的調(diào)用socket之類(lèi)的東東了,而且對(duì)數(shù)據(jù)庫(kù)的操作也更方便。
      如果真能這樣,寫(xiě)一個(gè)聊天器就輕而易舉了。

    posted @ 2007-08-08 10:51 開(kāi)機(jī) 閱讀(278) | 評(píng)論 (0)編輯 收藏
    在struts的表單bean的validate()方法中:
    if(username.trim().equals(""))
                error.add("username", new ActionMessage("error.username.username_is_requred"));
    if(password.trim().equals(""))
                error.add("password", new ActionError("error.password.password_is_requred"));
    測(cè)試后,兩個(gè)的效果看起來(lái)一樣。
    我初次嘗試這些,看不出它們的不同。
    那位高手有興趣的,請(qǐng)多多指教!
    posted @ 2007-08-06 22:57 開(kāi)機(jī) 閱讀(1408) | 評(píng)論 (2)編輯 收藏
    主站蜘蛛池模板: 国产成人不卡亚洲精品91| 永久黄网站色视频免费直播| 国产成人亚洲毛片| 亚洲fuli在线观看| 久久亚洲免费视频| 亚洲熟伦熟女新五十路熟妇| 91免费精品国自产拍在线不卡| 久久这里只精品99re免费| jizz在线免费观看| 青草青草视频2免费观看| tom影院亚洲国产一区二区| 亚洲bt加勒比一区二区| 国产亚洲美日韩AV中文字幕无码成人 | 久久最新免费视频| 羞羞视频免费网站入口| 亚洲日韩AV一区二区三区四区| 亚洲精品在线播放| 亚洲精品白色在线发布| 亚洲狠狠综合久久| 国产亚洲精AA在线观看SEE| 久久精品国产亚洲Aⅴ蜜臀色欲| 免费人成网站7777视频| 国产高清在线免费| 精品免费久久久久久成人影院| 成人性生免费视频| 搡女人免费视频大全| 免费成人激情视频| 91九色精品国产免费| 久久九九兔免费精品6| 51精品视频免费国产专区| 99久久久国产精品免费牛牛四川 | 免费一级毛片女人图片| 国产免费私拍一区二区三区| 性盈盈影院免费视频观看在线一区| 国产一卡二卡四卡免费| 100000免费啪啪18免进| 久久久久久久免费视频| 日韩精品无码区免费专区| 成人黄动漫画免费网站视频 | 黄色一级视频免费观看| 一级日本高清视频免费观看|