Tomcat连接池

Tomcat下简单的说配置context.xml文件就可以context.xml 的 Context加入


<Resource name="jdbc/SQLserver2k" auth="Container"  type="javax.sql.DataSource" driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver" url="jdbc:microsoft:sqlserver://localhost:1433" username="sa" password="123" maxActive="20" maxIdle="10" maxWait="-1"/>


在server.xml下配置Resource也行,如果是tomcat5以上就得在/conf/Catalina/localhost配置相应用户的XML文件


web.xml 的 web-app下加入


<resource-ref>


 <res-ref-name>jdbc/SQLserver2k</res-ref-name> 


 <res-type>javax.sql.DataSource</res-type> 


 <res-auth>Container</res-auth> 


</resource-ref>


按照Tomcat配置文档的说明这样也行:


<DefaultContext ...>


  ... 


<Resource name="jdbc/SQLserver2k" auth="Container"            type="javax.sql.DataSource"     description="Employees Database for HR Applications"/> 


 ...


</DefaultContext>


WebLogic更简单只要使用向导就可以,驱动推荐使用BEN自带的


调用JNDI


DAO中引用如下代码就可以获得Connection了


参考代码:


Context ctx = new InitialContext();  


Context envctx = (Context) ctx.lookup("java:comp/env");  


DataSource ds = (DataSource) envctx.lookup("jdbc/TestDB");  


Connection conn=ds.getConnection();


如果使用hibernate的话session-factory中只需要配置connection.datasource一项即可


参考代码:


<session-factory>


<property name="connection.datasource">java:comp/env/jdbc/SQLserver2k</property>


<!-- mapping -->


</session-factory>


 使用Spring的话可以使用Spring的JndiObjectFactoryBean来建立dataSource参考代码:


<bean id="dataSource"        class="org.springframework.jndi.JndiObjectFactoryBean"> 


<property name="jndiName">


<value>JDBCsqlserver2K</value>


</property>


</bean>


我配制的时候总结的问题如下:


1.使用Tomcat配置的话一定要把驱动考到Tomcat/lib下,只放在web-inf/lib是不行的


2.使用Tomcat的dataSource,需要到Apache网站上下载commons-dbcp.jar和commons-pool.jar。Tomcat默认不携带这两个jar包,程序会报一个找不到找不到类的异常。


3.使用Tomcat的dataSource在实用的时候jndiName一定要带上java:comp/env/,不然找不到。


4.Sqlserver一定要打SP3以上的补丁,不然死也连不上。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值