靈魂-放水

          為學日益,為道日損。

          BlogJava 首頁 新隨筆 聯系 聚合 管理
            296 Posts :: 10 Stories :: 274 Comments :: 0 Trackbacks

          一、Tomcat5.5.7+SQL Server2000
          1、把數據庫JDBC驅動(msutil.jar、mssqlserver.jar、msbase.jar)拷貝到%TOMCAT_HOME%/common/lib和% TOMCAT_HOME%/webapps/yourweb/WEB-INF/lib下。并把tools.jar(可選)、commons-collections-2.1.jar、commons-dbcp-1.2.1.jar、commons-logging-api-1.0.2.jar、commons-pool-1.3.jar拷到%TOMCAT_HOME%/common/lib目錄下。
          2、修改%TOMCAT_HOME%/conf/server.xml文件,在??<GlobalNamingResources></GlobalNamingResources>之間
          添加以下內容:

          ?<!-- Global JNDI resources -->
          ? <GlobalNamingResources>
          ?<Resource????? name="jdbc/MSSQLDS"????? type="javax.sql.DataSource"????? password="sa"????? driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver"????? maxIdle="30"????? maxWait="5000"????? username="sa"????? url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=SuperDB"????? maxActive="30"/>

          ??? <!-- Test entry for demonstration purposes -->
          ??? <Environment name="simpleValue" type="java.lang.Integer" value="30"/>

          ??? <!-- Editable user database that can also be used by
          ???????? UserDatabaseRealm to authenticate users -->
          ??? <Resource name="UserDatabase" auth="Container"
          ????????????? type="org.apache.catalina.UserDatabase"
          ?????? description="User database that can be updated and saved"
          ?????????? factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
          ????????? pathname="conf/tomcat-users.xml" />

          ? </GlobalNamingResources>

          注:maxActive指定數據庫連接池中處于活動狀態的數據庫連接最大數目,0表示不受限制;maxIdle:指定數據庫連接池中處于空閑狀態的數據庫連接的最大數目,0表示不受限制;maxWait指定數據庫連接池中的數據庫連接處于空閑狀態的最長時間(單位為毫秒),超過這一事件,將會拋出異常。-1表示可以無限期等待;auth:指定管理ResourceManager,由兩個可選值:ContainerApplicationContainer表示由容器來創建和管理ResourceApplication表示由WEB應用來創建和管理Resource。如果在web application deployment descriptor中使用<resource-ref>,這個屬性是必需的,如果使用<resource-env-ref>,這個屬性是可選的。



          3、在%TOMCAT_HOME%/conf/Catalina/localhost下新建一個與你web文件夾同名的xml文件(KuaiBaoWeb.war.xml)
          這一步非常重要,如果沒有這步就會出錯,會出現錯誤:

          Database init error:org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC driver of class '' for connect URL 'null'

          在文件中內容如下:

          <?xml version="1.0" encoding="UTF-8"?>
          <Context>?
          ? <Resource????? name="jdbc/MSSQLDS"????? type="javax.sql.DataSource"????? password="sa"????? driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver"????? maxIdle="30"????? maxWait="5000"????? username="sa"????? url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=SuperDB"????? maxActive="30"/>
          </Context>

          可以看出,就是在元素<Content>里加入第2步同樣的內容,根據個人情況做相應修改。
          4、修改%TOMCAT_HOME%/webapps/yourweb/WEB-INF下的web.xml文件,在<web-app></web-app>之間添加以下內容:
          ? <resource-ref>
          ??? <res-ref-name>jdbc/MSSQLDS</res-ref-name>
          ??? <res-type>javax.sql.DataSource</res-type>
          ??? <res-auth>Container</res-auth>
          ? </resource-ref>
          jdbc/MSSQLDS為前面定義的JNDI名字。

          相應的獲取JNDI的代碼:
          ......
          Context initCtx=new InitialContext();
          ????????????????
          DataSource ds=(DataSource)initCtx.lookup("java:comp/env/jdbc/MSSQLDS")
          .......

          到此為止,數據源配置完成。

          二、Jboss3.2.8+SQL Server2000

          1、把數據庫JDBC驅動(msutil.jar、mssqlserver.jar、msbase.jar)拷貝到jboss-3.2.8.SP1\server ..\lib目錄下。
          2、修改mssql-ds.xml文件,如下:

          <?xml version="1.0" encoding="UTF-8"?>
          <datasources>
          ? <local-tx-datasource>
          ??? <jndi-name>MSSQLDS</jndi-name>
          ??? <connection-url>jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=SuperDB</connection-url>
          ??? <driver-class>com.microsoft.jdbc.sqlserver.SQLServerDriver</driver-class>
          ??? <user-name>sa</user-name>
          ??? <password>sa</password>
          ??? <connection-property name="char.encoding">UTF-8</connection-property>
          ??? <min-pool-size>30</min-pool-size>
          ??? <max-pool-size>100</max-pool-size>
          ??? <blocking-timeout-millis>5000</blocking-timeout-millis>
          ??? <idle-timeout-minutes>5</idle-timeout-minutes>
          ? </local-tx-datasource>
          </datasources>
          獲取JNDI代碼:

          ?ctx = new InitialContext();
          ????ds = (DataSource) ctx.lookup("java:/MSSQLDS");
          ??????conn = ds.getConnection();

          數據源配置完成。注:JBOSS4.0下,配置多數據源比JBOSS3要容易。

          posted on 2006-12-25 19:33 放水老倌 閱讀(954) 評論(0)  編輯  收藏 所屬分類: J2EE
          主站蜘蛛池模板: 连城县| 稷山县| 普兰店市| 扬州市| 湛江市| 翼城县| 湾仔区| 丰宁| 宁明县| 塘沽区| 滦南县| 襄樊市| 纳雍县| 德庆县| 自贡市| 灵寿县| 银川市| 疏附县| 陈巴尔虎旗| 青铜峡市| 南昌市| 宝清县| 洛川县| 北海市| 武穴市| 嘉善县| 清镇市| 巩义市| 普兰县| 安福县| 准格尔旗| 尼勒克县| 呼图壁县| 衡东县| 香港 | 秦安县| 商都县| 双桥区| 论坛| 安岳县| 吴忠市|