amp@java

            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            99 隨筆 :: 0 文章 :: 228 評論 :: 0 Trackbacks

          #

          近段時間我的電腦的右鍵菜單慢得要命,在一個文件或文件夾上點(diǎn)一下右鍵,要等上10幾秒才能彈出菜單來,開始就覺得應(yīng)該是某個程序添加右鍵菜單項導(dǎo)致的,但看看右鍵里除了winrar和殺毒軟件添加的項之外沒有其他項了,上網(wǎng)搜了發(fā)現(xiàn)有很多人碰到這種問題,不過都是由某些軟件導(dǎo)致的,而我并沒裝過那些軟件。
          后來下了個系統(tǒng)修復(fù)軟件,檢查了一下我的shell擴(kuò)展,才發(fā)現(xiàn)有個菜單項居然是指向局域網(wǎng)上另一臺電腦的一個共享目錄下的文件!我才想起以前曾經(jīng)瀏覽過那臺電腦的共享目錄,并運(yùn)行了里面一個清理工具,那個東西在右鍵了加了一個項;后來那臺電腦重裝了系統(tǒng),把機(jī)器名改了,那個共享已經(jīng)不復(fù)存在,所以我每次點(diǎn)右鍵,電腦都要查找一下那個共享,結(jié)果又查不到,不慢才怪!馬上把這個項刪除,一點(diǎn)右鍵,瞬間顯現(xiàn),呵呵。

          吸取教訓(xùn):以后少在別人的共享目錄里運(yùn)行程序,windows的共享有時候打開時慢得難以忍受,說不定什么時候發(fā)現(xiàn)電腦變慢就是由共享引起的。
          posted @ 2006-10-16 00:46 amp@java 閱讀(1942) | 評論 (4)編輯 收藏

          支持GPRS的MODEM可以連上互聯(lián)網(wǎng),就能支持MMS(彩信)的發(fā)送,但實際上MMS的機(jī)制與SMS相差很大,并不是幾個AT指令就能搞定的。而且MMS沒有統(tǒng)一的標(biāo)準(zhǔn),各個廠家的規(guī)格有所不同,運(yùn)營商使用的標(biāo)準(zhǔn)也不同。
          怎樣才能像發(fā)短信一樣通過串口連接MODEM發(fā)送彩信?似乎還沒有相關(guān)的解決方案,現(xiàn)有的都是整套的軟件。
          http://blog.csdn.net/sealedxlmg/archive/2005/01/01/237054.aspx
          posted @ 2006-10-09 12:26 amp@java 閱讀(539) | 評論 (0)編輯 收藏

          Modem型號:Wavecom Fastrack M1206B,支持GPRS,詳細(xì)文檔地址http://www.wavecom.com/modules/movie/scenes/search/index.php?fuseAction=searchPopup&article_identity=WMPuSupportHardFirmwaresM1206B&rubric_identity=WMPuSupportHardFirmwares&part=long

          短信存儲器:SM(普通短信),SR(信息報告),移動動感地帶各20條,聯(lián)通UP新勢力各100條

          串口速率:有的只能工作在9600bps,有的可以工作在多種速率

          posted @ 2006-10-09 00:12 amp@java 閱讀(909) | 評論 (0)編輯 收藏

          近段時間單位的一臺服務(wù)器出了問題,導(dǎo)致業(yè)務(wù)受到影響,開始的時候我總是認(rèn)為是網(wǎng)絡(luò)的原因,因為傳輸線路的帶寬只有2M,是最有可能成為瓶頸的。于是提出把傳輸帶寬增加到4M。但領(lǐng)導(dǎo)計算了一下,覺得網(wǎng)絡(luò)的帶寬是足夠的。他讓我們做了一系列的測試,最終發(fā)現(xiàn),原來問題出在服務(wù)器的那個程序上:當(dāng)把該程序窗口最大化時,CPU占用率是100%,把它最小化后,CPU占用率馬上接近0;把該程序窗口最大化一段時間,業(yè)務(wù)就開始出現(xiàn)延遲的情況,把程序窗口最小化后,業(yè)務(wù)逐漸恢復(fù)正常。今天把那個窗口一直保持最小化,結(jié)果之前的問題都不再出現(xiàn)了。原來一個圖形界面是如此地消耗資源,真是想不到。可能那個程序做得也比較垃圾,服務(wù)器是PIII 1G的CPU,512M的內(nèi)存,處理每秒2Mb的數(shù)據(jù),居然還忙不過來!
          于是那位領(lǐng)導(dǎo)就對我說:“我不是批評你,遇到問題一定要追查到底,不要想當(dāng)然,要從各方面考慮,找到問題的根本原因……”一席話說得我羞愧難當(dāng)。
          posted @ 2006-09-23 01:41 amp@java 閱讀(197) | 評論 (0)編輯 收藏

          使用Hibernate可以輕松實現(xiàn)一對多的表查詢,不過性能比較差:先查主表(一),然后根據(jù)查出來的每個記錄的ID查附表(多),所以要執(zhí)行(1+結(jié)果記錄數(shù))次查詢。

          posted @ 2006-08-31 11:36 amp@java 閱讀(548) | 評論 (1)編輯 收藏

          問題描述:
          使用WTP開發(fā)WEB程序,需要把WEB-INF/lib下的某個jar庫刪除,在eclipse的項目瀏覽器里是刪不掉的,因為它在BuildPath里。于是就先把eclipse關(guān)掉,然后通過資源管理器找到那個project的文件夾,把文件刪除。重新打開eclipse,運(yùn)行該web程序(Run on server),會出現(xiàn)Publishing failed錯誤,詳細(xì)信息為:Resource /xxxx does not exist,其中/xxxx是那個project文件夾。怎么可能呢,那個文件夾好好地放在那里,居然說does not exist!

          原因:
          由于在外面把某個jar刪掉,eclipse還不知道,發(fā)布web程序的時候以為那個jar還在,于是就把它發(fā)布出去,但那個文件不存在,所以就報錯。只是這個錯報得太離譜,一個文件不見了就說整個project不存在,簡直是誤導(dǎo)觀眾!

          解決方法:
          刪除jar的時候不能直接在eclipse里刪,更不能在外面刪。要先把整個Web Library從BuildPath里去掉,這樣lib里的所有jar都不在BuildPath里了,然后在eclipse的項目瀏覽器(Navigator view)里把jar刪除,然后再添加Web Library。

          posted @ 2006-08-31 11:28 amp@java 閱讀(2360) | 評論 (10)編輯 收藏

          Tomcat的Release Notes 里有這么一段話:
          =======================
          JNI Based Applications:
          =======================
          Applications that require native libraries must ensure that the libraries have
          been loaded prior to use.? Typically, this is done with a call like:

          ? static {
          ??? System.loadLibrary("path-to-library-file");
          ? }

          in some class.? However, the application must also ensure that the library is
          not loaded more than once.? If the above code were placed in a class inside
          the web application (i.e. under /WEB-INF/classes or /WEB-INF/lib), and the
          application were reloaded, the loadLibrary() call would be attempted a second
          time.

          To avoid this problem, place classes that load native libraries outside of the
          web application, and ensure that the loadLibrary() call is executed only once
          during the lifetime of a particular JVM.

          簡單地說就是JNI庫的加載在啟動Tomcat的JVM中只能進(jìn)行一次,如果兩次執(zhí)行System.loadLibrary("path-to-library-file");將會導(dǎo)致錯誤(Error,不是Exception):
          java.lang.UnsatisfiedLinkError:

          Native Library xxx.dll already loaded in another classloader
          可是這段話并沒有給出具體的解決辦法。我要使用的一個NT登錄驗證的JAAS模塊碰到了這個問題:我把包含這個語句的庫放在了某個web應(yīng)用程序的lib目錄下,結(jié)果當(dāng)修改了某個web配置文件導(dǎo)致這個程序的context reload時,JAAS模塊就不能使用,因為它又重新加載JNI庫導(dǎo)致錯誤。只有重新啟動整個tomcat才能恢復(fù)正常,十分麻煩。
          找了好久,終于在一個大俠的文章(http://cuiyingfeng.blog.ccidnet.com/blog/ccid/do_showone/tid_48232.html)中找到了解決方法:
          1、加載JNI庫的包放在Tomcat的common/lib目錄下,而不要放在各context的lib目錄下;
          2、每次加載JNI庫之前檢查是否已經(jīng)加載過。
          由于加載語句不是我能控制的,所以第二種方法不能實現(xiàn),于是我就通過第一種方法把這個問題解決了。

          posted @ 2006-08-31 11:13 amp@java 閱讀(4926) | 評論 (0)編輯 收藏

          Log4j是個很簡單的工具,用起來很方便。
          Hibernate就沒那么簡單了,一直都覺得有個高高的門檻在前面,我做的東西似乎還沒復(fù)雜到那種程度,只是有些東西手工操作實在繁瑣。例如要從數(shù)據(jù)庫里查找,再組裝成JavaBean,每次都要連接數(shù)據(jù)庫,PreparedStatement,ResultSet,然后一個個setter,極其枯燥。但要用Hibernate,也要一大堆的東西,如果沒有IDE的輔助,光是用手寫Mapping,config等等也是很累的,幸好有了很多工具可以自動生成這些東西,所以我決定用它了。Bea Workshop里面有個很方便的特性就是根據(jù)數(shù)據(jù)庫表生成JavaBean和映射文件,點(diǎn)幾下鼠標(biāo),這些東西全出來了,只要開個session來操作這些要持久化的對象就可以了,再也不用那些繁瑣的JDBC代碼。不過我覺得這樣還是會帶來性能損失的,因為那些調(diào)用被層層封裝了。
          目前只是成功地把一個JavaBean保存在表里,呵呵,其他還沒動手,等我慢慢看文檔再說。

          posted @ 2006-07-26 22:36 amp@java 閱讀(510) | 評論 (0)編輯 收藏

          之前Bea Workshop Studio 3.0可以與MyEclipse 4.1.1和平共處,在同一個eclipse可以用到兩個插件的好東西,但裝了最新的Bea Workshop Studio 3.1后,用 Workshop 的JSP編輯器打開JSP文件時,在源代碼部分卻是普通的文本顯示,語法高亮、代碼提示通通不見了,把MyEclipse去掉后一切恢復(fù)正常。可能是因為Workshop和MyEclipse均集成了WTP,而MyEclipse的WTP版本比Workshop的低,造成了沖突。
          posted @ 2006-06-15 11:35 amp@java 閱讀(438) | 評論 (0)編輯 收藏

          用Tomahawk的<h:dataScroller>時,如果在表格中增加了操作控件,點(diǎn)擊后會對表的行數(shù)產(chǎn)生影響時,就需要在backing bean的action method里對表格進(jìn)行翻頁。例如,表格的每一行有個“刪除”按鈕,在該按鈕的監(jiān)聽函數(shù)里對數(shù)據(jù)庫進(jìn)行刪除操作后需要更新表格內(nèi)容,這時候如果刪除的正好是最后一頁的最后一條記錄,則更新表格的dataModel后,表格仍停留在最后一頁,但沒有顯示任何記錄,需要手動翻到前一頁才能看到其他記錄,行為十分怪異。因此需要在監(jiān)聽函數(shù)里判斷當(dāng)前刪除的時候為最后一頁的最后一條記錄,如果是的話就通過程序翻到前一頁。
          具體實現(xiàn)如下:
          在表格所在頁面的backing bean里增加一個HtmlDataScroller成員變量,并設(shè)置它的setter和getter,再通過頁面上的dataScroller控件中的binding屬性把該控件與成員變量聯(lián)系起來,然后在按鈕監(jiān)聽處理中對該控件進(jìn)行操作。要把表格定位在某一頁,需要用到HtmlDataScroller的getUIData().setFirst()方法。
          public?class?PageBean{
          ??
          private?HtmlDataScroller?scroller?=?null;
          ??
          public?HtmlDataScroller?getScroller(){
          ????
          return?scroller;
          ??}

          ??
          public?void?setScroller(HtmlDataScroller?scroller){
          ????
          this.scroller?=?scroller;
          ??}

          ??
          public?String?buttonListionMethod(){
          ????
          ????scroller.getUIData().setFirst(
          0);
          ????
          ??}
          posted @ 2006-06-15 11:12 amp@java 閱讀(973) | 評論 (2)編輯 收藏

          僅列出標(biāo)題
          共10頁: First 上一頁 2 3 4 5 6 7 8 9 10 下一頁 
          主站蜘蛛池模板: 阳曲县| 卓资县| 大丰市| 安岳县| 铅山县| 汶上县| 科尔| 汕头市| 米泉市| 西青区| 五寨县| 新化县| 都昌县| 平乐县| 驻马店市| 双江| 广平县| 呼图壁县| 西宁市| 楚雄市| 桃江县| 遂溪县| 荥阳市| 绥棱县| 云南省| 祁阳县| 司法| 商丘市| 若羌县| 咸宁市| 宁河县| 临澧县| 宁陵县| 汪清县| 新竹市| 姜堰市| 义马市| 镇平县| 苍山县| 丘北县| 水城县|