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

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

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

    Java天空

     

    2006年4月20日

    土辦法解決 ubuntu wine 1.3 安裝ies4linux 2.99.0.1

    由于wine 1.3使用了winepath代替wineprefixcreate,所以安裝ies4linux的時候,會提示wine版本太舊,wineprefixcreate有誤??梢酝ㄟ^修改ies4linux 2.99.0.1/lib的functions.sh、install.sh來簡單解決ie6的安裝問題。

    在install.sh 426行左右
        subsection $MSG_CREATING_PREFIX
            set_wine_prefix 
    "$BASEDIR/ie1/"
           
    wineprefixcreate &> /dev/null
            clean_tmp

    改為:
        subsection $MSG_CREATING_PREFIX
            set_wine_prefix 
    "$BASEDIR/ie1/"
           
    winepath &> /dev/null
            clean_tmp

    在functions.sh 242行左右
    function create_wine_prefix {
        
    if which wineprefixcreate &> /dev/null; then
            (
    wineprefixcreate 2>&1 ) | debugPipe
        
    else
            error $MSG_ERROR_NO_WINEPREFIXCREATE
        fi
    }

    改為:
    function create_wine_prefix {
        
    if which winepath &> /dev/null; then
            ( winepath 
    2>&1 ) | debugPipe
        
    else
            error $MSG_ERROR_NO_WINEPREFIXCREATE
        fi
    }

    保存后重新運行./ies4linux安裝即可。

    PS:因為沒有需要,所以我安裝的時候沒有安裝flash player。

    posted @ 2010-09-09 20:15 YY 閱讀(910) | 評論 (1)編輯 收藏

    ubuntu 10.04 安裝oracle 10g

    (摘自Ubuntu中文論壇 作者:孫高勇)

    http://wiki.ubuntu.org.cn/%E9%A6%96%E9%A1%B5/%E6%95%B0%E6%8D%AE%E5%BA%93%E6%9C%8D%E5%8A%A1/Oracle%E6%9C%8D%E5%8A%A1%E4%B9%8B%E5%AE%89%E8%A3%85%E6%8C%87%E5%8D%97

    本文是在 ununtu linux 下 Oracle10g 的安裝筆記。我假設您已經成功的安裝并配置了Ubuntu Linux。并且安裝好了 gcc, make, binutils, lesstif2, libc6, and rpm libaio1 awk rpm j2re 的運行環境,可通過 apt-get install 完成安裝(ununtu 和 debian 的這種安裝方式蠻方便的)。

    • 創建用戶和組
      oracle 安裝需要兩個 unix 用戶組和一個運行時的 oracle 用戶。
    #sudo addgroup oinstall
    $sudo addgroup dba
    $sudo addgroup nobody
    $sudo useradd -m -s /bin/bash oracle

    # 設置oracle用戶密碼
    $sudo passwd oracle
    $sudo gpasswd -a oracle oinstall
    $sudo gpasswd -a oracle dba
    $usermod -g nobody nobody
    • 創建目錄
      有很多文檔,建議您將 oracle 安裝到一個獨立的分區上面。比如:/opt。請您根據您的需要選擇合適自己的安裝目錄。在本文檔中,我們假設 Oracle 的安裝目錄為/opt/ora10。確保有至少 3.0G 的可用空間。
    #mkdir -p /opt/ora10
    #chown -R oracle:oinstall /opt/ora*
    #chmod -R 775 /opt/ora*

    您生成了 oracle 的運行時路徑,并且授寫權限給 oracle 用戶,執行權限給 dba 組。

    • 設置內核參數
      • 修改 sysctl.conf
        添加如下的行到/etc/sysctl.conf 中:
    # 這個最大內存要實現情況給,底下是給了3000M

    kernel.shmmax = 3147483648
    kernel.shmmni = 4096
    kernel.shmall = 2097152
    kernel.sem = 250 32000 100 128
    fs.file-max = 65536
    net.ipv4.ip_local_port_range = 1024 65000

    注:shmmax(最大共享內存)是一個很重要參數,根據您的機器的內存來設定。如果您設置不合適的 話,在創建數據庫到約 86%的時候就會掛掉。祝您好運。_

      • 修改 limits.conf
        添加下面的行到/etc/security/limits.conf 以修改你的資源限制:
    oracle soft nofile 65536
    oracle hard nofile 65536
    oracle soft nproc 16384
    oracle hard nproc 16384
      • 讓修改生效
        修改了以上文件后,您必須讓其生效,您重啟系統,或者切換到 root 用戶下用以下的方式改變內核運行參數:
    #sysctl -p
      • 創建程序鏈接
    #ln -s /usr/bin/awk /bin/awk
    #ln -s /usr/bin/rpm /bin/rpm
    #ln -s /usr/bin/basename /bin/basename
    • 設置 Oracle 用戶環境
      以 oracle 用戶登錄:
    ~$su oracle

    修改~/.bash_profile (也有可能是.profile)文件,去掉下列三行的注釋符,使.bashrc 文件生效:

    #if [ -f ~/.bashrc ]; then
    # . ~/.bashrc
    #fi

    ununtu 默認是沒有注釋的,debian 用戶需要取消掉這個。
    添加下列行到~/.bashrc:

    # oracle 10g
    export ORACLE_BASE=/opt/ora10
    export ORACLE_HOME=/opt/ora10
    export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/Apache/Apache/bin:$PATH
    export ORACLE_OWNER=oracle
    export ORACLE_SID=compiere
    export ORACLE_TERM=xterm
    # Edit paths
    export LD_LIBRARY_PATH=/usr/lib:/lib/:$LD_LIBRARY_PATH:/opt/ora10/lib:/opt/ora10/lib/stubs/
    export PATH=/opt/ora10/bin:$PATH


    我是將上面的內容保存到另一個文件中,.bash_oracle,然后在.bashrc 中使用 source.bash_oracle 進行調用 的。您可以根據您的好惡進行設置。您需要注意的是,ORACLE_BASE 和ORACLE_HOME 的設置一定得和您在前面創建的目錄相符。 ORACLE_SID 是默認數據庫的名稱,在本文檔中,我們假設默認的數據庫名叫 compiere,如果您想用其他的名字,請您作相應的修改。

    • 執行安裝
      • 交換分區的調整
        以 oracle 用戶啟動 X,進行安裝。
        差點忘了,為了安裝 Oracle 10g,oracle 推薦至少 512M 內存和至少 400M 交換空間。內存,好象不夠關系也不大,但是交換分區呢,您還是大方一點吧。如果您的交換分區不夠 400M,那么您還是先看看這一步吧。
    重設交換分區可以使用如下操作:

    shell# dd if=/dev/zero of=tmp_swap bs=1k count=900000
    shell# chmod 600 tmp_swap
    shell# mkswap tmp_swap
    shell# swapon tmp_swap

    完成安裝以后,可以釋放這個空間:

    shell# swapoff tmp_swap
    shell# rm tmp_swap

    count 值是根據您需要調整的交換分區大小而定。
      • 安裝前的準備
        終于可以安裝了。我們假設下載的安裝文件位于/home/sungaoyong/oracle 下,名稱為 10201_database_linux32.zip 解壓后。 創建一個文件 /etc/redhat-release:添加如下內容。
    Red Hat Linux release 3.1 (drupal)

    安裝了的話, 這一步是也沒有必要。

    oracle 將會把系統認為是 redhat 3 了:)

    • java 中文的顯示
      進入 java 的安裝路徑
    $ cd /usr/lib/j2se/1.4/lib
    $ sudo cp font.properties.zh_CN_UTF8.Sun font.properties

    將最下面的一行改為如下:

    filename.-misc-fzsongti-medium-r-normal--*-%d-*-*-p-*-iso10646- 1=/usr/share/fonts/VeraSansYuanTi/VeraSansYuanTi-Regular.ttf
    appendedfontpath=/usr/share/fonts/VeraSansYuanTi

    java 就支持中文顯示了。以上這步,在java6中是無效的,因為java6的字體配置不是這樣子的.

      • 運行 Installer
        進入 oracle 數據庫解壓的目錄
    ./runInstaller -jreLoc /usr/lib/j2se/1.4/jre

    指定 jre 的目的就是始安裝界面可以顯示中文,否則安裝界面的中文都是小框框,不信試試,嘿嘿!接下的一般選擇默認設置就可以了。

    以上這步,如果你安裝的是java6,那么還是請你用

    export LANG=en_CN

    比較好, 直接使用英文環境來安裝, 因為在安裝界面用上面所說的方法,確實是中文了,但到后面的數據庫配置界面,又會重新變回小方塊。所以還是推薦大家直接用英文環境來安裝吧。

    • 啟動數據庫
      • 啟動
    $ sqlplus " scott/tiger as sysdba"

    將出現如下連接數據庫信息:

    SQL*Plus: Release 10.1.0.2.0 - Production on 星期三 3 月 24 16:23:27 2004

    Copyright (c) 1982, 2004, Oracle. All rights reserved.

    連接到:

    Oracle Database 10g Enterprise Edition Release 10.1.0.2.0 - Production

    With the Partitioning, OLAP and Data Mining options

    SQL>

    表明登錄數據庫系統成功,運行 startup 命令啟動數據庫。

    SQL> startup

    ORACLE instance started.

    Total System Global Area 336356520 bytes

    Fixed Size 279720 bytes

    Variable Size 268435456 bytes

    Database Buffers 67108864 bytes

    Redo Buffers 532480 bytes

    Database mounted.

    Database opened.

    SQL>

    表示數據庫正常啟動。

      • 關閉 Oracle10g 數據庫
    $ sqlplus "scott/tiger as sysdba" //以 sysdba 用戶登錄數據庫

    成功登錄數據庫系統后,運行 shudown 命令關閉數據庫。

    SQL> shutdown
      • 啟動 Oracle10g 監聽程序
        Oracle 的監聽程序主要是為客戶端的連接提供接口,在控制臺窗口鍵入如下命令:
    $ lsnrctl

    將出現如下監聽程序信息:

    LSNRCTL for 32-bit Windows: Version 10.1.0.2.0 - Production on 24-3 月 -2004 16:59:51

    Copyright (c) 1991, 2004, Oracle. All rights reserved.

    歡迎來到 LSNRCTL, 請鍵入"help"以獲得信息。

    LSNRCTL>

    表明登錄監聽程序控制臺成功,運行 start 命令啟動監聽程序。

    LSNRCTL> start

    將出現監聽程序的一系列啟動和配置情況信息列表。信息行的最后一行是“The command completed successfully”字樣時,監聽程序啟動成功。

      • 關閉 Oracle10g 監聽程序
        運行 stop 命令關閉監聽程序。
    LSNRCTL> stop
    • 創建自啟動腳本
      創建 oracledb 腳本到/etc/init.d/oracledb,內容如下
    #!/bin/bash

    #
    # /etc/init.d/oracledb

    #
    # Run-level Startup script for the Oracle Instance, Listener, and
    # Web Interface
    export ORACLE_HOME=/opt/ora10
    export ORACLE_SID=compiere
    export PATH=$PATH:$ORACLE_HOME/bin
    ORA_OWNR="oracle"
    # if the executables do not exist -- display error
    if [ ! -f $ORACLE_HOME/bin/dbstart -o ! -d $ORACLE_HOME ]
    then
    echo "Oracle startup: cannot start"
    exit 1
    fi
    # depending on parameter -- startup, shutdown, restart
    # of the instance and listener or usage display
    case "$1" in
    start)
    # Oracle listener and instance startup
    echo -n "Starting Oracle: "
    su $ORA_OWNR -c "$ORACLE_HOME/bin/lsnrctl start"
    su $ORA_OWNR -c $ORACLE_HOME/bin/dbstart
    touch /var/lock/oracle
    su $ORA_OWNR -c $ORACLE_HOME/bin/emctl start dbconsole
    echo "OK"
    ;;
    stop)
    # Oracle listener and instance shutdown
    echo -n "Shutdown Oracle: "
    su $ORA_OWNR -c "$ORACLE_HOME/bin/lsnrctl stop"
    su $ORA_OWNR -c $ORACLE_HOME/bin/dbshut
    rm -f /var/lock/oracle
    su $ORA_OWNR -c $ORACLE_HOME/bin/emctl stop dbconsole
    echo "OK"
    ;;
    reload|restart)
    $0 stop
    $0 start
    ;;
    ***)
    echo "Usage: `basename $0` start|stop|restart|reload"
    exit 1
    esac
    exit 0

    設置權限,放到啟動腳本中去

    #chmod 755 /etc/init.d/oracledb
    #update-rc.d oracledb defaults 99
    • 使用企業管理器
      啟動控制臺
    #emctl start dbconsole

    訪問數據庫控制器http://localhost.localdomain:1158/em/ 要提供 sys/passwd as sysdba; 你要從一個客戶端瀏覽器訪問 em 數據庫控制器,必須要運行 dbconsole 進程.安裝之后,dbconsole 進程是自動會啟動的.然后,如果這個集成沒有啟動,你可以向下面的命令行手工的啟動它:

    #cd $ORACLE_HOME/bin
    #emctl start dbconsole

    這樣你就可以打開 web 瀏覽器,輸入下面的 http://hostnameortnumber/em 來訪問 em db control. host 那么是你的計算機的名字或地址.portnumber 是 em db control http 的端口號,這是在安裝的時候指定的.默認的是 1158 ,你可以在$ORACLE_HOME/install/portlist.ini 文件中找到這個值.
    如果實例啟動了,EM 就會顯示 db control 登錄頁.你必須使用授權訪問 db control 的用戶登錄到數據庫.一開始是 sys 用戶,使用在安裝的時候你確定的 sys 用戶的密碼.從 connect as 下拉框選 sysdba,然后點登錄.這樣就會出現 dbcontrol 的主頁.這是同 Oracle 9i 的不同的。其它的大家共同學習吧!

    posted @ 2010-07-13 10:19 YY 閱讀(1737) | 評論 (1)編輯 收藏

    ibatis eclipse plugin Abator配置使用簡單說明

    安裝:
             eclipse自動安裝url: http://ibatis.apache.org/tools/abator

    配置:
             安裝好后將在New菜單中看到一個新的文件類型Abator for iBATIS Configuration File,這個是Abator的配置文件,new一個并修改配置文件,配置樣式如下所示:

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE abatorConfiguration PUBLIC "-//Apache Software Foundation//DTD Abator for iBATIS Configuration 1.0//EN"
      "http://ibatis.apache.org/dtd/abator-config_1_0.dtd"
    >

    <abatorConfiguration>
      
    <abatorContext generatorSet="Java5">    <!-- TODO: Add Database Connection Information -->
        
    <jdbcConnection driverClass="oracle.jdbc.driver.OracleDriver"
            connectionURL
    ="jdbc:oracle:thin:@127.0.0.1:1521:orcl"
            userId
    ="user"
            password
    ="password">
          
    <!-- 注意:以下的classPathEntry一定要設置,否則會出現Exception JDBC Driver的錯誤 -->
          
    <classPathEntry location="D:/workspace/lib/ojdbc14_g.jar" />
        
    </jdbcConnection>

        
    <javaModelGenerator targetPackage="com.iamyy.test.ibatis.vo" targetProject="AbatorTest" />
        
    <sqlMapGenerator targetPackage="com.iamyy.test.ibatis.dao" targetProject="AbatorTest" />
        
    <daoGenerator type="IBATIS" targetPackage="com.iamyy.test.ibatis.dao" targetProject="AbatorTest" />

        
    <table tableName="T_Role" domainObjectName="Role">
          
    <generatedKey column="role_id" identity="true" sqlStatement="select s_role.nextval from dual"/>
          
    <columnOverride column="role_id" property="id" javaType="java.lang.String" jdbcType="VARCHAR"/>
          
    <columnOverride column="role_name" property="name" javaType="java.lang.String" jdbcType="VARCHAR" />
        
    </table>

      
    </abatorContext>
    </abatorConfiguration>


       
    abatorContext的一個屬性generatorSet有3個選項Legacy、Java2、Java5,一般用Java5;

             Legacy:如果沒有generatorSet屬性的話,默認是Legacy。但并不推薦使用Legacy因為它在生成Example類(用于查詢條件)的時候有很多限制,他將查詢條件寫在sqlMap配置文件中,將查詢值寫在Example中,這樣就對修改產生一些困難。

             Java2和Java5:他們只支持iBATIS 2.20以上的版本。在以這個模式成生的Example文件中包含了查詢條件和查詢值。這樣修改就方便多了,對于用join的select時的查詢就更方 便了,自己可以定義查詢條件,自由度高了很多(對于join的and查詢可能還得自己修改一下Example代碼)。對于or和and的應用Legacy 的限制就比較大了。

             <javaModelGenerator>、 <sqlMapGenerator>、 <daoGenerator>描述了個自生成的位置。<daoGenerator>中type屬性則用來告訴abator生成的DAO是用于iBATIS還是SPRING等容器。

             <table>告訴abator生成那個table的sqlMap。

             <generatedKey>來告訴abator那些列需要自動返回值(當插入的時候可以返回插入記錄的主鍵,這對有外鍵的數據庫極其有用)identity默認為false,則在sqlMap配置文件中<selectKey>的位置在sql命令前面,所以identity應該改為true。根據數據庫類型的不同sqlStatement屬性取值也不同。


    運行:

             右鍵單擊配置文件,點擊Generate iBatis Artifacts,生成文件。

             ps: 如果<daoGenerator>中type屬性是ibatis的話,由于Abator生成的DAOImpl文件繼承自com.ibatis.dao.client.template.SqlMapDaoTemplate,在ibatis ver. 2.3.0.677中會有錯誤提示,需酌情修改。
             ps的ps: 不建議使用自動生成的Example去操作數據,一是因為Example中生成的方法有拼寫SQL之嫌不符合OO思想,二是拼寫后SQL效率有待進一步考證,沒仔細看,但至少看到not in語句,如果要使用的話至少要進行一些修改。(^-^)個人愚見。
             
             參考:Abator document: http://ibatis.apache.org/docs/tools/abator/
                           iBATIS的Eclipse插件Abator使用方法

    posted @ 2007-08-19 19:09 YY 閱讀(6330) | 評論 (2)編輯 收藏

    ibatis操作oracle數據庫時,空值(null)異常的不完全解決方法

    ibatis操作oracle數據庫時,如果出現空值,ibatis不是插入NULL,而是出現異常,異常信息大致如下:

    Caused by: com.ibatis.common.jdbc.exception.NestedSQLException:   
    --- The error occurred in [someSqlMapFile.xml].  
    --- The error occurred while applying a parameter map.  
    --- Check the insertUser-InlineParameterMap.  
    --- Check the parameter mapping for the '[someProperty]' property.  
    --- Cause: java.sql.SQLException: 無效的列類型
        at com.ibatis.sqlmap.engine.mapping.statement.GeneralStatement.executeUpdate(GeneralStatement.java:
    91)
        at com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.insert(SqlMapExecutorDelegate.java:
    447)
        at com.ibatis.sqlmap.engine.impl.SqlMapSessionImpl.insert(SqlMapSessionImpl.java:
    82)
        at com.ibatis.sqlmap.engine.impl.SqlMapClientImpl.insert(SqlMapClientImpl.java:
    59)


    如果你先插入空值,必須告訴IBatis當該字段出現NULL值該用什么值來替代,方法有2種,如下:

    方法一(parameterClass):
    1 INSERT INTO TEST(ID, NAME, PASSWD) VALUES (#id#,#name#, #passwd:VARCHAR:NULL#)

    支持的類型在 java.sql.Types 中列示出來了
    注意:DATA 類型默認不能為NULL

    方法二(parameterMap):
    使用這個方法時,首先應保證你的Oracle jdbc driver是10G以上版本,不然也是白搭。

     1 <parameterMap id="insert-person-paraMap" class="com.unmi.Person" >
     2     <parameter property="id"/>
     3     <parameter property="name"/>
     4     <parameter property="passwd" jdbcType="VARCHAR"/>
     5 </parameterMap>
     6     
     7 <!-- 插入一條Person對應的記錄到數據庫中 -->
     8 <insert id="insertPerson" parameterMap="insert-person-paraMap">
     9     INSERT INTO PERSON (ID, NAME, PASSWD) VALUES (?,?,?)
    10 </insert>
    11 

    參考:http://www.tkk7.com/fatbear/archive/2007/06/07/122607.html 
                iBatis 應用程序向 Oralce 數據表字段插入 NULL 值
                作者:肥熊熊

    posted @ 2007-08-16 16:18 YY 閱讀(4284) | 評論 (1)編輯 收藏

    Delphi 7使用DBExpress中的SQLConnection連接SQLSERVER數據庫出錯原因及解決

    安裝完Delphi 7后,使用DBExpress中的SQLConnection連接MS SQLSERVER時,如果數據庫的sa用戶沒有設置密碼的話,會提示出錯。這是因為缺少一個補丁程序,可以去網上搜索:dbExpress Driver Patch1,下載這個補丁并安裝,問題應該可以解決。
    ps:如果Delphi是安裝在除C盤外其它盤符,使用SQLConnection會找不到數據庫驅動信息,需要修改注冊表,將安裝過補丁后的C:\Program Files\Common FIles\Borland*改成你自己的盤符。

    ??? 有問題可以跟我聯系:yy-man@163.com

    ?

    posted @ 2006-09-16 17:17 YY 閱讀(2048) | 評論 (0)編輯 收藏

    commons DBCP 配置參數簡要說明

      前段時間因為項目原因,要在修改數據庫連接池到DBCP上,折騰了半天,有一點收獲,不敢藏私,特在這里與朋友們共享。
      在配置時,主要難以理解的主要有:removeAbandoned 、logAbandoned、removeAbandonedTimeout、maxWait這四個參數,設置了rmoveAbandoned=true那么在getNumActive()快要到getMaxActive()的時候,系統會進行無效的Connection的回收,回收的Connection為removeAbandonedTimeout(默認300秒)中設置的秒數后沒有使用的Connection,激活回收機制好像是getNumActive()=getMaxActive()-2。 :) 有點忘了。
      logAbandoned=true的話,將會在回收事件后,在log中打印出回收Connection的錯誤信息,包括在哪個地方用了Connection卻忘記關閉了,在調試的時候很有用。
      在這里私人建議maxWait的時間不要設得太長,maxWait如果設置太長那么客戶端會等待很久才激發回收事件。
      以下是我的配置的properties文件:
    #連接設置
    jdbc.driverClassName=oracle.jdbc.driver.OracleDriver
    jdbc.url=jdbc:oracle:thin:@127.0.0.1:1521:DBSERVER
    jdbc.username=user
    jdbc.password=pass

    #<!-- 初始化連接 -->
    dataSource.initialSize=10

    #<!-- 最大空閑連接 -->
    dataSource.maxIdle=20

    #<!-- 最小空閑連接 -->
    dataSource.minIdle=5

    #最大連接數量
    dataSource.maxActive=50

    #是否在自動回收超時連接的時候打印連接的超時錯誤
    dataSource.logAbandoned=true

    #是否自動回收超時連接
    dataSource.removeAbandoned=true

    #超時時間(以秒數為單位)
    dataSource.removeAbandonedTimeout=180

    #<!-- 超時等待時間以毫秒為單位 6000毫秒/1000等于60秒 -->
    dataSource.maxWait=1000

      以下是我在連接控制中調用的方法:

    ??????? Properties? dbProps=null;
      //下面的讀取配置文件可以根據實際的不同修改
    ??????? dbProps = ConfigProperties.getInstance().getProperties("jdbc.properties");
    ??????? try {
    ??????? ?String driveClassName = dbProps.getProperty("jdbc.driverClassName");
    ??????? ?String url = dbProps.getProperty("jdbc.url");
    ??????? ?String username = dbProps.getProperty("jdbc.username");
    ??????? ?String password = dbProps.getProperty("jdbc.password");
    ??????? ?
    ??????? ?String initialSize = dbProps.getProperty("dataSource.initialSize");
    ??????? ?String minIdle = dbProps.getProperty("dataSource.minIdle");
    ??????? ?String maxIdle = dbProps.getProperty("dataSource.maxIdle");
    ??????? ?String maxWait = dbProps.getProperty("dataSource.maxWait");
    ??????? ?String maxActive = dbProps.getProperty("dataSource.maxActive");
    ????????? ?//是否在自動回收超時連接的時候打印連接的超時錯誤
    ?????? ? ?boolean logAbandoned = (Boolean.valueOf(dbProps.getProperty("dataSource.logAbandoned","false"))).booleanValue();

    ?????? ? ?//是否自動回收超時連接
    ?????? ? ?boolean removeAbandoned = (Boolean.valueOf(dbProps.getProperty("dataSource.removeAbandoned","false"))).booleanValue();

    ?????? ? ?//超時時間(以秒數為單位)
    ?????? ? ?int removeAbandonedTimeout = Integer.parseInt(dbProps.getProperty("dataSource.removeAbandonedTimeout","300"));
    ?????? ?
    ??????? ?dataSource = new BasicDataSource();
    ??????? ?dataSource.setDriverClassName(driveClassName);
    ??????? ?dataSource.setUrl(url);
    ??????? ?dataSource.setUsername(username);
    ??????? ?dataSource.setPassword(password);

    ??????? ?//初始化連接數
    ??????? ?if(initialSize!=null)
    ??????? ??dataSource.setInitialSize(Integer.parseInt(initialSize));
    ??????? ?
    ??????? ?//最小空閑連接
    ??????? ?if(minIdle!=null)
    ??????? ??dataSource.setMinIdle(Integer.parseInt(minIdle));

    ??????? ?//最大空閑連接
    ??????? ?if(maxIdle!=null)
    ??????? ??dataSource.setMaxIdle(Integer.parseInt(maxIdle));
    ??????? ?
    ??????? ?//超時回收時間(以毫秒為單位)
    ??????? ?if(maxWait!=null)
    ??????? ??dataSource.setMaxWait(Long.parseLong(maxWait));
    ??????? ?
    ??????? ?//最大連接數
    ??????? ?if(maxActive!=null){
    ??????? ??if(!maxActive.trim().equals("0"))
    ??????? ???dataSource.setMaxActive(Integer.parseInt(maxActive));
    ??????? ?}

    ??????? ?System.out.println("logAbandoned="+logAbandoned);
    ?????????? ?dataSource.setLogAbandoned(logAbandoned);
    ??????? ?dataSource.setRemoveAbandoned(removeAbandoned);
    ??????? ?dataSource.setRemoveAbandonedTimeout(removeAbandonedTimeout);
    ??????? ?
    ??????? ?Connection conn = dataSource.getConnection();
    ??????? ?if(conn==null){
    ??????? ??log("創建連接池時,無法取得連接!檢查設置!!!");
    ??????? ?}else{
    ??????? ??conn.close();
    ??????? ?}
    ?????????System.out.println("連接池創建成功!!!");
    ??????? }
    ??????? catch (Exception e) {
    ??????? ?e.printStackTrace();
    ??????????? System.out.println("創建連接池失敗!請檢查設置!!!");
    ??????? }

      有使用問題或建議可與我聯系:yy-man@163.com
    ??????
    ?????????2006-04-20?? By: 小土

    posted @ 2006-04-20 11:49 YY 閱讀(3816) | 評論 (1)編輯 收藏

    導航

    統計

    常用鏈接

    留言簿(1)

    隨筆分類

    隨筆檔案

    友情鏈接

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲高清不卡视频| 污网站在线观看免费| 在线免费不卡视频| 免费人成网上在线观看| 亚洲精品亚洲人成在线观看| 无码精品一区二区三区免费视频| 狠狠色香婷婷久久亚洲精品| 国产a不卡片精品免费观看| 久久精品视频免费| 亚洲精品第一综合99久久| 亚洲午夜久久久影院伊人 | 久久午夜免费视频| 日韩电影免费在线观看网址| 亚洲无线电影官网| 免费人成网站在线播放| 97在线视频免费播放| 无码 免费 国产在线观看91| 亚洲精品福利网站| 国产成人毛片亚洲精品| 无码专区永久免费AV网站| 一个人晚上在线观看的免费视频| 亚洲国产成AV人天堂无码| 久久精品国产亚洲5555| 插B内射18免费视频| 久久精品乱子伦免费| 99亚洲精品卡2卡三卡4卡2卡| 久久精品亚洲一区二区三区浴池 | 亚洲国产成人手机在线电影bd| 又爽又高潮的BB视频免费看| 最近中文字幕高清免费中文字幕mv| 羞羞视频免费网站入口| 亚洲最新黄色网址| 久久精品国产亚洲一区二区| 国产在线观看免费视频播放器| 中国人xxxxx69免费视频| 好男人资源在线WWW免费| 欧洲亚洲综合一区二区三区| 亚洲一级免费毛片| 亚洲丁香色婷婷综合欲色啪| 国产亚洲精品看片在线观看| 免费亚洲视频在线观看|