乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      Unable to load sqlite_jni: java.lang.UnsatisfiedLinkError: already loaded in another classloader

       躍來躍去 2009-05-05

      問題:web每次請求都會動態(tài)連接數(shù)據(jù)庫;dbname是個數(shù)據(jù)庫名參數(shù),

      private Connection getConn() throws SQLException{
              Connection conn=null;
              try {
                  Class.forName("SQLite.JDBCDriver");
              } catch (ClassNotFoundException e) {
                  e.printStackTrace();
              }
              if(dbName!=null&&dbName.length()>4){
                      conn=DriverManager.getConnection("jdbc:sqlite:/c:\\sqlite3\\"+dbName+".db");
              }
              return conn;
          }

      原因:重重加載同一個文件;

       

      錯誤表明sqlite_jni.dll已經(jīng)被JVM的ClassLoader load了。通過查閱資料發(fā)現(xiàn)Web


            Server的自動重啟機制是產(chǎn) 生這一問題的根源。當(dāng)Resin重啟包含sqlite_jni.dll的這個Web應(yīng)用時,會因為Variant類的語句而自動執(zhí)行 jsqlite_jni.dll的加載。但重啟Web應(yīng)用并不是重啟整個resin(即:上一次啟動的JVM仍然存在),也就是說 sqlite_jni.dll已經(jīng)被加載過了,因此系統(tǒng)將拋出錯誤。而當(dāng)我們手工重啟resin時,則會將上一次啟動的JVM關(guān)閉并重新啟動,這時會正常 加載sqlite_jni.dll。

       

       

      解決:把sqlite.jar即sqlite jdbc驅(qū)動放到resion/tomcat中的公共lib目錄下;而不是放在應(yīng)用即:web-inf/lib下;

             因為sqlite.jar中,有sqlite_jni.dll文件加載的調(diào)用類;



      原文章地址:http://blog.csdn.net/yangsp1/archive/2009/04/23/4103065.aspx

        本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
        轉(zhuǎn)藏 分享 獻花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多