配置JDBC池(Tomcat的7)
我遇到了一些问题和Tomcat 7的配置JDBC池:i`ve试图以此为榜样:http://www.tomcatexpert.com/blog/2010/04/01/configuring-jdbc-pool-high-concurrency配置JDBC池(Tomcat的7)
,所以我有:
的conf/server.xml中
<GlobalNamingResources>
<Resource type="javax.sql.DataSource"
name="jdbc/DB"
factory="org.apache.tomcat.jdbc.pool.DataSourceFactory"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/mydb"
username="user"
password="password"
/>
</GlobalNamingResources>
conf/context.xml文件
<Context>
<ResourceLink type="javax.sql.DataSource"
name="jdbc/LocalDB"
global="jdbc/DB"
/>
<Context>
,当我尝试这样做:
Context initContext = new InitialContext();
Context envContext = (Context)initContext.lookup("java:/comp/env");
DataSource datasource = (DataSource)envContext.lookup("jdbc/LocalDB");
Connection con = datasource.getConnection();
我不断收到此错误:
javax.naming.NameNotFoundException: Name jdbc is not bound in this Context
at org.apache.naming.NamingContext.lookup(NamingContext.java:803)
at org.apache.naming.NamingContext.lookup(NamingContext.java:159)
请帮助 TNX
<Context> <ResourceLink type="javax.sql.DataSource" name="jdbc/LocalDB" global="jdbc/DB"/>
替换name="jdbc/LocalDB"
与name="jdbc/DB"
在你的context.xml 和
(DataSource)envContext.lookup("java:/comp/env/jdbc/DB");
[第二行代码是冗余的]。
conf/server.xml和conf/context.xml ...
你有tomcat里面的安装前缀吗?在eclipse上我有我的上下文里面的WebContent/META-INF和服务器项目中的server.xml;在最终的战争context.xml里面得到正确的META-INF
最后,我拥有一切像你的配置,除了我不知道你在哪里放置context.xml。
另外,我作出@Henry建议过,但也有一些运气你的问题是context.xml的只是位置
更改server.xml中以下行 利用类型=“org.apache .tomcat.jdbc.pool.DataSource”而不是类型= “javax.sql.DataSource中”
和使用(数据源)envContext.lookup(的 “java:/ comp/env的/ JDBC /的LocalDB”),而不是数据源 )在你的程序中envContext.lookup(“java:/ comp/env/jdbc/DB”),那么你将得到DBConnectoin。