用myeclipse在struts中配置mysql和sqlserver的datasource

用myeclipse在struts中配置mysql和sqlserver的datasource
 今天用 myeclipse struts 配置 mysql 的数据源时 , 老是提示找不到 driver, 就上网求助 , 终于找到了解决方法 .
直接在 struts-config.xml 中右键 data-sources 然后 New 默认的 type 是: org.apache.struts.util.GenericDataSource ,struts 自带的一个数据库连接池。 然后正确输入各种 property value 测试,好用。
如果将 type 选择为: org.apache.commons.dbcp.BasicDataSource 这个 DBCP 的数据库连接池。 然后键入正确的 value 测试,提示各种异常找不到 Driver
查看 DBCP 的文档,发现 MYECLIPSE 生成的配置 XML 元素有问题。
DBCP 需要的是 driverClassName username 这两个 properties
Myeclipse 自动生成的是 driverClass user 这两个 properties
改过来之后发现 DBCP 的数据库连接池也好用了 , 这应该算是 MYECLIPSE 开发 struts 的一个 BUG 吧,数据库连接池的配置是按照 struts 默认的 GenericDataSource 来的。
总结 :
myeclipse自动生成的strust-config.xml有几点要注意:
1.driverClassName不是driverclass;
2.username不是user
3.不要设置loginTimeout.
action调用:DataSource ds=getDataSource(request,"datasource");


MSSQLServer2000数据源配置

<data-sources>
                <data-source key="datasource" type="org.apache.commons.dbcp.BasicDataSource">
                        <set-property property="driverClassName" value="com.microsoft.jdbc.sqlserver.SQLServerDriver" />
                        <set-property property="url" value="jdbc:microsoft:sqlserver://localhost:1433;databaseName=zzb" />
                        <set-property property="username" value="sa" />
                        <set-property property="password" value="" />
                        <set-property property="maxActive" value="10" />
                        <set-property property="maxWait" value="5000" />
                        <set-property property="defaultAutoCommit" value="false" />
                        <set-property property="defaultReadOnly" value="false" />
                </data-source>
</data-sources>

MySQL数据源配置
<data-sources >
    <data-source key="datasource" type="org.apache.commons.dbcp.BasicDataSource">
      <set-property property="password" value="1234" />
      <set-property property="minCount" value="1" />
      <set-property property="maxCount" value="10" />
      <set-property property="username" value="root" />
      <set-property property="driverClassName" value="org.gjt.mm.mysql.Driver" />
      <set-property property="description" value="for struts attack aolution" />
      <set-property property="url" value="jdbc:mysql://localhost:3306/attack" />
      <set-property property="readOnly" value="false" />
      <set-property property="autoCommit" value="true" />
    </data-source>
  </data-sources>

调用的时候在 Action 里面 getDataSource(request," datasource "); 这个datasource就是上面那个 key 值,2者要对应 ,OK!!! 
注意commons-collections.jar ,commons-pool.jar,commons-dbcp.jar还有数据库驱动一定要注意拷贝到tomcat/common/lib里面, commons-collections.jar ,commons-pool.jar,commons-dbcp.jarTomcat自带,已经在上面的目录中了,其实只要将数据库驱动放进去就可以了. commons-collections.jar ,commons-pool.jar,commons-dbcp.jar如果没有的话去apache网站下就可以了
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值