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

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

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

    posts - 31,  comments - 31,  trackbacks - 0
           這幾天做項目,需要做一個類似于控制臺的界面,可以將日志回顯到一個文本區域里,幾經查找,反復測試寫了以下測試代碼。
    這是log4j.properties的配置內容
        log4j.rootCategory= ,WriterAppender

    log4j.appender.WriterAppender
    =org.apache.log4j.WriterAppender
    log4j.appender.WriterAppender.Threshold
    =debug
    log4j.appender.WriterAppender.layout
    =org.apache.log4j.PatternLayout
    log4j.appender.WriterAppender.layout.ConversionPattern
    =%d{ISO8601} - %- %m%n
    主程序
    import java.io.PipedReader;
    import java.io.PipedWriter;
    import java.io.Writer;

    import org.apache.log4j.Appender;
    import org.apache.log4j.Logger;
    import org.apache.log4j.WriterAppender;

    public class Log4jMain {
        
    static public Logger logger = Logger.getLogger(Log4jMain.class);

        
    public static void main(String[] arg) {
            
            
            Logger root 
    = Logger.getRootLogger();
            
    try {
                Appender appender 
    = root.getAppender("WriterAppender");
                PipedReader reader 
    = new PipedReader();
                Writer writer 
    = new PipedWriter( reader) ;
            
                ((WriterAppender) appender).setWriter(writer);
                
                Thread t 
    = new AaaThread(reader);
                t.start();
                Logger logger 
    = Logger.getLogger(Log4jMain.class);
                logger.error(
    "asdf");
                logger.info(
    "asdf");
                logger.debug(
    "asdf");
                logger.fatal(
    "asdf");
                    //hh是一個class,test方法里只有幾個logger.info("aaa"),用于測試用,這東西可以去掉
                
    new HH().test();

            }
     catch (Exception e) {
            }


        }

        
    }
    因為log4j提供的是 Writer,所以通過使用PipedWriter連接到PipedReader,并通過一個thread來處理PipedReader的數據就可以回顯了。如果你需要的話可以將下面的System.out.println(scanner.nextLine());改成你需要顯示的地方就行了。
    import java.io.PipedReader;
    import java.util.Scanner;

    public class AaaThread extends Thread {
        PipedReader reader;

        
    public AaaThread(PipedReader reader) {
            
    this.reader = reader;
        }


        
    public void run() {
            Scanner scanner 
    = new Scanner(reader);
            
    while (scanner.hasNext()) {
                System.out.println(scanner.nextLine());
            }

        }

    }
    posted @ 2008-06-06 09:31 小平 閱讀(1224) | 評論 (0)編輯 收藏
    這里制作一個引子,具體內容比較多,而且hibernate文檔里的hql篇寫的很詳細
    可以這么用:
    List list = getHibernateTemplate().find("select new map(t1.c1,t2.c3) from table1 t1 ,table2 t2 where t1.c1=t2.c2");
    這樣的話list里的每個元素都是一個map,每個map里包含兩個元素
    注意:這里的table1和table2都是class名并不是真的表名,畢竟這是hql。除了可以用map還還支持list和自定義的bean。


    posted @ 2008-04-17 17:05 小平 閱讀(1893) | 評論 (0)編輯 收藏
    DB2的Type-4驅動真的很詭異,配了兩天沒配上,發現是多引了一個包。就是他----“db2java.zip(db2java.jar)”只要有了他就算你已經引入了db2jcc.jar、db2jcc_license_cisuz.jar、db2jcc_license_cu.jar也沒用。
    不知道怎么回事,本以為多引就沒錯,沒想到載這了。
    順便吧db2 type-4的配置方法貼下面:
    jdbc:db2://ip:port/數據庫
    驅動名:com.ibm.db2.jcc.DB2Driver

    我日他IBM!該死的IBM,我算是服了,配好的type-4驅動中文數據顯示的全是亂碼,準備切到type-2上試試,結構還是不行,查來查去是數據庫pagecode的事,數據庫的字符集改成gbk,客戶端的pagecode也改成跟數據庫一樣的,ODBC算是能用了,type-2也能用了,然后又用type-4一試!連不上了!說字符集不匹配,上網一查說要使用IBM專用的JDK,我日了,換了IBM的JDK,配好環境變量eclipse又不能用了!我算是被IBM搞死了,一氣之下也不準備再嘗試type-4了。
    我這里用的IBM JDK1.4,db2 V8
    posted @ 2008-04-17 16:51 小平 閱讀(2525) | 評論 (3)編輯 收藏

    近日抽風,想了解以下java與串口并口通訊的問題,上網查了半天,找到了sun幾年前的一個破包,comm.jar

    2.0版的,遇到一個比較奇怪的問題,這個包里的demo程序用cmd可以運行,但是用eclipse編譯就不能運行,一直以為是dll庫和配置文件的問題,幾乎將兩個文件copy到了系統中全部可能出現的地方都沒有解決。百般無奈之下,找到了http://blog.csdn.net/djsl6071/archive/2007/04/25/1583979.aspx這個博客,下載了rxtx把問題搞定了。
    posted @ 2008-04-17 16:40 小平 閱讀(574) | 評論 (0)編輯 收藏
    如果RMI客戶端鏈接補上服務器可能是以下情況導致的:
    1、網絡不通
    2、端口占用
    3、防火墻(客戶端機器的防火墻和服務器端的防火墻都有可能)
    4、服務器端所在機器安裝了linux虛擬機,或者使用的linux或者unix系統
    排除辦法:
    前三種情況都很好解決,主要是最后一個,需要在rmi服務啟動時加上一句
    java  -Djava.rmi.server.hostname=localhost ……
    其中localhost可以強制定義為機器的IP地址 
    posted @ 2008-02-15 14:11 小平 閱讀(886) | 評論 (0)編輯 收藏
           為了滿足將plugin工程打成jar包,但是spring的配置文件不打進jar包的需求。很多時候我們為了可以方便手工配置spring的一些信息,而不用將jar解壓而從新壓縮,我們需要把Spring的配置文件放在plugin的jar包外這時,如果沒有正確的使用spring的Resource就不能加載spring的配置文件,經過多次嘗試終于找到一個比較合適的方法,與大家交流。
    public static BeanFactory getFactory() {
            
    if (factory == null{
                FileSystemResource resource 
    = new FileSystemResource("appcontextclient.xml");
                factory 
    = new XmlBeanFactory(resource);
            }

            
    return factory;

        }

            將appcontextclient.xml文件放到工程根目錄下,發布時將appcontextclient.xml放入到你的eclipse的安裝目錄即可(與eclipse的exe執行文件相同的位置),如果需要可在appcontextclient.xml文件前加入相關的路徑來更改你的目錄(但是有可能在調試過程中必須要把appcontextclient.xml文件放到你的eclipse IDE的安裝目錄里,因為大部分時間我們的eclipse IDE是何 workspace分開存放的,這樣我們在調試的時候非常別扭,要到IDE里去修改配置文件)。
            以上方法并不是唯一的,只是我感覺用起來比較合適的,這樣在調試時既可以保證appcontextclient.xml文件在工程目錄范圍內,有可以在發布時使文件保持在安裝目錄而不是運行環境的workspace的臨時目錄里。
            同時介紹幾個方法可以eclipse方法獲得eclipse工具的幾個重要路徑(注:"IDE"為我的plugin工程的PLUGIN_ID)
            Platform.getInstallLocation().getURL()                                                 
            file:/F:/tools/java/eclipse/eclipse-SDK-3.3-win32/eclipse/             
            這是我的eclipse IDE的安裝目錄
                
            Platform.getLocation()                                                                        
            D:/runtime-IDE.product                                                               
            這是我調試插件時生成的臨時運行環境目錄,是在調試IDE工程時生成的,就是發布時插件所屬eclipse運行環境的WorkSpace目錄
                 
            Platform.getInstanceLocation().getURL()                                             
            file:/D:/runtime-IDE.product/                                                       
             這個跟上面的一樣
                 
            Platform.getLocation()                                                                        
            D:/runtime-IDE.product                                                              
             這個跟上面的也一樣
            
            Platform.getLogFileLocation()                                                             
            D:/runtime-IDE.product/.metadata/.log                                         
            運行環境的日志文件路徑,發布時插件所屬eclipse運行環境的WorkSpace目錄下的/.metadata/.log 
             
            Platform.getStateLocation(Platform.getBundle("IDE"))               
            D:/runtime-IDE.product/.metadata/.plugins/IDE                           
            運行環境中IDE的一個臨時目錄,發布時插件所屬eclipse運行環境的WorkSpace目錄下/.metadata/.plugins/IDE
                 
            Platform.getUserLocation()                                                       
            file:/C:/Documents and Settings/XX/user                                     
             這是我的文檔的路徑(把用戶名X掉,哈哈)

            Platform.getBundle("IDE").getLocation()                                    
            update@D:/WorkSpace/IDE/                                                     
            我的IDE工程的路徑,對應發布時插件的jar本身,在這個目錄下的文件將全部包含在發不得jar里。

            Platform.getConfigurationLocation().getURL()       
            file:/D:/WorkSpace/.metadata/.plugins/org.eclipse.pde.core/IDE.product/  
            eclipse IDE 自己建的目錄

            eclipse 本身也有很多加載資源文件的方法可以在org.eclipse.core.runtime.Platform這個類里找到,具體的就請大家找找API吧
    posted @ 2008-01-05 21:35 小平 閱讀(2013) | 評論 (0)編輯 收藏
    應要求在此提供ibatis批量插入demo下載,謝謝大家的關注,不過對于一些人的不禮貌行為我非常痛心。由于工作地點不能上網,不能上網,不能及時回復大家的留言我深表道歉。下載
    posted @ 2007-12-27 19:52 小平 閱讀(3420) | 評論 (9)編輯 收藏
    <2007年12月>
    2526272829301
    2345678
    9101112131415
    16171819202122
    23242526272829
    303112345

    常用鏈接

    留言簿(2)

    隨筆分類

    隨筆檔案

    framework

    j2me

    java

    linux

    web

    其他

    友情鏈接

    素材

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲最大的成人网| 亚洲国产高清美女在线观看| 亚洲Av永久无码精品一区二区| 嫖丰满老熟妇AAAA片免费看| 亚洲精品午夜视频| www.999精品视频观看免费| 亚洲天堂中文字幕在线观看| 老司机在线免费视频| 亚洲av产在线精品亚洲第一站| 在线精品一卡乱码免费| 亚洲乱码一区二区三区国产精品| 成年女人视频网站免费m| 亚洲日韩亚洲另类激情文学| 四虎永久在线精品免费影视| 特级aaaaaaaaa毛片免费视频| 久久久青草青青国产亚洲免观 | JLZZJLZZ亚洲乱熟无码| 99久久成人国产精品免费| 亚洲成亚洲乱码一二三四区软件| 中文字幕日本人妻久久久免费| 色婷婷亚洲十月十月色天| 青青视频观看免费99| 另类专区另类专区亚洲| 亚洲精品乱码久久久久66| 中文字幕免费在线看线人| 人人狠狠综合久久亚洲| 亚洲午夜精品一级在线播放放| 久久精品成人免费观看| 亚洲av成人一区二区三区| 亚洲AV无码一区二三区| 久9这里精品免费视频| 亚洲欧美成人一区二区三区| 最新国产AV无码专区亚洲| 国产电影午夜成年免费视频| 国产精品亚洲一区二区三区久久 | 成全视成人免费观看在线看| 亚洲精品福利在线观看| 国产美女无遮挡免费网站| 久久精品国产免费一区| 亚洲精品色播一区二区| 亚洲高清专区日韩精品|