使用MyEclipse6开发Struts+Spring应用程序(6)

6、配置JNDI DataSource

l         JDNI配置因不同服务器而异,这里分别说明

1 tomcat 5.5.17

l         Tomcatconf目录下的context.xml中追加:

    <Resource name="MySqlDS" auth="Container"

            type="javax.sql.DataSource" username="test" password="test"

            driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/test"

            maxActive="8" maxIdle="4"/>

 

l         Tomcatconf目录下的web.xml中追加引用:

    <resource-ref>

      <description>

        Resource reference to a factory for java.sql.Connection

        instances that may be used for talking to a particular

        database that is configured in the server.xml file.

      </description>

      <res-ref-name>

        MySqlDS

      </res-ref-name>

      <res-type>

        javax.sql.DataSource

      </res-type>

      <res-auth>

        Container

      </res-auth>

    </resource-ref>

2 jboss- 4.0.3 SP1

l         JBoss/docs/examples/jca目录下的mysql-ds.xml复制到/server/deploy目录下,修改成下面的内容:

<datasources>

  <local-tx-datasource>

    <jndi-name>MySqlDS</jndi-name>

    <connection-url>jdbc:mysql://localhost:3306/test</connection-url>

    <driver-class>com.mysql.jdbc.Driver</driver-class>

    <user-name>test</user-name>

    <password>test</password>

    <exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.MySQLExceptionSorter</exception-sorter-class-name>

    <!-- sql to call when connection is created

    <new-connection-sql>some arbitrary sql</new-connection-sql>

      -->

    <!-- sql to call on an existing pooled connection when it is obtained from pool

    <check-valid-connection-sql>some arbitrary sql</check-valid-connection-sql>

      -->

 

    <!-- corresponding type-mapping in the standardjbosscmp-jdbc.xml (optional) -->

    <metadata>

       <type-mapping>mySQL</type-mapping>

    </metadata>

  </local-tx-datasource>

</datasources>

3 resin-pro- 3.0.18

l         Resinconf目录下的resin.conf中追加:

         <database>

           <jndi-name>MySqlDS</jndi-name>

           <driver type="com.mysql.jdbc.Driver">

             <url>jdbc:mysql://localhost:3306/test</url>

             <user>test</user>

             <password>test</password>

            </driver>

            <prepared-statement-cache-size>8</prepared-statement-cache-size>

            <max-connections>20</max-connections>

            <max-idle-time>30s</max-idle-time>

          </database>

4) 定义JDNI DataSource

    <bean id="dataSource"

        class="org.springframework.jndi.JndiObjectFactoryBean">

        <property name="jndiName">

            <value>${jndi.name}</value>

        </property>

    </bean>

l         samples.properties中追加:

# for tomcat & resin

jndi.name=java:comp/env/MySqlDS

# for jboss

#jndi.name=java:/MySqlDS

l         注意,TomcatResinJDNI名字是java:comp/env/[JndiName],而在JBoss中则为java: /[JndiName]

l         如果要使用JNDI DataSource,只要将struts-config.xmlBean文件名samples-ds.xml改为samples-jndi.xml即可

5 JDBC驱动的位置

l         APP/Web服务器启动时,创建JDBC JNDI资源对象时需要JDBC驱动,所以需要将JDBC驱动复制到相应的lib目录中:

Ø         JBoss[ROOT]/server/default/lib

Ø         Tomcat[ROOT]/common/lib

Ø         Resin[ROOT]/lib

 

 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值